Salesforce開源支持每日30億次推測的ML函數庫 訓練模型僅要數小時
Salesforce開源了每天用於執行超過30億次推測的結構化機器學習函數庫TransmogrifAI(發音為trans-mog-ri-phi),TransmogrifAI已經大規模的使用在產品服務上,作為構建人工智慧平台Einstein的基礎,也幫助Salesforce的數據科學家,為客戶生產定製化模型的時間,可以從數周降至數小時。
儘管在過去十年機器學習已經有了巨大的進步,但構建出機器學習系統仍然不容易,Salesforce Einstein數據據科學資深總監Shubha Nabar提到,企業在為消費者構建機器學習產品時,傾向解決簡單的用戶案例或使用容易取得的數據集,一旦想使用更具多樣性的數據或是案例,則情況就變得複雜有挑戰性。 Salesforce的客戶希望機器學習提供的服務,包括可以預測客戶流失、銷售預測、設備故障、特價接受程度,甚至是電子郵件點擊的轉化率,也就是說Salesforce需要為不同客戶創建不同的機器學習模型,才能符合這樣的客戶需求。
訓練全局的機器學習模型對Salesforce來說沒有意義,每個客戶的數據都是獨一無二的,具有不同模式、樣貌以及業務流程造成的偏差,要讓客戶可以真正得到機器學習的幫助,必須針對數千個不同案例,訓練定製化機器學習模型。 Shubha Nabar表示,大多數自動化機器學習解決方案,要不是僅專註解決機器學習流程中的一部分,不然就是專為圖形、語音或是自然語言等非結構化同質數據設計,但Salesforce需要的是能夠快速產生大規模異質結構化數據的高性能模型解決方案,於是Salesforce開發了自家的機器學習函數庫TransmogrifAI。
為了要產生可以適用不同客戶的案例的機器學習模型,TransmogrifAI有許多特別的設計。 TransmogrifAI是基於Scala和SparkML的函數庫,目標是讓數據科學家只要輸入幾行程序代碼,就能執行數據清理、特徵工程或模型選擇等工作,獲得一個高性能的模型,還能進一步探索或是迭代出更好的模型。
SparkML工作管線使用了Transformer的抽象,以及用來轉換TransmogrifAI專用的數據結構DataFrame的Estimator,而TransmogrifAI則創建在這些抽象基礎之上。在TransmogrifAI中,模型的特徵本質就是一個指向DataFrame的類別安全指標,擁有所有消息,包含名稱、數據類型或是衍生的承襲信息。
特徵是TransmogrifAI開發人員主要操作的Primitive,操作或是定義特徵像是程序開發使用變數一樣,而特徵可以分享並且重複使用,另外,TransmogrifAI也能讓開發人員可以輕鬆定義複雜的時間串列聚合數據。由於強類別帶來的類別安全,TransmogrifAI可以對整個機器學習流程,進行類別檢查,並儘可能儘早抓出錯誤,而非等到運行工作管線一段時間後才發現。類別安全還可以提升機器學習工作流程,每個階段輸入與輸出的透明度,而這項好處可以大大降低訓練模型所需要的知識。
TransmogrifAI除了提供開箱即用的自動Estimator,對於需要更多控制的用戶,TransmogrifAI也具可高度定製化特性與彈性,每個Estimator都能參數化,用戶可以直接設置或是調整參數,另外也可以在機器學習工作管線中,使用自定義的Transformer和Estimator,而為了要加速數據科學家的工作效率,這些自定義的工作都不複雜,Shubha Nabar提到,定製化Transformer就像定義Lambda表達式一樣容易。
TransmogrifAI在Salesforce中大量採用,而且也劇烈改變了內部的工作流程,Shubha Nabar表示,Salesforce的數據科學家可以用最少的手動調整來產出數千種模型,並將這些訓練模型的周期從數周縮短至數小時。


※Samsung、Harman共同推出全新高級soundbar系列
※微軟Azure Blob存儲推出防篡改功能,加強金融法遵功能
TAG:十輪網 |