5月6日,螞蟻金服副 CTO 胡喜正式宣布開源機(jī)器學(xué)習(xí)工具 SQLFlow:“未來(lái)三年,AI 能力會(huì)成為每一位技術(shù)人員的基本能力。我們希望通過(guò)開源 SQLFlow,降低人工智能應(yīng)用的技術(shù)門檻,讓技術(shù)人員調(diào)用 AI 像 SQL 一樣簡(jiǎn)單。”
目前,SQLFlow已經(jīng)在GitHub上獲得1636個(gè)Star,236個(gè)Fork。(GitHub地址:https://github.com/sql-machine-learning/sqlflow)
SQLFlow 的目標(biāo)是將 SQL 引擎和 AI 引擎連接起來(lái),讓用戶僅需幾行 SQL 代碼就能描述整個(gè)應(yīng)用或者產(chǎn)品背后的數(shù)據(jù)流和 AI 構(gòu)造。其中所涉及的 SQL 引擎包括 MySQL、Oracle、Hive、SparkSQL、Flink 等支持用 SQL 或其某個(gè)變種語(yǔ)言描述數(shù)據(jù),以及描述對(duì)數(shù)據(jù)的操作的系統(tǒng)。而這里所指的 AI 引擎包括 TensorFlow、PyTorch 等深度學(xué)習(xí)系統(tǒng),也包括 XGBoost、LibLinear、LibSVM 等傳統(tǒng)機(jī)器學(xué)習(xí)系統(tǒng)。
從 SQL 到機(jī)器學(xué)習(xí)
SQLFlow 可以看作一個(gè)翻譯器,它把擴(kuò)展語(yǔ)法的 SQL 程序翻譯成一個(gè)被稱為 submitter 的程序,然后執(zhí)行。 SQLFlow 提供一個(gè)抽象層,把各種 SQL 引擎抽象成一樣的。SQLFlow 還提供一個(gè)可擴(kuò)展的機(jī)制,使得大家可以插入各種翻譯機(jī)制,得到基于不同 AI 引擎的 submitter 程序。
SQLFlow 對(duì) SQL 語(yǔ)法的擴(kuò)展意圖很簡(jiǎn)單:在 SELECT 語(yǔ)句后面,加上一個(gè)擴(kuò)展語(yǔ)法的 TRAIN 從句,即可實(shí)現(xiàn) AI 模型的訓(xùn)練。或者加上一個(gè) PREDICT 從句即可實(shí)現(xiàn)用現(xiàn)有模型做預(yù)測(cè)。這樣的設(shè)計(jì)大大簡(jiǎn)化了數(shù)據(jù)分析師的學(xué)習(xí)路徑。
此外,SQLFlow 也提供一些基本功能,可以供各種 submitter 翻譯插件使用,用來(lái)根據(jù)數(shù)據(jù)的特點(diǎn),推導(dǎo)如何自動(dòng)地把數(shù)據(jù)轉(zhuǎn)換成 features。這樣用戶就不需要在 TRAIN 從句里描述這個(gè)轉(zhuǎn)換。
以上這些設(shè)計(jì)意圖在 SQLFlow 的開源代碼中都有體現(xiàn)。當(dāng)然,SQLFlow 開發(fā)時(shí)間還比較短,仍然存在很多做的不夠細(xì)致的地方。螞蟻金服將其開源的另一個(gè)目的,就是希望能夠和各個(gè) SQL 引擎團(tuán)隊(duì)和各個(gè) AI 團(tuán)隊(duì)一起打造這座橫跨數(shù)據(jù)和 AI 的橋梁。
-
人工智能
+關(guān)注
關(guān)注
1792文章
47425瀏覽量
238948
原文標(biāo)題:螞蟻金服開源機(jī)器學(xué)習(xí)工具SQLFlow,機(jī)器學(xué)習(xí)比SQL還簡(jiǎn)單
文章出處:【微信號(hào):TheBigData1024,微信公眾號(hào):人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論