12.22 一款超低門檻開發機器學習應用的引擎


一款超低門檻開發機器學習應用的引擎

關注薪資待遇的同學應該知道,機器學習相關的崗位工資普遍偏高啊。

同時隨著各種通用機器學習框架的出現,機器學習的門檻也在逐漸降低,訓練一個簡單的機器學習模型變得不那麼難。但是不得不承認對於一些數據相關的工作人員來說,依然存在著較大的門檻,對於他們來說 SQL 可能是他們的通用技能。

所以今天要推薦的工具就是:SQLFlow,一個可以通過 SQL 語法來訓練機器學習模型的引擎,它的目標是連接 SQL 引擎與 TensorFlow、XGBoost 等機器學習框架,作為你升職加薪的橋樑(這句是小編加的)。

一款超低門檻開發機器學習應用的引擎

SQLFlow 的開發動機比較單純,就是讓普遍被大家接受的 SQL 語法也能訓練機器學習應用。在現在的很多的公司,對於開發一個以機器學習為基礎的應用,整個團隊需要包括數據工程師、數據分析師、商業分析師等等,同時還需要懂高級編程語言,比如 Python、Julia、R 等。這些額外需要的工具和開發環境增加了機器學習模型訓練的難度。所以如果我們能夠使用大家廣為接受和使用的 SQL 來訓練機器學習系統,那麼可以想象,機器學習將會得到更為廣泛的普及。

目前在工業界已經有不少嘗試來降低降低機器學習的門檻,比如:

  • 微軟的 SQL Server 可以通過 R 或 Python 作為擴展腳本來訓練機器學習應用
  • Teradata SQL 機器學習系統,通過擴展 SQL SELECT 的語法來實現機器學習支持
  • 谷歌 BigQuery 可以通過 CREATE MODEL SQL 命令來創建機器學習模型

但是整體來看還是不夠簡單通用。我們來看看通過 SQLFlow 如何訓練一個機器學習模型。

<code>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/<code>

是不是很簡潔?更多使用方法查看如下項目地址。

項目地址:https://github.com/sql-machine-learning/sqlflow

今天的推薦不知道大家喜歡嗎?如果你喜歡,請在文章底部留言和點贊,以表示對我的支持,你們的留言、點贊和轉發關注是我持續更新的動力哦!


分享到:


相關文章: