AutoML的概念源自2012年學術界提出一個新觀點Programming by Optimization(PbO),字面上的意思是指以最優化程序開發,實質上就是要解決建模時依賴人工的問題。
AutoML更大范圍內為世人周知是因為谷歌Cloud AutoML Vision產品的發布,這款產品可以用AI設計AI,讓更多對機器學習了解有限的人,把Google級的AI技術運用到產品打磨中,從而降低了使用機器學習的門檻,這也是智鈾科技正在做的事情,不同的是,谷歌AutoML目前專注于圖像識別領域,智鈾科技目前主要以結構化數據為主,致力于為企業帶來全流程、自動化的建模和部署能力,幫助企業構建人工智能核心,實現AI驅動。
目前,傳統行業使用機器學習仍面臨著巨大的挑戰。
1、建模過程繁瑣
2、AI人才匱乏
3、人力成本大
4、算法設計周期長
5、系統實施維護困難
針對這些痛點,夏粉博士帶領智鈾科技團隊開發了自動化機器學習產品“小智”。
小智可以免費試用,支持上限為 200MB 的 CSV 訓練數據量、10MB的數據預測,無需編寫代碼,學習數學,就可以讓你親身體驗機器學習的魅力。模型精度也無需擔心,小智可以幫您完成簡單便捷、高質高效的建模。
試用方法:進入智鈾科技官網,在產品頁面點擊免費試用即可
智鈾科技發布的自動化機器學習產品“小智”,可以自動構建高精度模型,為用戶提供從數據預處理、特征工程、模型調參、模型評估、模型預測到結果分析等一站式服務,其獨創的參數搜索算法解決了人工調參費時耗力的問題,獨創的特征工程算法,令組合特征挖掘效率提升上千倍。另外,小智還支持千億樣本、千億特征數據量,模型從淺層到深層靈活支持。
除了以獨創的算法實現了自動建模,小智在產品的交互方面也貫徹著簡單易用的原則,直觀的web界面允許任何人和小智進行交互,不需要AI背景,用戶也可以一鍵完成建模,內置的可視化效果,如ROC曲線圖和準確&召回曲線,能夠使用戶對自己的業務有更深刻的理解。據某銀行客戶介紹:“在通用場景下,普通業務人員借助小智也能達到高級建模人員水平。”
隨著互聯網+時代的到來,大數據在企業的落地應用正在快速增長,而數據安全,也成為眾多企業的顧慮,這也催生了企業對于私有化部署的需求。據悉,小智將以產品的形式提供給行業,除了支持公有云、SAAS模式外,還提供私有化部署。
AutoML仍然是一個在摸索中的新興領域,誰能搶占技術占領市場尤為重要。目前,智鈾科技已經與金融、醫療、物聯網等多個行業的公司合作為其提供服務,產品的功能應用涵蓋點擊率預估、反欺詐偵測、市場精準營銷以及個性化推薦等,滿足不同場景的不同需求,同時產品的有效性經過實踐驗證,不但能夠為企業帶來收入的增長并且節省成本。
整體建模流程
機器學習建模過程一般包含多個步驟,首先,數據科學家要對業務問題進行定義,抽象為數學問題;對獲取到的數據進行分析、理解、 清洗,劃分;其次進行特征工程,如特征衍生、特征組合、特征選擇等,然后才能開始進行建模、訓練、預測等。在小智平臺,用戶只需上傳數據,選定目標名稱,其余步驟包括數據預處理、特征工程、調參、訓練及預測,得到分析結果,部署和監控模型均由小智完成,實現真正端到端的全程自動機器學習。這大大減少了缺乏機器學習知識用戶的使用難度。
機器學習工作流圖(綠色圓柱塊表示數據,為整個工作流的基礎,藍色的方塊為一個簡單的建模流程,有簡單問題只需要走完藍色方塊就結束了,黃色的兩個方塊為模型需要上線,持續優化改善的部分)
機器學習工作流如上圖所示,整個流程以數據為中心,循環往復。在使用小智的過程中,首先要收集建模需要的數據,可能是業務相關數據,也可能是從網上爬取的一些信息。我們可以將這些結構化數據轉換為csv寬表或txt文件,放在本地、數據庫或HDFS上,然后上傳至小智,對數據集的格式進行調整,例如編碼、分隔符、空值標識、首行是否為特征名稱等。至此,用戶負責的數據準備之前的步驟便完成了。
下一步為建立模型。當用戶上傳數據到小智平臺后,小智會檢查和清理數據,并且會以數據科學的角度給出所有特征的數據畫像。用戶選擇建模目標后就可以開始“一鍵式”自動化建模了。小智會依次完成從數據清洗、特征工程、調參、選擇最優算法、搭建模型、模型評估、模型發布的全過程,實現真正的“一鍵式”建模。模型評估階段可以監控模型的預測性能,當用戶認為預測結果不理想時可以選擇重新訓練模型以達到理想的預測結果。當用戶完成模型訓練并且選擇了合適的模型后,就可以部署模型了。 部署后,可以上傳CSV預測文件,對上傳的數據進行批量預測,或者使用模型API 進行實時預測。
案例分析
為了實際感受小智的效果,并了解它到底和人工建模相比有什么優勢,我們使用一個廣告點擊預測案例來說明,即通過廣告系統的結構;流量預估:設備號、手機,區域(經緯度)、訪問時間;廣告主專業:新型游戲等;創意特征;投放之后定向的特征;廣告位;環境等特征來預測某條投放廣告是否被點擊。
點擊率(click-through rate)是評價在線廣告效果的重要指標,對點擊率進行預測建模在線廣告商尤為重要。我們可以用歷史的廣告投放數據建立一個模型,輸入未來一段時間的廣告投放數據進行模型驗證。分別進行小智自動化建模和手動建模。
小智數據怎么做
該建模數據集是在線廣告點擊率預測競賽的數據,來自Kaggle競賽,通過廣告ID、是否點擊、位置欄位、網站域名、網站種類、應用ID、應用領域、設備編號等屬性來預測廣告是否被點擊。本案例分析中我們只截取了其中一部分數據集,并做了必要的數據清洗,每條樣本為一條廣告投放并且標記了是否被點擊的數據,最后一列“click”為目標,1表示點擊,0表示未點擊。已預先劃分好數據集,“train.csv”為訓練集,“test.csv”為預測集。訓練樣本集共320473個,預測樣本79527個,特征維度為23維。
在上傳數據階段,可以看到有一個虛線框,點擊虛線框火將文件拖拽至此即可實現上傳。虛線框中還有“點此下載測試數據”和“下載數據匿名化工具”兩個選項,我們提供了一些公開的測試數據可供用戶下載測試,加入用戶不想讓自己的數據上傳到公有云上,可以下載數據匿名化工具對數據進行簡單的加密,使得數據特征名稱、敏感特征值隱藏,而且不會影響模型效果。
上傳數據后,可以看到小智中的數據概覽,點擊“確定并生成畫像”進入到下一步,接著通過可視化操作選擇要預測的目標變量與可用的特征變量,保存特征列表后即可進行模型訓練。對于分類任務,特征變量可以分為類別型和數值型,小智可以自動檢測變量類型,用戶也可以根據需求自定義修改類型,這又會節省很多精力。
小智的上傳數據界面
原始訓練數據樣本集概覽
經過匿名化處理的訓練數據樣本集概覽
確定目標變量無誤后,小智會根據目標變量自動分析模型類型,以及分析特征變量,并給出自動質量修復方案。
數據畫像示例
小智建模怎么做
處理完數據后就可以開始建模了,小智全自動建模不需要用戶做任何操作,只要等待模型訓練完成即可。目前只支持二分類和回歸,主要采用常用的LR和GBDT算法,兼顧了性能與可解釋性。之后小智會進行自動建模、調參,用戶可以選擇模型中結果較好的一個。
模型訓練完后可以查看訓練足跡、模型評估、以及模型描述。
其中模型評估中有ROC曲線、Lift提升度、KS曲線、精確&召回曲線等指標,AUC等指標采用交叉驗證的計算值,Lift、KS等采用的是驗證集上計算出的指標。模型評估是我們評價模型好壞的標準,在預測數據集上也有同樣的一個評估模塊。在模型描述中我們有特征重要性查看和歸因解釋,我們可以看到在模型中排列在前面的一些特征,比如我們可以選擇top K進行重新建模,在以后收集數據時特別注重這些特征的完整性和正確性等。原因解釋可以查看預測正確的樣本的哪些屬性占主要正向原因,哪些屬性占主要的負向原因。還可以查看真實值和預測值相差最大的top K個樣本,查看是否是異常數據樣本。
模型描述中的特征重要度
模型描述中的原因解釋
小智部署怎么用
最后的部署就比較簡單了,確定最合適的訓練模型,然后選擇發布即可下載模型部署或者調用API,配合SDK使用進行預測就行了。一般小智可以通過數據源或 API 進行模型部署,其中數據源采用本地 CSV 文件。
與一般工程師人工建模效果對比
如下圖所示,通過運用小智建立的廣告點擊預測模型,在預測集上的AUC 可達到 0.7294,能夠較準確地識別出廣告流量是否被點擊,為廣告投放提供了重要支持;分析團隊在收集到相關數據后,利用小智平臺能夠在 1 小時內迅速構建出模型并完成預測;整個過程僅需要一名普通水平的數據分析師即可完成整個建模預測工作,不需要任何外部顧問,從而節約了大量成本。
在實際應用中,小智不僅在廣告推薦領域,還有包括金融、能源、醫療、新零售、物流、制造、游戲等眾多領域的中都有很好的表現。
小智在預測集上的AUC 達到 0.7294
一般的算法工程師,借助開源算法庫sklearn中的GBDT、RF、LR、Adaboost,以及Xgboost五種算法模型進行建模分析。看到建模效果最好的模型是GBDT,AUC只有0. 7108,小于小智自動建模的AUC 0.7294。
對比銀行某產品推薦的人工建模效果
建模場景:預測目標客戶在1個月內購買產品(5種產品)的可能性;
建模規模:約3700萬戶;
建模數據:根據客戶前一個月的表現,對5類產品的持有和未持有分開建立10個模型,每個數據集大小為200MB—8G;
建模效果:與行內建模團隊模型效果基本相符。建模效率提升了近10倍,在合作銀行中一個人工模型上線一般需要2月左右,小智只需要不到一周就能完成建模,且能和銀行內已有應用系統無縫融合。
對同一模型評價指標的分值,評估級別計算方法為: (小智分值-行內基線)/行內基線
最終效果對比表
(新聞稿 2019-10-14)