1、中國軟件技術大會CHINA SOFTWARE TECHNOLOGY CONFERENCE深度學習模型質量體系構建Agenda 算法質量的挑戰 數據透出與可視化 模型評估 特征分析與選擇 算法系統的持續交付講師簡介:孫凱,花名路宸,阿里巴巴高級技術專家,目前在阿里媽媽負責深度學習工程效能方面的工作,涉及特征分析模型評估算法迭代效率等相關領域。曾任職于中興通訊、IBM和EMC等公司,從事過高性能計算和大數據等相關領域的工作。計算廣告領域-算法質量的挑戰大規模數據黑盒化過程實時化系統千億樣本 萬億特征 TB模型50+模型廣告搜索與定向全業務遷移端到端實時化演進到組件實時化模型拆分與融合喪失功能獨立評
2、估能力前沿技術/風險未知AI的“黑盒”特性深度網絡對機器學習研究和應用領域產生了巨大的影響,與此同時卻無法很清晰地解釋神經網絡的來龍去脈;迄今為止,深度學習不夠透明,神經網絡整體看來仍然是一個黑箱。因此,人們一直致力于更透徹地去理解其中復雜的過程,從而達到進一步優化的目的;由于人類對于世界的認知和感受主要來自于視覺,良好的可視化可以有效地幫助人們理解深度網絡,并進行有效的優化和調節;(引自2018 AI predictions:8 insights to shape business strategy)基于數據透出的多維度可視化分析深度學習組件(TF-Tracer/TF-Profiler等)主
3、要負責數據透出、實時監控和輸出控制等,透出的數據主要是模型訓練過程中的Raw Data(未經加工或計算統計);后端微服務(Tensorboard+/Notebook+/Facets)和前端WEB平臺(高維可視化)負責相關數據的在線離線交互式等方面的可視化分析評估;以模型訓練任務的生命周期管理(Lifecycle)貫穿始終,從而形成多維度可視化分析的生態循環;TF-Tracer:基于計算圖的全面數據透出基于原生的深度學習框架TensorflowAPI(tf.train.SessionRunHook)編寫的即插即用組件,無需用戶開發額外的代碼,只需用戶通過配置文件增加相應配置信息,即可使用對應的組
4、件;配置信息由組件開關和組件配置參數信息兩部分組成:打開相應組件開關后,組件功能不會對原有訓練任務產生較大性能影響,從而保證線上訓練效率;關閉相應組件開關后,對原有訓練任務無任何功能或性能上的影響;數據透出組件TF-Tracer是基于Tensorflow 計算圖(tf.Graph)開發的,可以全面透出計算圖中的所有變量(tf.Variable);基于圖數據集(tf.GraphKeys),通過正則表達式對變量集合進行匹配過濾,透出相應變量數據集合,同時也支持直接指定變量列表進行數據透出,支持NumPy/Bin兩種數據格式輸出;在線動態更新數據集實時透出對于運行周期較長的模型訓練,如Online
5、Learning,在訓練過程中發現異常的話,有時很難根據現有透出數據進行定位;而重啟任務更新透出數據集的話,有些問題并不能復現(深度學習統計學特性);TF-Tracer在不重啟訓練任務的前提下,支持在線動態更新透出數據集;針對于chief_only等于False的情況,即所有worker都透出數據時,支持指定worker動態更新,非指定worker透出數據不變;右圖:在線修改實時透出實例:變量從layer2/biases:0和layer2/weights/part_0:0到變量layer1/weights/part_1:0和layer4/weights/part_0:0模型評估-通過邊權重了解
6、模型訓練狀態邊的權重是神經網絡模型的主要成分,因此分析邊的權重可以對模型狀態有一個最直接的了解;模型權重分布異常是模型訓練出現異常的一個重要表征,表明可能出現過擬合或者訓練數據存在問題;右圖,過擬合的模型中,邊權重的大小分布很不均勻,出現了大量權重(絕對值)極大的邊,且集中在一條帶狀區域內;這一條帶狀區域為某一組特征輸入所連接的所有邊,表明模型過度擬合了該組特征的信息。我們更進一步發現,無法通過正則或dropout來防止這種過擬合狀況并提升模型效果,這表明問題出在該組特征輸入上;模型評估-通過梯度了解特征輸入的影響力將輸入層的某個神經元狀態針對模型輸出預估分求導,該梯度的強度表示了模型的預估輸
7、出對于該輸入的微小變動的敏感度,從而可以反映出該輸入對于模型的影響力;梯度越強,表明該輸入的對模型的影響越大;右圖,對比了兩個不同狀態的模型中(未過擬合 vs 過擬合,與上頁展示的兩個模型一致),由梯度求得的各個特征組的平均影響力;可以清晰地看到兩個狀態的區別,過擬合的模型過度看中少量幾組特征,尤其是編號為10的特征組(這正對應了上頁圖中的出現異常邊權重的帶狀區域);直接指標:iv/woe、缺失率、高頻特征、特征離散度、分布變化率、取值/結構相關性等;間接指標:通過特征處理算子處理高復雜特征,完成效用分析;特征效用分析(衡量有效性、相關性)基于特征中心維護的三維拓撲的兩種輔助手段:無需提取數據
8、直接推測新特征效用等指標;相似相關特征給予用戶靈感,高效快速設計新特征;輔助特征設計(預測特征效用)基于特征長期質量得分過濾低質量特征 基于特征效用分析篩選與目標高相關的特征 結合DropRank/BenchMask/ScoreGap/新增特征效用等手段高效特征選擇(優化特征,提升模型性能)特征數值設計關系:皮爾遜系數等衡量特征間數值相關性;組合特征間根據原料及組合方式衡量設計相關性;特征結構關系:比如基于Tree/Graph提取的特征,存在相鄰/父子/兄弟等結構相關性;特征關系挖掘(推薦新特征)風險預估特征分析-面向高維ID化稀疏數據特征分析 特征溯源風險預估影響面分析:通過特征中心構建三維
9、拓撲分析本次異常影響的特征模型;通過自身歷史結構變化,預估風險;影響路徑獲?。和ㄟ^有向圖中的節點關系得到影響路徑;影響力分析:基于拓撲圖,結合輻射步長(紅圈1步橙圈2步.)和特征相關性預估風險大??;全量特征池-建設健康特征生態圈風險預估降低系統負擔 特征有進有出隨著更多業務的接入,引入特征效用相關數據用于特征淘汰(效用持續過低、離散程度過高等),為特征中心維護健康生態提供更強大的數據支撐(傳統無效特征淘汰通?;谑褂寐?缺失率/方差過低等統計值)。全量特征池特征關系可視化特征淘汰與預警詳細信息輔助決策特征選擇改進了DropRank、BenchMask算法進行特征刪減實驗,新增特征效用分析、特征
10、誤導貢獻,引用了Feature GAUC等方法,實現高效的特征優化實驗,這些方法目前在大規模深度學習訓練上完成了30+特征的刪除;改進BenchMask 一次預測任務實現多組特征評估缺失影響 改進:采用評估任務替代訓練任務,結合隨機mask并流程化,產出AUC_GAP、預估分的(嚴格一致率、STD、AVG等指標),結合三維拓撲的相關關系,進行特征選擇;特征選擇改進DropRank 所有特征的重要度變量直接參與訓練 改進:采用伴隨式增量訓練的方式代替直接訓練。在大規模數據、復雜模型的背景下,這一改變讓方案具備可行性;提出特征誤導貢獻 挖掘對模型有負向作用的特征 獨創的用于二分類問題的誤導評估:基
11、于預估分排序與label是否一致得到新的label衡量誤導,然后進行效用分析(IV值),挖掘具備分類誤導傾向的特征?;A數據樣本構建特征提取模型訓練離線評估小樣本驗證人工干預離線鏈路監控預估測試離線在線實時對比特征工程測試召回測試訓練平臺測試計算框架測試在線巡檢模型部署模型分發在線預測策略機制效果觀測效果全鏈路Debug離線實時訓練在線預測樣本、特征、模型,數據難構造預估分、排序結果,結果難解釋數據復雜效果問題難定位客戶投訴難恢復機制復雜單模塊Debug改寫測試離線訓練、實時、在線服務實現語言、邏輯均有差異鏈路復雜樣本透鏡挑戰解法持續交付-算法迭代模式樣本構建特征提取在線訓練模型分發模型加載在
12、線預估算法系統交付鏈路算法系統交付核心:數據+模型特點:高頻長鏈路,線上/線下打通如何構建算法系統持續交付閉環?如何打造15分鐘級別的交付能力?編譯單元測試集成測試灰度發布正式發布線上冒煙工程系統持續交付鏈路數據質量度量模型校驗全鏈路監控系統性能評估模型分析確保在線訓練系統的樣本/特征,以及模型產出數據的正確性在模型推上線之前,預判模型的質量,阻止問題模型上線刻畫整個在線學習系統的運行上下游依賴,展示監控/告警體系全鏈路系統容量摸底,系統承載能力預判持續交付閉環系統具備數據透視,數據分析/評估的能力關鍵詞:檢測速度快 檢測精度高 全鏈路覆蓋持續交付-問題定義持續交付-數據驗證價值剖析:數據是算
13、法系統的核心資產 構建算法持續交付的基礎樣本構建特征提取模型訓練基礎數據樣本數據特征模型數據 正負樣本比例 樣本規模 樣本大小 特征缺失率特征頻次統計 特征效用統計 testAUC loss度量指標確定系統鏈路指標:系統延遲(樣本產出/訓練延遲)系統吞吐量構建以模型為核心的時空壓縮實時模型樣本樣本樣本樣本樣本樣本樣本/特征時間域時間軸訓練時間域時間軸系統時間域時間軸樣本域聚合指標訓練域聚合指標系統域聚合指標時間維度聚合策略:均值聚合 最大值聚合 最小值聚合 帶權重聚合空間維度聚合數據分訓練分系統分歸一化質量分持續交付-全鏈路監控系統挑戰:實時環境變化劇烈,異常判定規則隨時失效 系統異常情況下解決告警信息冗余問題解法:智能化告警:構建基于效果反饋的鏈路,實現告警閾值的自適應調整 構建系統拓撲:告警時間片打平,構建告警依賴智能化告警 解決在線學習環境劇烈變化造成的告警誤報的問題 解決新接入系統的告警閾值冷啟動問題貢獻:構建基于模型產出延遲&效果指標的自適應調整閉環系統級別告警抑制 解決多模塊依賴,系統級別告警信息冗余的問題貢獻:基于系統拓撲構建告警拓撲告警時間的時間片聚合Q&A謝 謝