一站式机器学习平台TI-ONE是什么?——云+未来峰会开发者专场回顾
歡迎大家前往騰訊云+社區,獲取更多騰訊海量技術實踐干貨哦~
背景:5月23-24日,以“煥啟”為主題的騰訊“云+未來”峰會在廣州召開,廣東省各級政府機構領導、海內外業內學術專家、行業大咖及技術大牛等在現場共議云計算與數字化產業創新發展。
騰訊云AI平臺技術負責人王才華博士在騰訊“云+未來”峰會的「開發者專場」做了主題為“智能鈦?一站式機器學習 TI-ONE:騰訊云上的機器(深度)學習IDE”的技術內容分享。
最近大家有沒有看漫威的《復仇者聯盟3》?其中鋼鐵俠的戰甲就是用金屬鈦制造的,鈦具有質量輕,高強度的特點,而TI-ONE是人工智能平臺,因此我們用了科技感十足的名字“智能鈦”來形容它。
首先說說為什么需要TI-ONE?
人工智能的重要性不需要我再強調,Andrew Ng 在Spark Summit 2017上提出《AI: The new Electricity》. 各大公司也相爭提出自己的機器學習平臺,比如說微軟的CNTK,Google的Tensorflow等等。但是回答為什么需要TI-ONE這個問題,還要從云計算的特點和機器學習的生命周期出發。在云上,我們偏向云服務化,基礎設施服務化,平臺服務化,算法服務化,機器學習算法也不例外。
但是機器學算法有一個漫長的生命周期,從數據獲取到數據預處理再到選擇一個框架并編寫算法,然后訓練得到一個模型,最后用這個模型進行預測。在云上我們還要對模型進行服務化。如此漫長的過程,所以我們需要加速機器學習的生命周期,加速模型的服務化,這就是我們需要TI-ONE的原因。
具體而言,TI-ONE提供了如下功能:
首先整合了數據預處理平臺,提高數據預處理效率。
支持主流機器學習框架,內置常用算法,以拖拽的方式就能完成算法開發。
支持自動調參,支持多個層面的協作,支持了一鍵模型部署和服務化,還有在線推理。
用開發者的語言來說, TI-ONE就是騰訊云上的機器學習IDE。
什么是TI-ONE?
我將從架構,工作流,調參,協作,部署等這幾個方面進行分享。
TI-ONE是一個層次架構,最下層是COS存儲層,存儲層之上是GaiaStack資源調度層,GaiaStack賦予TI One很多商業特性,后面我會展開分享。調度層之上是架構層,我們整合了Tensorflow,PyTorch,XGBoost,Angel和Spark等,其中Angel是騰訊自研的,Spark是騰訊增強的。算法方面,我們集成了大量的常用算法,既有CNN、RNN、DBN等深度學習算法,也有的GBDT、FFM等傳統機器學習算法。用戶可以用這些算法訓練自己的模型,支持業務,比如圖象識別、語音識別、精準推薦和實時風控等等。
TI-ONE為用戶提供了一個圖形化開發界面,以拖拽方式就能開發一個機器學習算法,這里我給一個例子,
- 從COS層或本地文件系統中獲得數據
- 對數據進行預處理
- 對數據進行切分,這里需要指出的是,這里是將數據切分成訓練集和驗證集,而不是測試集
- 然后用拖拽的方式選擇一種算法,以邏揖回歸為例
- 設置算法需要的參數
- 訓練得到模型
如果要驗證這個算法也很簡單,只要:
- 從存儲層中獲得數據
- 對數據進行預處理
- 輸入到模型
- 算法評估
運行完成后會給出混淆矩陣和AUC值。
調參是機器學習的重要環節,而且非常具有技巧性,TI-ONE提供了自動化的調參工具,特點是通過參數組合產生多個實例,然后并行運行這些實例,從這些實例中選出效果最好的一個。
舉個例子,假設你要訓練一個隨機森林,你要決定森林中樹的棵數和訓練每棵樹所需要的特征數,只要給定一個參數組合,然后交給TI-ONE,TI-ONE可以幫你選擇最好的組合。在另一些情況下,我們可能需要對一些正則化超參調優,我們只要給定一個范圍,然后交給TI-ONE,TI-ONE就可以幫助我們選擇最優的參數。
協作對于機器學習也很重要,TI-ONE提供了多個層面的協作。
第一是模型層面的分享,訓練好的模型可以分享給你的同事。比如你們倆同時對同一個業務開發算法,想比較誰的精度更高,就可以互相分享這個模型。
第二是工作流層面的分享,工作流就是機器學習生命周期,分享工作流,就是分享整個機器學習生命周期。假設你前面做了一個皮膚推薦的任務,后來要做裝備推薦的任務,基本上只要小改動就可以了。
第三是服務層面的共享,模型部署好后還可以共享,你可以把模型分享給后臺人員,讓他(她)幫你定位問題。
?
部署和服務是云上機器學習和傳統學習的不同之處。TI-ONE提供了一鍵式部署工具。我們可以將訓練好的模型部署成Application, 然后裝載成多個實例,一個實例中還允許有不同版本。第三方的用戶和模型的開發者就可以用REST API去調用,非常方便。
前面我們講了TI-ONE的特點,開發者肯定想知道它背后的設計之道。我喜歡用冰山理論來解釋事物背后的原理,前面看到的不管是工作流,還是調參,協作和部署工具,這些只是冰山一角,水下面是什么呢?
我們認為一部分原因是整合,我們整合了COS存儲,整合了GaiaStack調度,整合了常用的機器學習框架和算法,但是僅僅整合還是不夠,我們還需要自主研究構建差異化的競爭力,這個就是TI-ONE的特別之處。
第一個特別之處是Angel,Angel騰訊自研的機器學習的框架,它克服了Spark將模型放在單個節點的不足,通過對底層數學庫的優化,它可以支持萬億級參數的模型,放眼業界,能支持如此大模型的計算框架也是鳳毛菱角。
算法方面,我們實現了常用的傳統機器學習算法,比如邏輯回歸,SVM等等,其中還有一些是我們原創的, 如LAD* 就是我們發表在VLDB上的成果。
性能方面,我們比較了Angel和Spark, XGBoost等平臺,發現Angel性能表現非常強悍。有些算法的性能是Spark的20+倍。
第二個特別之處是圖計算算法,我們知道圖計算領域有三個主要玩家,即Pregel,GraphLab,和GraphX,而Pregel是谷歌閉源,GraphLab是商業軟件,只有GraphX是開源軟件。但是GraphX更新慢,算法少,鑒于這種情況,我們就基于GraphX增加了很多圖計算算法,有節點評價算法,社區發現算法,統計特征算法,經過細致的優化,這些算法都支持了千億級規模的關系鏈。
第三個特別之處是支持用戶自定義算法,前面提到我們集成了非常多的算法,有深度學習算法,也有傳統學習機器算法,有回歸算法,有分類算法,推薦算法等等,但是對于一些高級用戶來說還是不夠,所以我們允許用戶自定義算法到TI-ONE執行,雖然是一個小功能,但是給用戶帶來很大的靈活性。
前面我們談到了TI-ONE的功能和特別之處,現在要談一談商業用戶比較關心的性質,嚴格來講這個性質不是TI-ONE本身的,而是GaiaStack賦予的。
第一個是專用集群,當用戶數據量較大時,我們可以提供多個完整集群讓他使用,當用戶的數據比較小的時候,可以多個用戶共享集群,我們做了很好的多租戶,用戶的資源和數據隔離。支持熱升級,業務不中斷,用戶無感知。支持主備自動切換的高可用,當服務量增大時,會自動加載新的實例,并自動負載均衡。
最后我們看看用戶,我們公司內外都有很多的用戶,在公司內比如騰訊游戲、微信、應用寶、QQ音樂等等都是我們的用戶。
最后發個福利,大家可以通過掃碼來獲得試用或者文檔。
更多有關TI-ONE詳情,請點擊下方獲取。
TIOne騰訊云上的深度學習平臺.pdf
?
問答
是否有.NET機器學習庫,例如,可以為一個問題建議標記?
相關閱讀
安利10個有趣實用的人工智能開源項目
區塊鏈、人工智能和物聯網之間是什么關系?
圖像分析那些事︱AI來了
?
此文已由作者授權騰訊云+社區發布,原文鏈接:https://cloud.tencent.com/developer/article/1136172?fromSource=waitui
轉載于:https://www.cnblogs.com/qcloud1001/p/9109423.html
總結
以上是生活随笔為你收集整理的一站式机器学习平台TI-ONE是什么?——云+未来峰会开发者专场回顾的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nginx--之静态服务器
- 下一篇: Java基础23-集合类2(Set接口,