Postgresml Tutorial: maschinelles Lernen mit SQL machen
Der vorherrschende Trend im maschinellen Lernen beinhaltet das Übertragen von Daten in die Umgebung des Modells für das Training. Was ist jedoch, wenn wir diesen Prozess umkehren würden? Wäre es nicht effizienter, die Modelle in die Datensätze zu verschieben, da moderne Datenbanken erheblich größer sind als maschinelle Lernmodelle?
Dies ist das grundlegende Konzept hinter Postgresml - die Daten bleiben an ihrem Standort und Sie bringen Ihren Code in die Datenbank. Dieser umgekehrte Ansatz für maschinelles Lernen bietet zahlreiche praktische Vorteile, die konventionelle Vorstellungen einer "Datenbank" in Frage stellen.
postgresml: Ein Überblick und ihre Vorteile
postgresml ist eine umfassende Plattform für maschinelles Lernen, die auf der weit verbreiteten Postgresql-Datenbank basiert. Es führt einen neuartigen Ansatz mit dem Namen "In-Database" -Maschinenlernen ein, mit dem Sie verschiedene ML-Aufgaben innerhalb von SQL ausführen können, ohne separate Tools für jeden Schritt zu benötigen.
Trotz seiner relativen Neuheit bietet Postgresml mehrere wichtige Vorteile:
- In-Database ML: Züge, Bereitstellungen und Ausführen von ML-Modellen direkt in Ihrer PostgreSQL-Datenbank. Dadurch wird die Notwendigkeit einer konstanten Datenübertragung zwischen der Datenbank und externen ML -Frameworks beseitigt, wodurch die Effizienz verbessert und die Latenz verringert wird.
- Dies vereinfacht Workflows für Datenanalysten und Wissenschaftler, die mit mehreren ML -Frameworks weniger vertraut sind.
- Vorausgebildete Modelle: Integriert nahtlos in das Huggingface und bietet Zugriff auf zahlreiche vorgebrachte Modelle wie Lama, Falcon, Bert und Mistral.
- Anpassung und Flexibilität: unterstützt eine Vielzahl von Algorithmen von Scikit-Learn, Xgboost, LGBM, Pytorch und TensorFlow, sodass verschiedene beaufsichtigte Lernaufgaben direkt innerhalb der Datenbank. ermöglicht.
- Ökosystemintegration: arbeitet mit jeder Umgebung zusammen, die Postgres unterstützt und SDKs für mehrere Programmiersprachen bietet (JavaScript, Python und Rost sind besonders gut unterstützt).
Dieses Tutorial zeigt diese Funktionen mit einem typischen Workflow:
- Datenladen
- Datenvorverarbeitung
- Modelltraining
- Hyperparameter Feinabstimmung
- Produktionserfassung
Alle diese Schritte werden in einer Postgres -Datenbank durchgeführt. Beginnen wir!
Ein vollständiger beaufsichtigter Lernworkflow mit PostgreSml
Erste Schritte: postgresml Free Tier
- Erstellen Sie ein kostenloses Konto unter https://www.php.cn/link/3349958a3e56580d4e415da345703886 :
- Wählen Sie die kostenlose Stufe aus, die großzügige Ressourcen bietet:
Nach der Anmeldung zugreifen Sie auf Ihre Postgresml -Konsole, um Projekte und Ressourcen zu verwalten.
Mit dem Abschnitt "Verwalten" können Sie Ihre Umgebung basierend auf den Rechenanforderungen skalieren.
1. Installieren und Einrichten von Postgres
postgresml erfordert PostgreSQL. Installationsführer für verschiedene Plattformen sind verfügbar:
- Windows
- Mac OS
- Linux
Für WSL2 reicht die folgenden Befehle aus:
sudo apt update sudo apt install postgresql postgresql-contrib sudo passwd postgres # Set a new Postgres password # Close and reopen your terminal
Überprüfen Sie die Installation:
psql --version
Für eine benutzerfreundlichere Erfahrung als das Terminal die VSCODE-Erweiterung berücksichtigen.
2. Datenbankverbindung
Verwenden Sie die Verbindungsdetails in Ihrer Postgresml -Konsole:
Verbinden Sie mit psql
:
psql -h "host" -U "username" -p 6432 -d "database_name"
Verwenden Sie alternativ die VSCODE -Erweiterung wie in ihrer Dokumentation beschrieben.
Aktivieren Sie die PGML -Erweiterung:
CREATE EXTENSION IF NOT EXISTS pgml;
Überprüfen Sie die Installation:
SELECT pgml.version();
3. Datenladen
Wir werden den Diamonds -Datensatz von Kaggle verwenden. Laden Sie es als CSV herunter oder verwenden Sie diesen Python -Snippet:
import seaborn as sns diamonds = sns.load_dataset("diamonds") diamonds.to_csv("diamonds.csv", index=False)
Erstellen Sie die Tabelle:
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 );
Populate die Tabelle:
INSERT INTO diamonds (carat, cut, color, clarity, depth, table_, price, x, y, z) FROM '~/full/path/to/diamonds.csv' DELIMITER ',' CSV HEADER;
Überprüfen Sie die Daten:
SELECT * FROM diamonds LIMIT 10;
4. Modelltraining
Grundausbildung
trainieren Sie einen Xgboost -Regressor:
SELECT pgml.train( project_name => 'Diamond prices prediction', task => 'regression', relation_name => 'diamonds', y_column_name => 'price', algorithm => 'xgboost' );
trainieren Sie einen Klassifikator mit mehreren Klassen:
SELECT pgml.train( project_name => 'Diamond cut quality prediction', task => 'classification', relation_name => 'diamonds', y_column_name => 'cut', algorithm => 'xgboost', test_size => 0.1 );
Vorverarbeitung
trainieren Sie ein zufälliges Waldmodell mit Vorverarbeitung:
SELECT pgml.train( project_name => 'Diamond prices prediction', task => 'regression', relation_name => 'diamonds', y_column_name => 'price', algorithm => 'random_forest', preprocess => '{ "carat": {"scale": "standard"}, "depth": {"scale": "standard"}, "table_": {"scale": "standard"}, "cut": {"encode": "target", "scale": "standard"}, "color": {"encode": "target", "scale": "standard"}, "clarity": {"encode": "target", "scale": "standard"} }'::JSONB );
postgresml bietet verschiedene Vorverarbeitungsoptionen (Codierung, Imputierung, Skalierung).
Angabe von Hyperparametern
trainieren Sie einen Xgboost -Regressor mit benutzerdefinierten Hyperparametern:
sudo apt update sudo apt install postgresql postgresql-contrib sudo passwd postgres # Set a new Postgres password # Close and reopen your terminal
Hyperparameter -Tuning
Führen Sie eine Gittersuche durch:
psql --version
5. Modellbewertung
Verwenden Sie pgml.predict
für Vorhersagen:
psql -h "host" -U "username" -p 6432 -d "database_name"
Um ein bestimmtes Modell zu verwenden, geben Sie seine ID an:
CREATE EXTENSION IF NOT EXISTS pgml;
Modell -IDs abrufen:
SELECT pgml.version();
6. Modellbereitstellung
postgresml bereitet automatisch das BEST-Performing-Modell bereit. Verwenden Sie für eine feinere Kontrolle pgml.deploy
:
import seaborn as sns diamonds = sns.load_dataset("diamonds") diamonds.to_csv("diamonds.csv", index=False)
Bereitstellungsstrategien umfassen best_score
, most_recent
und rollback
.
Weitere Erforschung von PostgreSml
postgresml erstreckt sich über das überwachte Lernen hinaus. Die Homepage verfügt über einen SQL -Editor zum Experimentieren. Der Aufbau eines ML-Dienstes mit Verbrauchern kann:
beinhalten- Erstellen einer Benutzeroberfläche (z. B. mit Streamlit oder Taipy).
- Entwickeln eines Backends (Python, Node.js).
- Verwenden von Bibliotheken wie
psycopg2
oderpg-promise
für die Datenbankinteraktion. - Daten im Backend Vorverarbeitungsdaten.
- Auslösen
pgml.predict
bei der Benutzerinteraktion.
Schlussfolgerung
postgresml bietet einen neuartigen Ansatz zum maschinellen Lernen. Um Ihr Verständnis zu fördern, erkunden Sie die Postgresml -Dokumentation und berücksichtigen Sie Ressourcen wie die SQL -Kurse und KI -Grundlagen von DataCamp.
Das obige ist der detaillierte Inhalt vonPostgresml Tutorial: maschinelles Lernen mit SQL machen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Der Artikel überprüft Top -KI -Kunstgeneratoren, diskutiert ihre Funktionen, Eignung für kreative Projekte und Wert. Es zeigt MidJourney als den besten Wert für Fachkräfte und empfiehlt Dall-E 2 für hochwertige, anpassbare Kunst.

Metas Lama 3.2: Ein Sprung nach vorne in der multimodalen und mobilen KI Meta hat kürzlich Lama 3.2 vorgestellt, ein bedeutender Fortschritt in der KI mit leistungsstarken Sichtfunktionen und leichten Textmodellen, die für mobile Geräte optimiert sind. Aufbau auf dem Erfolg o

Der Artikel vergleicht Top -KI -Chatbots wie Chatgpt, Gemini und Claude und konzentriert sich auf ihre einzigartigen Funktionen, Anpassungsoptionen und Leistung in der Verarbeitung und Zuverlässigkeit natürlicher Sprache.

In dem Artikel werden Top -KI -Schreibassistenten wie Grammarly, Jasper, Copy.ai, Writesonic und RYTR erläutert und sich auf ihre einzigartigen Funktionen für die Erstellung von Inhalten konzentrieren. Es wird argumentiert, dass Jasper in der SEO -Optimierung auszeichnet, während KI -Tools dazu beitragen, den Ton zu erhalten

Das jüngste Memo von Shopify -CEO Tobi Lütke erklärt kühn für jeden Mitarbeiter eine grundlegende Erwartung und kennzeichnet eine bedeutende kulturelle Veränderung innerhalb des Unternehmens. Dies ist kein flüchtiger Trend; Es ist ein neues operatives Paradigma, das in P integriert ist

Hey da, codieren Ninja! Welche Codierungsaufgaben haben Sie für den Tag geplant? Bevor Sie weiter in diesen Blog eintauchen, möchte ich, dass Sie über all Ihre Coding-Leiden nachdenken-die Auflistung auflisten diese auf. Erledigt? - Lassen Sie ’

Die KI -Landschaft dieser Woche: Ein Wirbelsturm von Fortschritten, ethischen Überlegungen und regulatorischen Debatten. Hauptakteure wie OpenAI, Google, Meta und Microsoft haben einen Strom von Updates veröffentlicht, von bahnbrechenden neuen Modellen bis hin zu entscheidenden Verschiebungen in LE

Der Artikel überprüft Top -KI -Sprachgeneratoren wie Google Cloud, Amazon Polly, Microsoft Azure, IBM Watson und Descript, wobei sie sich auf ihre Funktionen, die Sprachqualität und die Eignung für verschiedene Anforderungen konzentrieren.
