劉有光
(上海電氣集團(tuán)數(shù)字科技有限公司,上海 200233)
autoML 自動化建模功能通過用戶進(jìn)行基本的訓(xùn)練數(shù)據(jù)接入配置、設(shè)定用于訓(xùn)練的樣本參數(shù)與目標(biāo)參數(shù)、選擇建模類型、評價指標(biāo)等操作,由系統(tǒng)后臺自動完成數(shù)據(jù)預(yù)處理、歸一化、特征工程、模型選擇、超參數(shù)尋優(yōu)訓(xùn)練并最終生成可用的模型,同時輸出優(yōu)化模型的置信度或準(zhǔn)確度等指標(biāo),該功能要兼容不同數(shù)據(jù)集的建模訓(xùn)練,計(jì)算所耗費(fèi)的時間和計(jì)算資源應(yīng)滿足一定的合理性,并在自動建模過程中監(jiān)控訓(xùn)練曲線變化規(guī)律,對訓(xùn)練效果不理想或異常情況,及時調(diào)整訓(xùn)練參數(shù)并提示用戶,避免資源浪費(fèi)。
(1)自動準(zhǔn)備數(shù)據(jù)。數(shù)據(jù)預(yù)處理功能(數(shù)據(jù)格式轉(zhuǎn)換,去重,X/Y 分類,算法類型判斷)。(2)自動特征工程。數(shù)據(jù)歸一化操作(Normalization)、基于機(jī)器學(xué)習(xí)的特征工程。(3)自動選擇算法。超參數(shù)優(yōu)化,網(wǎng)格搜索、隨機(jī)搜索、貝葉斯優(yōu)化等;自動流水線、工作流構(gòu)建;神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索(深度學(xué)習(xí))。(4)NAS 主要包含三個部分:①搜索空間 search space;②搜索策略 search strategy;③性能估計(jì)策略 performance estimation strategy。(5)自動模型選擇和集成學(xué)習(xí)
圖1 數(shù)據(jù)源
(1)案例背景。在風(fēng)電場中每個機(jī)組均配備了SCADA 系統(tǒng),對機(jī)組運(yùn)行過程中的關(guān)鍵狀態(tài)參數(shù)和環(huán)境參數(shù)等實(shí)時采集與監(jiān)測,確保風(fēng)電機(jī)組高效可靠運(yùn)行。根據(jù)風(fēng)電場累積的SCADA 歷史數(shù)據(jù),可以進(jìn)行機(jī)器學(xué)習(xí)建模,建立智能預(yù)測類模型對關(guān)鍵工況參數(shù)如發(fā)電狀態(tài)、發(fā)電有功功率等進(jìn)行智能預(yù)測,從而指導(dǎo)對機(jī)組現(xiàn)有運(yùn)行策略進(jìn)行優(yōu)化調(diào)整,提高機(jī)組發(fā)電量或降低運(yùn)維成本。傳統(tǒng)機(jī)器學(xué)習(xí)建模過程,需要依賴專業(yè)數(shù)據(jù)工程師對機(jī)器數(shù)據(jù)進(jìn)行預(yù)處理、特征提取、模型篩選與優(yōu)化等一系列過程的反復(fù)調(diào)整,才能最終生成最優(yōu)的機(jī)器學(xué)習(xí)模型并投入使用,整個過程耗時較長,且不同專業(yè)的工程師生成的模型各有不同。而AUTOML 模塊將上述過程進(jìn)行自動化集成,用戶只需要根據(jù)引導(dǎo),完成訓(xùn)練數(shù)據(jù)接入和訓(xùn)練配置等操作后,系統(tǒng)即可自動生成一定數(shù)量的機(jī)器學(xué)習(xí)模型并同步啟動開展訓(xùn)練,根據(jù)預(yù)測評價指標(biāo)最終生成最優(yōu)的機(jī)器學(xué)習(xí)模型。
以下針對風(fēng)電機(jī)組工況參數(shù)智能預(yù)測這一場景,應(yīng)用AUTOML 模塊,進(jìn)行風(fēng)電機(jī)組有功功率預(yù)測(回歸)案例和風(fēng)電機(jī)組發(fā)電狀態(tài)預(yù)測(分類)案例的建模介紹。
(2)風(fēng)電機(jī)組發(fā)電有功預(yù)測(回歸)案例。
①建立數(shù)據(jù)源,用戶在數(shù)據(jù)源菜單頁下,可以訪問到平臺提供可訪問的數(shù)據(jù)列表,本案例使用的SCADA歷史數(shù)據(jù),對應(yīng)圖1 中 data_test.csv,選擇該源數(shù)據(jù)即可。
②獲取SCADA 數(shù)據(jù)后,進(jìn)入建模類型頁,選擇建模的類型,回歸或分類,本案例選擇回歸選項(xiàng)卡即可,機(jī)器學(xué)習(xí)建模主流的框架包括sklearn/keras/tensorflow/pytorch 等,本次選擇sklearn 框架進(jìn)行傳統(tǒng)機(jī)器學(xué)習(xí)自動建模,最后在獲取的歷史SCADA 數(shù)據(jù)的各參數(shù)中選擇一個參數(shù)作為標(biāo)簽列,即預(yù)測模型的輸出目標(biāo)列,本案例做有功功率預(yù)測,所以選擇GridPower 列即可。參數(shù)區(qū)對應(yīng)自動化建模的搜索空間,支持用戶自定義修改。
③配置好建模類型后,需要設(shè)置執(zhí)行自動建模的計(jì)算資源類型,支持多個模型訓(xùn)練任務(wù)的并發(fā)執(zhí)行,支持設(shè)置各個模型任務(wù)的最大計(jì)算時長,支持設(shè)定搜索空間內(nèi)最大模型訓(xùn)練數(shù)量,同時支持用戶根據(jù)需要選定在單臺服務(wù)器或者在kubernetes 集群中執(zhí)行模型訓(xùn)練任務(wù)(如圖2)。
圖2 計(jì)算類型
④根據(jù)用戶選定的回歸或分類預(yù)測類型,對模型的評價規(guī)則進(jìn)行選擇設(shè)置,如回歸預(yù)測,可評價的指標(biāo)包括R2、均方誤差、平均絕對誤差等。本次選擇R2作為訓(xùn)練模型的評價指標(biāo)(如圖3)。
圖3 評價規(guī)則
⑤最后,完成上述配置后,即可進(jìn)入啟動頁,啟動自動建模訓(xùn)練任務(wù),最優(yōu)模型搜索過程中可以查看各個模型的評價指標(biāo)R2的大小。
⑥自動訓(xùn)練任務(wù)執(zhí)行完畢后,可以進(jìn)入結(jié)果頁,查看本次自動建模過程的詳細(xì)信息。最終,用戶可根據(jù)各個模型的R2的排序比較,選擇R2最大值對應(yīng)的模型作為風(fēng)電機(jī)組有功功率的預(yù)測模型,進(jìn)行后續(xù)的發(fā)布使用。
(3)風(fēng)電機(jī)組發(fā)電狀態(tài)預(yù)測(分類)案例。發(fā)電狀態(tài)預(yù)測(分類)案例與上述回歸案例的操作介紹基本相似,主要區(qū)別在建模類型頁和評價規(guī)則頁的配置上存在差異。
①發(fā)電狀態(tài)預(yù)測(分類)時,選擇分類選項(xiàng)卡,SCADA 數(shù)據(jù)的各參數(shù)中選擇發(fā)電狀態(tài)對應(yīng)的WTState列,分類對應(yīng)的搜索空間,由系統(tǒng)自動匹配提供初始配置,后續(xù)支持用戶進(jìn)行一定的自定義修改。
②分類模型的評價規(guī)則與回歸模型不同,主要包括精度、F1、查準(zhǔn)率、查全率等,由用戶自己根據(jù)需要進(jìn)行選擇,本案例選擇精度作為評價規(guī)則。
③其他配置頁設(shè)置和結(jié)果頁等效果,參照回歸模型對應(yīng)的頁面效果介紹。最后用戶根據(jù)生成的模型進(jìn)行排序,選擇精度最高的模型作為風(fēng)電機(jī)組發(fā)電狀態(tài)的預(yù)測模型,進(jìn)行后續(xù)的發(fā)布使用。
本文從市場需求出發(fā)介紹了autoML 自動化建模的概念、理論及技術(shù)方案;以及介紹了autoML 自動化建模在工業(yè)制造業(yè)中的應(yīng)用。以實(shí)際案例闡明了autoML在工業(yè)實(shí)踐中的可行性及易用性,解決了行業(yè)痛點(diǎn)問題。