SQLFlow ist ein Compiler, der ein SQL -Programm für einen Workflow erstellt, der auf Kubernetes ausgeführt wird. Die Eingabe ist ein SQL -Programm, das in unserer erweiterten SQL -Grammatik geschrieben wurde, um KI -Jobs wie Schulungen, Vorhersage, Modellbewertung, Modellerklärung, benutzerdefinierte Jobs und mathematische Programmierung zu unterstützen. Die Ausgabe ist ein Argo -Workflow, der auf einem Kubernetes -Cluster ausgeführt wird.
SQLFlow unterstützt verschiedene Datenbanksysteme wie MySQL, Mariadb, TIDB, Hive, MaxCompute und viele Toolkits für maschinelles Lernen wie TensorFlow, Keras, Xgboost.
Probieren Sie SQLFlow jetzt in unserem Spielplatz https://playground.sqlflow.tech/ und lesen Sie die praktischen Tutorials darin.
Für die aktuelle Erfahrung von Entwicklungs -ML -basierten Anwendungen erfordert ein Team von Dateningenieuren, Datenwissenschaftlern, Geschäftsanalysten sowie eine Verbreitung fortschrittlicher Sprachen und Programmierinstrumente wie Python, SQL, SAS, SASS, Julia, R. die Fragmentierung der Werkzeug- und Entwicklungsumgebung. Was ist, wenn wir die am häufigsten verwendete Datenverwaltungs-/Verarbeitungssprache SQL mit ML/System -Funktionen heiraten und Ingenieuren mit SQL -Fähigkeiten erweiterte ML -basierte Anwendungen entwickeln lassen?
In der Branche gibt es bereits einige Arbeiten. Wir können einfache Vorhersage (oder Bewertung) für maschinelles Lernen (oder Scoring) in SQL unter Verwendung von Operatoren wie DOT_PRODUCT
schreiben. Dies erfordert jedoch, dass Kopier-N-Pasting-Modellparameter aus dem Schulungsprogramm zu SQL-Anweisungen. In der kommerziellen Welt sehen wir einige proprietäre SQL -Motoren, die Erweiterungen bieten, um maschinelles Lernen zu unterstützen.
CREATE MODEL
.Keine der vorhandenen Lösung löst unseren Schmerzpunkt, stattdessen möchten wir, dass sie vollständig erweiterbar ist.
Hier sind Beispiele für das Training eines Tensorflow -DNNClassifier -Modells unter Verwendung von Beispieldaten Iris.Train und Ausführung Vorhersage unter Verwendung des trainierten Modells. Sie können sehen, wie cool es ist, einen eleganten ML -Code mit SQL zu schreiben:
sqlflow > SELECT *
FROM iris . train
TO TRAIN DNNClassifier
WITH model . n_classes = 3 , model . hidden_units = [ 10 , 20 ]
COLUMN sepal_length, sepal_width, petal_length, petal_width
LABEL class
INTO sqlflow_models . my_dnn_model ;
...
Training set accuracy: 0 . 96721
Done training
sqlflow > SELECT *
FROM iris . test
TO PREDICT iris . predict .class
USING sqlflow_models . my_dnn_model ;
...
Done predicting. Predict table : iris . predict
SQLFlow wird es lieben, so viele Mainstream -ML -Frameworks und Datenquellen wie möglich zu unterstützen. Wir sind jedoch der Meinung, dass die Erweiterung nur schwer zu tun ist, nur alleine zu tun. Wir würden uns also freuen, Ihre Optionen darüber zu hören, welche ML -Frameworks und Datenquellen Sie derzeit verwenden und auf denen Sie bauen. Weitere Zeitpläne finden Sie in unserer Roadmap. Teilen Sie uns auch Ihre aktuellen Szenarien und Interessen am SQLFlow -Projekt mit, damit wir basierend auf dem Feedback der Community priorisieren können.
Ihr Feedback ist unsere Motivation, weiterzumachen. Bitte teilen Sie uns Ihre Fragen, Bedenken und Probleme mit, indem Sie GitHub -Probleme einreichen.
Apache -Lizenz 2.0