PostgreSML教程:使用SQL进行机器学习
机器学习的主要趋势涉及将数据传输到模型的培训环境中。 但是,如果我们扭转了这个过程怎么办?鉴于现代数据库比机器学习模型大得多,将模型移至数据集更有效吗?
这是PostgreSML背后的基本概念 - 数据仍在其位置,您将代码带到数据库中。这种机器学习的倒置方法提供了许多实践优势,这些优势挑战了“数据库”的常规概念。 > postgresml:概述及其优点>
Postgresml是一个建立在广泛使用的PostgreSQL数据库基于的综合机器学习平台。它介绍了一种名为“ database”机器学习的新颖方法,使您能够在SQL中执行各种ML任务,而无需为每个步骤提供单独的工具。
尽管具有相对新颖性,但PostgreSML提供了几个关键好处:
在PostgreSQL数据库中直接在PostgreSQL数据库中直接运行ML模型。这消除了对数据库和外部ML框架之间恒定数据传输的需求,从而提高了效率并降低了延迟。
- > sql API:
- > >>预训练的模型: >与拥抱面无缝集成,提供访问众多预训练的模型,例如Llama,Falcon,Bert和Mistral。
- 自定义和灵活性:
支持Scikit-Learn,XGBoost,LGBM,Pytorch和Tensorflow的广泛算法,可直接在数据库中进行多种监督的学习任务。 >生态系统集成: - >
-
本教程将使用典型的机器学习工作流程演示这些功能:
- 数据预处理 模型培训
超参数微调
- 所有这些步骤将在Postgres数据库中执行。让我们开始!
- > postgresml
- 的完整监督学习工作流程
入门:Postgresml免费tier
- 选择提供慷慨资源的自由层:
注册后,您将访问Postgresml控制台以管理项目和资源。
> “管理”部分允许您根据计算需求扩展环境。
> > PostgreSML需要PostgreSQL。 可用于各种平台的安装指南:
- linux
- 对于WSL2,以下命令足够:
- >
为了获得比终端更具用户友好的体验,请考虑VSCODE扩展。sudo apt update sudo apt install postgresql postgresql-contrib sudo passwd postgres # Set a new Postgres password # Close and reopen your terminal
登录后复制登录后复制>
psql --version
登录后复制登录后复制使用PostgreSML控制台中的连接详细信息:
:
或者,使用文档中所述的VSCODE扩展名。连接
启用PGML扩展名:
psql
验证安装:psql -h "host" -U "username" -p 6432 -d "database_name"
登录后复制登录后复制3。数据加载
>我们将使用Kaggle的Diamonds数据集。将其作为CSV下载或使用此python片段:CREATE EXTENSION IF NOT EXISTS pgml;
登录后复制登录后复制创建表:SELECT pgml.version();
登录后复制登录后复制填充表:
import seaborn as sns diamonds = sns.load_dataset("diamonds") diamonds.to_csv("diamonds.csv", index=False)
登录后复制登录后复制验证数据:
CREATE TABLE IF NOT EXISTS diamonds ( index SERIAL PRIMARY KEY, carat FLOAT, cut VARCHAR(255), color VARCHAR(255), clarity VARCHAR(255), depth FLOAT, table_ FLOAT, price INT, x FLOAT, y FLOAT, z FLOAT );
登录后复制INSERT INTO diamonds (carat, cut, color, clarity, depth, table_, price, x, y, z) FROM '~/full/path/to/diamonds.csv' DELIMITER ',' CSV HEADER;
登录后复制4。模型培训
基本培训SELECT * FROM diamonds LIMIT 10;
登录后复制训练XGBoost回归剂:
>预处理
训练具有预处理的随机森林模型:SELECT pgml.train( project_name => 'Diamond prices prediction', task => 'regression', relation_name => 'diamonds', y_column_name => 'price', algorithm => 'xgboost' );
登录后复制指定超参数SELECT pgml.train( project_name => 'Diamond cut quality prediction', task => 'classification', relation_name => 'diamonds', y_column_name => 'cut', algorithm => 'xgboost', test_size => 0.1 );
登录后复制> sudo apt update sudo apt install postgresql postgresql-contrib sudo passwd postgres # Set a new Postgres password # Close and reopen your terminal
登录后复制登录后复制>超参数调整
执行网格搜索:
psql --version
登录后复制登录后复制5。模型评估
使用
>pgml.predict
进行预测:psql -h "host" -U "username" -p 6432 -d "database_name"
登录后复制登录后复制使用特定模型,指定其ID:
> 检索模型ID:CREATE EXTENSION IF NOT EXISTS pgml;
登录后复制登录后复制6。模型部署SELECT pgml.version();
登录后复制登录后复制Postgresml
自动部署表现最佳的模型。 对于更精细的控制,请使用:
pgml.deploy
>>部署策略包括import seaborn as sns diamonds = sns.load_dataset("diamonds") diamonds.to_csv("diamonds.csv", index=False)
登录后复制登录后复制,
进一步探索postgresmlbest_score
和most_recent
。rollback
>
postgresml超出了监督学习的范围。首页具有用于实验的SQL编辑器。 建立面向消费者的ML服务可能涉及: 创建一个用户界面(例如,使用简化或taipy)。
开发后端(python,node.js)。> - 使用 或
- 的库进行数据库交互。 >
- >后端中的预处理数据。
psycopg2
在用户交互时,pg-promise
触发 -
pgml.predict
结论
>
以上是PostgreSML教程:使用SQL进行机器学习的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Meta的Llama 3.2:多模式和移动AI的飞跃 Meta最近公布了Llama 3.2,这是AI的重大进步,具有强大的视觉功能和针对移动设备优化的轻量级文本模型。 以成功为基础

嘿,编码忍者!您当天计划哪些与编码有关的任务?在您进一步研究此博客之前,我希望您考虑所有与编码相关的困境,这是将其列出的。 完毕? - 让&#8217

本周的AI景观:进步,道德考虑和监管辩论的旋风。 OpenAI,Google,Meta和Microsoft等主要参与者已经释放了一系列更新,从开创性的新车型到LE的关键转变

Shopify首席执行官TobiLütke最近的备忘录大胆地宣布AI对每位员工的基本期望是公司内部的重大文化转变。 这不是短暂的趋势。这是整合到P中的新操作范式

介绍 想象一下,穿过美术馆,周围是生动的绘画和雕塑。现在,如果您可以向每一部分提出一个问题并获得有意义的答案,该怎么办?您可能会问:“您在讲什么故事?

介绍 Openai已根据备受期待的“草莓”建筑发布了其新模型。这种称为O1的创新模型增强了推理能力,使其可以通过问题进行思考

斯坦福大学以人为本人工智能研究所发布的《2025年人工智能指数报告》对正在进行的人工智能革命进行了很好的概述。让我们用四个简单的概念来解读它:认知(了解正在发生的事情)、欣赏(看到好处)、接纳(面对挑战)和责任(弄清我们的责任)。 认知:人工智能无处不在,并且发展迅速 我们需要敏锐地意识到人工智能发展和传播的速度有多快。人工智能系统正在不断改进,在数学和复杂思维测试中取得了优异的成绩,而就在一年前,它们还在这些测试中惨败。想象一下,人工智能解决复杂的编码问题或研究生水平的科学问题——自2023年

SQL的Alter表语句:动态地将列添加到数据库 在数据管理中,SQL的适应性至关重要。 需要即时调整数据库结构吗? Alter表语句是您的解决方案。本指南的详细信息添加了Colu
