本系列的第七篇文章將繼續圍繞如何讓算法逼近模型上限的問題,介紹一種基于回歸分析的異常點檢測技術-Regression Based Outlier Detection(ROD)技術。不同于傳統的異常檢測算法,ROD方法是在模型訓練的基礎上后處理的進行異常點剔除的方法。所以,如何選擇合適的異常點剔除個數需要較多的測試,以尋找到最適用于當前測試集的模型。
該技術模塊集成于DTEmpower中的每個回歸算法節點,能夠幫助用戶在剔除“潛在異常點”的同時,提高了模型的精度和泛化能力。
圖1 DTEmpower中每個算法節點都集成有ROD異常點檢測功能,用戶只需要打開對應開關按鈕“activate_remove_malform”,并配置異常點剔除的個數“remove_malform_top_N”和迭代次數“remove_malform_times”,即可開啟算法節點的ROD異常點檢測功能
圖2 基于DTEmpower軟件平臺的船舶興波阻力回歸分析,選取了GBDT、RandomForest和ExtraTrees算法建立輸入輸出變量的映射關系。其中ROD異常點檢測功能在算法節點的屬性配置界面,用戶需要結合“activate_remove_malform” “remove_malform_top_N”和“remove_malform_times”3個參數進行搭配使用
③ 實驗分析:針對本數據集,可以直觀的發現部分樣本的eval_CWTWC變量量級較大,因此在使用異常點檢測模塊之前,使用DTEmpower的【變量范圍】節點刪除量級過大的數據(結果見圖3)。而圖4所示的試驗結果也證明了ROD在清除異常點、提高模型精度的有效性。
圖3 基于DTEmpower軟件平臺進行數據過濾前后的數據分布,可以看到過濾后的數據集整體基本上已經處于一個合理的數據分布狀態
圖4 隨著ROD功能模塊不斷的刪除數據集中的異常點,可以看到3種算法模型的R2指標(越大模型精度越高)呈現出明顯的上升趨勢,而其MAE指標呈現明顯的下降趨勢。這表明ROD功能模塊在清除異常點、提高模型精度的優秀性能
2. 風機測點結構應力快速評估
圖5 基于DTEmpower軟件平臺的風機測點結構應力快速評估建模方案,方案中選取2種常見算法進行模型的訓練。DTEmpower提供了一站式的數據建模解決方案,通過簡單的節點拖拽即可搭建完整的建模流程,其中ROD功能更是集成于每一個算法節點,幫助用戶構建高精度的機器學習模型
③ 實驗分析:實驗結果如圖6所示。
圖6 隨著ROD功能模塊不斷的刪除數據集中的異常點,可以直觀的看到模型的R2指標(越大模型精度越高)呈現明顯的上升趨勢(左圖),MAPE指標(越小模型精度越高)呈現出明顯的下降趨勢(右圖)。這表明ROD功能模塊在清除異常點、提高模型精度的有效性
數據和特征決定了模型的上限,數據中的異常點會對模型的精度造成嚴重的影響。而DTEmpower中的ROD技術直接以提高模型的精度為目標,尋找并剔除樣本中的“潛在異常點”。
實際工業場景中的應用案例和對比實驗,也證明了ROD功能模塊在挖掘工業數據集中的“潛在異常點”方面的優秀性能,可高效地輔助用戶構建高精度模型。
DTEmpower軟件平臺提供的數據挖掘、特征工程和智能的異常點檢測等一站式解決方案,不僅可以幫助用戶快速、便捷地構建精度較高的數據模型,其技術的創新應用勢必會給工業數據研究者持續帶來福音。