滴滴首席數(shù)據(jù)科學(xué)家謝梁(左)與螞蟻金服研究員王益開啟共建SQLFlow之旅

2019年7月,滴滴的數(shù)據(jù)科學(xué)(Data Science)團(tuán)隊(duì)的幾名數(shù)據(jù)科學(xué)家在北京新澄海大廈見到了來自螞蟻金服的幾位工程師。在那之前兩個月,螞蟻金服從事AI基礎(chǔ)架構(gòu)研發(fā)的王益團(tuán)隊(duì)開源了一款機(jī)器學(xué)習(xí)工具SQLFLow,將SQL程序翻譯成Python程序,調(diào)用數(shù)據(jù)庫和AI引擎,實(shí)現(xiàn)端到端的AI。滴滴首席數(shù)據(jù)科學(xué)家謝梁敏銳地關(guān)注到這個項(xiàng)目。這次拜訪雙方一拍即合,開啟了共建SQLFlow之旅。

用SQLFlow構(gòu)建AI的訓(xùn)練和預(yù)測任務(wù)(動態(tài)圖)

數(shù)據(jù)分析師的普適AI

數(shù)據(jù)驅(qū)動決策是很多公司的追求,在國內(nèi)很多業(yè)務(wù)人員都了解SQL,但是對于AI、深度學(xué)習(xí)模型的訓(xùn)練,需要長時間系統(tǒng)性的學(xué)習(xí),有一定的門檻。SQLFLow的出現(xiàn)讓包括數(shù)據(jù)分析師在內(nèi)的業(yè)務(wù)人員通過寫簡單的SQL去調(diào)用AI模型成為了可能。

滴滴數(shù)據(jù)科學(xué)團(tuán)隊(duì)長期地直面一線業(yè)務(wù),了解業(yè)務(wù)需求,也沉淀了很多常用模型。本次合作雙方希望優(yōu)勢互補(bǔ)共同助力AI的落地,據(jù)悉合作分為三步,第一步滴滴為螞蟻金服貢獻(xiàn)更多針對于業(yè)務(wù)產(chǎn)品的理解和洞見;第二步滴滴將公司自身業(yè)務(wù)場景最有價值用的最好的模型貢獻(xiàn)到SQLFLow;第三步滴滴加入到建設(shè)到整個SQLFLow開源社區(qū)的建設(shè),雙方要在模型、社區(qū)、文化等全方位共建。

SQLFlow的技術(shù)架構(gòu)

一個多月的時間,滴滴已經(jīng)為SQLFLow貢獻(xiàn)了基于DNN分類預(yù)測模型、可解釋模型和無監(jiān)督聚類模型三個高價值模型。這三個模型覆蓋的場景非常廣泛,對于滴滴內(nèi)部來說,包括網(wǎng)約車、單車、金融等在內(nèi)的諸多業(yè)務(wù)場景都可應(yīng)用起來,于外部而言,“因?yàn)檎麄€模型它是一種基礎(chǔ)能力,其實(shí)它不會局限于某一個公司或某一個行業(yè),它具有普適性。”滴滴高級數(shù)據(jù)科學(xué)家高梓堯強(qiáng)調(diào)。

SQLFlow和滴滴數(shù)據(jù)的整合邏輯

比如分類預(yù)測模型,適用于做產(chǎn)品增長的場景,對特定人群進(jìn)行定向推薦。而無監(jiān)督聚類模型,也就是模式識別,在滴滴的產(chǎn)品的應(yīng)用非常廣,比如會根據(jù)司機(jī)出車時長分布,去整合歸納司機(jī)出車的偏好,更好地為司機(jī)提供調(diào)度建議,進(jìn)而幫助緩解出行供需。

滴滴首席數(shù)據(jù)科學(xué)家謝梁認(rèn)為在共建SQLFlow過程中,充分體現(xiàn)了算法和數(shù)據(jù)科學(xué)在對數(shù)據(jù)的理解和應(yīng)用上的兩個不同,以及雙方優(yōu)勢互補(bǔ)形成1+1大于2的合力效果。因?yàn)閷τ趥鹘y(tǒng)的算法來講主要強(qiáng)調(diào)對于預(yù)測一個給定事件的預(yù)測精準(zhǔn)性。但是數(shù)據(jù)科學(xué)在預(yù)測精準(zhǔn)性之上,還強(qiáng)調(diào)預(yù)測的可解釋性。實(shí)際上在更廣泛的商業(yè)層面上,比如運(yùn)營、營銷等更需要了解為什么會這這樣發(fā)生,這對于業(yè)務(wù)戰(zhàn)略制定、營銷方案的確定,以及整個產(chǎn)品序列的設(shè)計(jì)都有非常大的幫助。

滴滴數(shù)據(jù)科學(xué)團(tuán)隊(duì)在過去不到兩個月的共建工作中顯著擴(kuò)大了SQLFlow的應(yīng)用場景。根據(jù)螞蟻金服SQLFlow項(xiàng)目的產(chǎn)品負(fù)責(zé)人劉勇峰介紹,滴滴的同事們建議并且參與研發(fā)了SQLFlow對接XGBoost的功能,從而在深度學(xué)習(xí)模型之外支持樹模型;以及對接unsupervised learning的能力,支持聚類分析。此外,SQLFlow基于SHAP支持了深度學(xué)習(xí)模型和樹模型的圖示化解釋。SQLFlow也支持了滴滴常用的Hive數(shù)據(jù)庫系統(tǒng)。

基于XGBoost的汽車價格預(yù)測模型(數(shù)據(jù)來自Kaggle)的SHAP解釋圖

(注:SHAP值表征了每個特征對模型輸出的影響,如圖中,較小的engine_hp“引擎馬力”值會降低汽車的預(yù)測價格)

“我們是希望通過SQLFlow真正能夠把數(shù)據(jù)驅(qū)動業(yè)務(wù)、科學(xué)決策的思想,能夠在中國傳播得更好更遠(yuǎn),也希望就是能夠通過我們自己的努力,真正讓AI模型能力大眾化和普及化,然后使得我們整個國內(nèi)的數(shù)據(jù)分析的科學(xué)性、合理性和洞察性,能夠逐步提升,甚至達(dá)到國際領(lǐng)先?!备哞鲌蛘f。

而所有參與項(xiàng)目的同事們對SQLFlow的未來都有更大的期待,這是對于開源社區(qū)作為一種高效率的工作模式的信任。

打造一個SQL花園生態(tài)

在強(qiáng)調(diào)數(shù)據(jù)驅(qū)動的滴滴其實(shí)一直積極參與到開源建設(shè)中,截至目前,滴滴和螞蟻金服分別開源了數(shù)十個項(xiàng)目。SQLFlow是雙方開源共建的首秀。

對于雙方僅一個多月的時間就能夠共建三個高價值的模型,謝梁認(rèn)為很重要的原因是SQLFlow已經(jīng)給滴滴搭建好了底層能力,滴滴相當(dāng)于做了一個交通領(lǐng)域的幾個核心插件,并且通過滴滴插件能力,對整個SQLFlow覆蓋面和深度方面的底層能力進(jìn)行了驗(yàn)證和提升,“那么再把這個基礎(chǔ)打好之后,我們就相當(dāng)于造了一個大的花園,我們把土都鋪好了,需要什么營養(yǎng)的土,要種什么類型的花,都給他做好了,之后就需要有更多的農(nóng)民伯伯一起來種田,他們要去種向日葵,我們畢竟精力有限可能就是以種小麥和種主糧為主,更多的經(jīng)濟(jì)作物就需要其他開源社區(qū)的同學(xué)一起來貢獻(xiàn)?!?/p>

在整個SQLFlow開源社區(qū)建設(shè)方面雙方都有更大的愿景,滴滴的分析團(tuán)隊(duì)總結(jié)的很多模型在BI 領(lǐng)域具備普適性,而SQLFlow在螞蟻的場景使用模型在金融領(lǐng)域頗有普適性,未來要讓更多的人去用上普適的AI能力,在SQLFlow社區(qū)之上會形成一個開源貨架式的交易市場,更多懂業(yè)務(wù)的人把更多商業(yè)場景抽象成模型打造成模型庫,模型庫是SQLFlow 生態(tài)中的重要一環(huán),雙方正在討論如何共建?!澳憔拖褡哌M(jìn)一個超市,里面有10萬個SQL,每一個SQL就是一個實(shí)現(xiàn)了你商業(yè)邏輯的模型,你就拿來用就行了,這是終極的一個目標(biāo)”,謝梁興奮地談到。

當(dāng)然現(xiàn)在的SQLFlow還是一個非常年輕的開源項(xiàng)目,需要更多的呵護(hù)。雖然目前在開源合作方面中國相比美國還有不少差距,但正是因?yàn)樵絹碓蕉嗟墓竞蛡€人去投身其中為之貢獻(xiàn),差距正在縮小。

實(shí)際上,幾乎所有的SQLFlow項(xiàng)目成員都是利用業(yè)余時間參與到開源項(xiàng)目中。比如滴滴資深算法工程師陳祥,他平時負(fù)責(zé)數(shù)據(jù)治理和應(yīng)用方向上數(shù)據(jù)、應(yīng)用與算法的結(jié)合和落地, 在8月初聽到SQLFlow項(xiàng)目就決定參與進(jìn)來,未來他也會號召很多的人參與到開源建設(shè)中。

“開源社區(qū)所說的構(gòu)建大生態(tài),其實(shí)大生態(tài)還包含著另外一層,就是大家互相學(xué)習(xí),然后行業(yè)內(nèi)的所有從業(yè)人員進(jìn)行知識交流。所以當(dāng)各行各業(yè)的同學(xué)都在里面貢獻(xiàn)自己的經(jīng)驗(yàn)、技能時,我們其實(shí)也能從其他的同學(xué)那學(xué)習(xí)到很多處理數(shù)據(jù),或者解決實(shí)際問題的方法?!备哞鲌蛩郧∪缙浞值卦忈屃碎_源社區(qū)眾人拾柴火焰高的魅力。

Gartner預(yù)測“到2020年,AI技術(shù)將普遍出現(xiàn)在幾乎每一個新的軟件產(chǎn)品和服務(wù)中?!边@其中有螞蟻金服與滴滴DS團(tuán)隊(duì)的一份力。

  項(xiàng)目地址

歡迎感興趣的同學(xué)加入社區(qū)討論:

項(xiàng)目官網(wǎng):https://sqlflow.org

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

您也可以使用docker,運(yùn)行文章中的汽車價格預(yù)測模型 :

docker run -p 8888:8888 sqlflow/sqlflow:didi

分享到

xiesc

相關(guān)推薦