胡 杰,余 海,楊博聞,程雅鈺
(1.武漢理工大學(xué),現(xiàn)代汽車零部件技術(shù)湖北省重點(diǎn)實驗室,武漢 430070;2.武漢理工大學(xué),汽車零部件技術(shù)湖北省協(xié)同創(chuàng)新中心,武漢 430070;3.新能源與智能網(wǎng)聯(lián)車湖北工程技術(shù)研究中心,武漢 430070)
隨著電動汽車的快速普及,消費(fèi)者和汽車廠商對電池安全問題越來越重視,電池安全領(lǐng)域正在成為研究的熱點(diǎn),以實現(xiàn)對電池安全風(fēng)險的準(zhǔn)確預(yù)測。Hong 等[1]通過對電池溫度實時監(jiān)測并運(yùn)用Z-score方法,提出了一種基于溫度異常的電池安全實時預(yù)測方法,實驗結(jié)果表明該方法能預(yù)測電池組發(fā)生溫度風(fēng)險的位置和時間。Yang等[2]利用電壓信息估計短路電流的人工神經(jīng)網(wǎng)絡(luò)(ANN),獲得所需電流,利用該電流預(yù)測ESC 單元的最高溫升及溫度分布,實驗結(jié)果表明該方案能對電池風(fēng)險進(jìn)行精度較高的診斷預(yù)測。詹華等[3]提出了一種基于LS-SVR 模型的電池風(fēng)險預(yù)測方法,通過預(yù)測電壓不同狀態(tài)來評估動力電池的風(fēng)險,實驗結(jié)果表明該方案能對動力電池風(fēng)險進(jìn)行有效的診斷預(yù)測。姚建平[4]分析了影響電池溫度上升的原因并基于EEMD-AR 模型提取特征,有效地提高了鋰電池風(fēng)險診斷的準(zhǔn)確度。張家昌[5]利用小波包分解的方法去除數(shù)據(jù)噪聲和提取特征,以此方法分解數(shù)據(jù)作為輸入的模型,對電池風(fēng)險分類預(yù)測的準(zhǔn)確率達(dá)94.13%。Feng 等[6]總結(jié)了處理數(shù)據(jù)和提取特征的方法,對電池不一致性診斷和評估的方法進(jìn)行了分析歸納,并提出了自己的思路。Zhang 等[7]根據(jù)開路電壓和內(nèi)阻分析了電池組的一致性,建立了內(nèi)膜標(biāo)準(zhǔn)偏差與電池組OCV 標(biāo)準(zhǔn)偏差之間的函數(shù)關(guān)系,實驗結(jié)果表明該方案誤差在6%以內(nèi)。Jiang等[8]設(shè)計了一種分析電池一致性的建模方法,該方法能夠描述電池一致性參數(shù)間的依賴結(jié)構(gòu)和參數(shù)的統(tǒng)計特性,與現(xiàn)有的方法相比能提高描述準(zhǔn)確度。王慶年等[9]通過挖掘數(shù)據(jù)構(gòu)建健康因子,并基于ARIMA 模型對健康因子進(jìn)行分析預(yù)測,結(jié)果表明該方案能夠?qū)囕v進(jìn)行精度較高的有效預(yù)警。
本文中基于大量電動汽車的實時數(shù)據(jù)和周圍環(huán)境數(shù)據(jù)來分析電池安全風(fēng)險預(yù)測問題,并將預(yù)測問題解耦為機(jī)器學(xué)習(xí)預(yù)測和時間序列預(yù)測問題,最后通過Stacking 模型將二者進(jìn)行集成改進(jìn)。構(gòu)建接近實際情況的多指標(biāo)特征,模擬了電池復(fù)雜的使用環(huán)境;基于數(shù)據(jù)挖掘提取了行駛工況和駕駛風(fēng)格特征以提高方案的泛化性和魯棒性;對基模型進(jìn)行篩選優(yōu)化后建立Stacking 集成模型以提高精度,最終實現(xiàn)了基于數(shù)據(jù)驅(qū)動的電動汽車電池安全風(fēng)險的準(zhǔn)確預(yù)測。
本文所有數(shù)據(jù)為北京地區(qū)車輛的運(yùn)行數(shù)據(jù),數(shù)據(jù)采集時間是2019年10月1日至2020年8月20日,車輛類型為純電動運(yùn)營汽車,共計6 974 萬條數(shù)據(jù),采集周期為10 s。共有21 種不同類型數(shù)據(jù),其中部分?jǐn)?shù)據(jù)如表1所示。
表1 部分車輛運(yùn)行數(shù)據(jù)
目前市面上的純電動汽車的電池絕大部分是鋰電池[10-11]。電池的內(nèi)部材料和各種性能在車內(nèi)外復(fù)雜的環(huán)境下和每次循環(huán)充放電的過程中不斷發(fā)生變化。
為模擬真實的電池使用場景,本文中基于電池充放電對電池安全的影響、使用環(huán)境對電池安全的影響、電池狀態(tài)即荷電狀態(tài)(state of charge,SOC)和健康狀態(tài)(state of health,SOH)對電池安全的影響,進(jìn)行特征構(gòu)造、模型篩選和Stacking 集成。本方案大致步驟為:對實車數(shù)據(jù)進(jìn)行處理,將數(shù)據(jù)劃分為3個不同片段,并分為訓(xùn)練集和驗證集;基于對數(shù)據(jù)的理解來進(jìn)行特征提??;運(yùn)用隨機(jī)森林和SHAP 組合模型篩選出最終特征;基于預(yù)測問題的解耦,分別進(jìn)行模型的篩選優(yōu)化;將最終篩選出的模型進(jìn)行Stacking集成改進(jìn),并對模型進(jìn)行數(shù)據(jù)實驗。具體的預(yù)測流程如圖1所示。
圖1 電池風(fēng)險預(yù)測流程圖
在數(shù)據(jù)的實際采集過程中,存在環(huán)境變化、設(shè)備不穩(wěn)定、傳輸延遲等問題,故本文數(shù)據(jù)存在大量的問題數(shù)據(jù)。為了后續(xù)模型構(gòu)建的需要、減小模型誤差和提高模型準(zhǔn)確度,需要對數(shù)據(jù)進(jìn)行清洗。
為了便于對問題數(shù)據(jù)進(jìn)行處理,本文將數(shù)據(jù)劃分為不同的狀態(tài)片段:行駛片段、停車充電片段、停車靜置片段。具體的劃分規(guī)則如下:(1)車輛狀態(tài)保持不變;(2)充電狀態(tài)保持不變;(3)考慮到數(shù)據(jù)集的數(shù)據(jù)分布特點(diǎn),為了更好地劃分充電、靜止和放電片段,數(shù)據(jù)間間隔不能小于240 s。劃分后的片段內(nèi)數(shù)據(jù)少于100 條時,考慮其分析意義不大,且增加計算時長,故對其進(jìn)行刪除處理。具體劃分流程如圖2所示。
圖2 片段劃分流程圖
針對存在缺失值、數(shù)值為0、采集滯后、車輛狀態(tài)異常標(biāo)記等不同問題數(shù)據(jù),本文進(jìn)行了差異化處理。
2.2.1 缺失數(shù)據(jù)處理
在數(shù)據(jù)中最高單體電壓、最低單體電壓和最高溫度存在大量缺失,缺失量分別為35%、47%和56%,針對這類數(shù)據(jù)有兩類及兩類以上的缺失進(jìn)行刪除處理,然后計算缺失數(shù)據(jù)前后各5 個共10 個數(shù)據(jù)的標(biāo)準(zhǔn)差以判斷變化程度,當(dāng)數(shù)據(jù)變化程度小時,取這10個值的平均值進(jìn)行填充。此時這3類缺失量分別為8.5%、9%、11%,對這3 類缺失數(shù)據(jù)基于隨機(jī)森林算法進(jìn)行回歸填補(bǔ),具體的回歸填充流程圖如圖3所示。填補(bǔ)后的平均相對誤差如表2所示。
圖3 隨機(jī)森林填補(bǔ)缺失值
表2 平均相對誤差
2.2.2 異常數(shù)據(jù)處理
(1)在數(shù)據(jù)中存在大量數(shù)值為0 的異常值,具體如圖4 所示。從圖4 中可以看出,數(shù)據(jù)存在電壓、SOC、單體電池最小溫度和單體電池最大溫度為0的異常情況。針對此部分的異常數(shù)據(jù),用上述缺失數(shù)據(jù)處理的方法進(jìn)行填補(bǔ)。
圖4 數(shù)值為0的異常數(shù)據(jù)圖
(2)在數(shù)據(jù)中某些片段交界處會出現(xiàn)異常數(shù)據(jù),例如前后兩個片段分別為行駛片段和停車充電片段,在停車充電片段開始處電流為-10 A,但車輛速度顯示大于0。對該部分?jǐn)?shù)據(jù)分析后,認(rèn)為是采集滯后的原因,利用速度數(shù)據(jù)來進(jìn)行平移修正。
(3)在數(shù)據(jù)中存在車輛狀態(tài)標(biāo)記異常的數(shù)據(jù),例如車輛的充電狀態(tài)為停車充電,但運(yùn)行狀態(tài)卻顯示行駛狀態(tài)(圖5)??紤]車輛運(yùn)行狀態(tài)對于后續(xù)模型構(gòu)建十分重要,并且該數(shù)據(jù)占總數(shù)據(jù)比重較大,因此不能刪除處理。分析后在已有的車輛運(yùn)行狀態(tài)特征的基礎(chǔ)上利用速度和電流等特征進(jìn)行修正處理。
圖5 車輛狀態(tài)標(biāo)記異常圖
(4)將通用報警標(biāo)志進(jìn)行二進(jìn)制轉(zhuǎn)換后,發(fā)現(xiàn)數(shù)據(jù)中只存在單體電池欠壓、SOC 低、一致性差報警、制動系統(tǒng)報警、SOC 跳變5 種通用報警。并發(fā)現(xiàn)放電過程中的數(shù)據(jù),大量耦合了電池報警信息,且該部分?jǐn)?shù)據(jù)的電壓、單體溫度等也出現(xiàn)了偏低或偏高,為了防止對后續(xù)模型預(yù)測造成影響,將放電過程數(shù)據(jù)進(jìn)行刪除。
為了更加真實地模擬電池實際工作場景,本文爬取了周圍環(huán)境數(shù)據(jù)作為補(bǔ)充參數(shù),并在數(shù)據(jù)的理解上構(gòu)建了多指標(biāo)特征。
(1)時間信息特征提取
可根據(jù)解析出的時間特征得到是否為晚上、白天等類別特征,這些特征對電動汽車的安全風(fēng)險存在一定影響。例如2019-11-01-06:31:46 特征轉(zhuǎn)換如表3所示。
表3 時間信息特征轉(zhuǎn)換
(2)電池健康狀態(tài)特征提取
本文根據(jù)電池健康狀態(tài)的標(biāo)準(zhǔn)定義進(jìn)行健康狀態(tài)特征提取,其標(biāo)準(zhǔn)定義如下:
式中:CM為電池容量;CN為電池額定容量。
其中電池容量采用安時積分法進(jìn)行計算:
由于該方法計算電容存在誤差,為了減少誤差提高模型精度,需要對電池容量進(jìn)行修正??紤]到溫度對電池內(nèi)部的化學(xué)反應(yīng)以及能量消耗有很大影響,相比于常溫環(huán)境,低溫狀態(tài)的電池容量會有明顯減少,本文先基于不同溫度下電池容量值與溫度的變化關(guān)系,對電池容量進(jìn)行修正,得到修正后電池容量和溫度的變化,如圖6所示。
圖6 單體電池平均溫度和修正后的容量值變化圖
電池放電電流的變化對電池的容量也有較大影響,電池的放電電流會影響到電池的內(nèi)部化學(xué)反應(yīng)從而加速容量衰減。本文基于計算的電池容量值與電池容量真實值之間的比值,對電池容量進(jìn)行修正,得到電池容量在修正前后的差值與放電電流的關(guān)系,如圖7所示。
圖7 電流修正后電池容量差值與放電電流關(guān)系圖
電池容量經(jīng)過修正后仍存在部分離群點(diǎn),針對離群點(diǎn)則采用箱型圖來進(jìn)行分析檢測,檢測結(jié)果如圖8 所示。由箱型圖可知,將邊緣線之外的離群點(diǎn)予以剔除。
圖8 各月電池容量箱型圖
(3)能耗信息特征提取
電動汽車在實際運(yùn)行過程中,電池容量會不斷衰減從而影響電池安全性能,本文基于式(3)來計算電池能耗并提取電池能耗特征[12]。
式中:SOC(t0)和SOC(t1)分別為在t0和t1時刻的SOC值;U為放電過程中的電壓值;Cn為電池容量值;Qd為制動回收部分貢獻(xiàn)的能量,計算公式見式(4)。采用放電片段之前的充電片段來計算放電片段的電池容量,計算公式見式(2)。整車能量消耗中的汽車制動能量主要是制動能量回收貢獻(xiàn)的能量[13]。本文根據(jù)汽車制動能量回收貢獻(xiàn)率和各部分的效率來計算制動回收貢獻(xiàn)的能量。
式中:Ui表示輸出電壓;IiiN表示制動電流的大小;ηes、ηmd、ηtd、ζ分別表示儲能裝置平均能量效率、電機(jī)驅(qū)動系統(tǒng)效率、傳動系統(tǒng)效率、制動能量貢獻(xiàn)率,這些系數(shù)分別為0.902、0.801 1、0.901、0.539。
(4)電池一致性特征提取
電池是由多個單體電池組成的整體而非單個單體電池,各單體電池本身的連接方式、性能、溫度、電壓等都存在著差異[14]。電池不一致現(xiàn)象會對電池產(chǎn)生很大的影響,由于數(shù)據(jù)維度的原因,本文只分析了電池的溫度一致性和電壓一致性。
本文用單體溫度極差和單體電壓極差來表示電池的溫度一致性和電壓一致性。單體電池溫度一致性的計算公式如下:
式中:Tempmax、Tempmin分別表示單體溫度最大值和單體溫度最小值;Umax、Umin分別表示單體電壓的最大值與最小值分別表示溫度一致性得分系數(shù)和電壓一致性得分系數(shù),且都為0.2,一致性得分越接近1,說明電池一致性就越好。
(5)行駛工況特征提取
基于前文片段劃分的結(jié)果,本文選取片段內(nèi)的平均車速、駐車時間比、勻速時間比、加速時間比4個特征用于工況片段聚類分析。其中平均車速vm、駐車時間比例Pi、勻速時間比例Pc、加速時間比例Pa的具體計算公式如下:
式中:n是片段長度;vi是第i時刻的速度;ns是速度為0且加速度絕對值小于0.1的長度;nc為加速度小于0.1的長度;na為加速度大于0.1的長度。
本文基于K-means 聚類對工況片段進(jìn)行聚類,運(yùn)用“肘部法”得到SSE 和聚類數(shù)的關(guān)系,如圖9 所示。從圖9 中可知,當(dāng)聚類數(shù)為3 時,SSE 的下降坡度明顯變緩,后續(xù)變化不大,因此確定最佳類簇數(shù)目為3。通過分析并可視化片段中的平均速度與駐車比例之間的關(guān)系,得到的聚類結(jié)果如圖10 所示。在圖10 中可以看出行駛工況分為3 類,用1、2、3 表示:1 代表的工況駐車比例高,平均速度低,劃分為城市擁堵工況;2 代表的工況駐車比例適中,平均速度適中,劃分為市郊工況;3 代表的工況駐車比例較低,平均速度較高,劃分為高速工況。
圖9 肘部法確定類簇數(shù)圖
圖10 K-means聚類結(jié)果圖
(6)駕駛風(fēng)格特征提取
在實際駕駛過程中,不同的駕駛員對應(yīng)不同的駕駛風(fēng)格,不同的駕駛風(fēng)格會對行駛狀態(tài)產(chǎn)生不同的影響,并進(jìn)一步影響電池狀態(tài)。由于行駛工況會對駕駛風(fēng)格產(chǎn)生一定影響,故需要針對不同的工況來對駕駛員的風(fēng)格進(jìn)行分析。駕駛員主要是通過制動和加速踏板將行駛意圖傳遞給車輛,根據(jù)踏板的開合程度與開合度變化率可以評估其駕駛風(fēng)格,踏板的開合度和開合度變化率可通過汽車的加速度與加速度變化率來表示[15]。
目前多基于邏輯回歸、支持向量機(jī)和神經(jīng)網(wǎng)絡(luò)算法等對駕駛風(fēng)格進(jìn)行識別,但本文數(shù)據(jù)采樣間隔為10 s,采樣頻率太低,用多種模型識別后發(fā)現(xiàn)效果不佳,故本文選擇片段內(nèi)加速度標(biāo)準(zhǔn)差和加速度變化率標(biāo)準(zhǔn)差作為評判指標(biāo)。為避免在不同工況下出現(xiàn)識別偏向性,對不同工況加速度標(biāo)準(zhǔn)差和加速度變化率標(biāo)準(zhǔn)差取平均值作為修正系數(shù)SDJJ和SDaa。將片段內(nèi)標(biāo)準(zhǔn)差除以所屬工況的標(biāo)準(zhǔn)差平均值作為評判標(biāo)準(zhǔn):
式中:n表示加速度絕對值大于0.1 的片段長度;Ji表示第i個加速度絕對值大于0.1 的加速度變化率大?。籥i表示第i個加速度絕對值大于0.1 的加速度大??;m表示所屬工況的片段長度。
用加速度標(biāo)準(zhǔn)差與不同工況下的加速度標(biāo)準(zhǔn)差平均值的比值來反映踏板開合度情況,用加速度變化率的標(biāo)準(zhǔn)差與不同工況下加速度變化率標(biāo)準(zhǔn)差的平均值的比值來反映踏板開合度的變化程度。根據(jù)踏板開合度、踏板開合度變化率和實際用車情況,劃分的駕駛風(fēng)格如表4所示。
表4 駕駛風(fēng)格劃分
為了方便對后續(xù)模型的統(tǒng)一處理和提高模型的穩(wěn)定性,本文對特征的連續(xù)型變量采用歸一化處理,特征的離散型變量采用獨(dú)熱編碼。
為了精簡特征,提高模型的泛化能力,需要剔除無關(guān)特征和冗余特征。本文先運(yùn)用隨機(jī)森林模型對特征進(jìn)行初篩選,將重要度得分靠后的特征剔除;利用SHAP 計算特征對模型結(jié)果的貢獻(xiàn)度;最后用隨機(jī)森林和SHAP 模型相組合的方法來對多指標(biāo)特征進(jìn)行篩選,具體特征篩選流程如圖11 所示。特征最終的篩選結(jié)果如圖12所示。
圖11 RF-SHAP特征篩選流程
圖12 RF-SHAP特征篩選結(jié)果
在篩選非線性關(guān)系的特征中,樹模型的篩選效果較好,但單棵決策樹則容易出現(xiàn)過擬合的現(xiàn)象,故用隨機(jī)森林模型對特征進(jìn)行初步篩選,以避免出現(xiàn)過擬合現(xiàn)象??紤]到隨機(jī)森林模型的可解釋性不強(qiáng),而SHAP 的方法能夠進(jìn)行很好解釋,故用隨機(jī)森林模型對多指標(biāo)特征進(jìn)行初步篩選后,再用SHAP方法計算特征對模型結(jié)果的具體貢獻(xiàn)值,具體公式如下:
式中:g為解釋模型;z′表示相應(yīng)特征是否能夠被觀察到,其中結(jié)構(gòu)化數(shù)據(jù)的每個特征都能被觀察到;M為輸入特征的數(shù)目;?0是用于解釋模型的固定常數(shù)。由于隨機(jī)森林模型輸入的是結(jié)構(gòu)化數(shù)據(jù),因此z′應(yīng)該是為1的向量,則
對于特征初篩中的隨機(jī)森林模型來說,需要計算出每個特征的Shapley 值即該特征的貢獻(xiàn)值后對所有可能的特征組合進(jìn)行加權(quán)求和:
式中:S為模型中特征的子集;M為特征數(shù)量;fx(S∪i)和fx(S)分別表示特征子集S∪i和特征子集S的預(yù)測;fx(S∪i) -fx(S)則表示特征的邊際貢獻(xiàn)值為特征子集S的權(quán)重,其與順序存在一定的關(guān)系。
根據(jù)圖12 中的特征篩選結(jié)果,提取出重要程度最高的13 個特征作為最終輸入特征,具體如表5 所示(表5 還包括其他特征)。在最終特征中電池信息類的特征重要度得分最高,對模型效果影響最大,而能耗特征、行駛工況特征、駕駛風(fēng)格特征和天氣季節(jié)特征等對模型效果也有一定影響。
表5 篩選后的最終特征
考慮到電池安全狀況是在復(fù)雜車載環(huán)境下,在使用過程中隨著電池各項性能指標(biāo)變化而變化,也在使用的過程中隨著使用時間的增加而不斷變化,即電池安全風(fēng)險預(yù)測與電池關(guān)鍵性能指標(biāo)有關(guān),也與時間有關(guān),本文中將電池安全風(fēng)險預(yù)測問題解耦為傳統(tǒng)機(jī)器學(xué)習(xí)預(yù)測問題和時間序列預(yù)測問題兩種。對于前者采用基于多指標(biāo)的機(jī)器學(xué)習(xí)預(yù)測方法,后者是在機(jī)器學(xué)習(xí)模型的基礎(chǔ)上加入時間特征進(jìn)行處理。并對兩個模型建立新的Stacking 模型進(jìn)行預(yù)測,評價指標(biāo)選擇受試者工作特征(receiver operating characteristic,ROC)曲線下的面積(area under curve,AUC)值以保證模型預(yù)測精度以及魯棒性。
表5 特征中max_alarm_lvl 即安全風(fēng)險等級分為0、1、2、3 的4 種不同風(fēng)險等級,其中:0 級是安全狀態(tài);1 級是一種相對安全的狀態(tài),并不影響行駛;2 級風(fēng)險表示電池已經(jīng)處于相對危險的狀態(tài),需要駕駛員停車仔細(xì)檢查;3 級風(fēng)險是最高級別風(fēng)險,需要駕駛員立即停車并下車,車輛很可能出現(xiàn)熱失效和失火現(xiàn)象。以篩選出的13 個特征作為模型輸入,以安全風(fēng)險等級作為模型預(yù)測輸出,對車輛風(fēng)險進(jìn)行預(yù)測。
分類模型輸出一般為概率值,設(shè)置的閾值不同,準(zhǔn)確度也會不同,模型預(yù)測輸出分為4 類:正類樣本被預(yù)測成正類,即真正類(True Positive,TP);正類樣本被預(yù)測成負(fù)類,即假負(fù)類(False Negative,F(xiàn)N);負(fù)類樣本被預(yù)測正類,即假正類(False Positive,F(xiàn)P);負(fù)類樣本被預(yù)測負(fù)類,即真負(fù)類(true negative,TN)。具體關(guān)系如表6 所示,AUC 為ROC 曲線下的面積,ROC 是以False Positive Rate(FPR)為橫坐標(biāo)、True Negative Rate(TNR)為縱坐標(biāo)的曲線,其定義如式(18)和式(19)所示,故AUC 的值越趨近于1,模型預(yù)測效果越好。
表6 模型輸出值之間的關(guān)系
模型篩選是為了能快速簡潔地對多個模型進(jìn)行對比擇優(yōu),從而免去單個模型的繁瑣。對于機(jī)器學(xué)習(xí)模型的篩選,本文中基于劃分好的訓(xùn)練數(shù)據(jù)集來進(jìn)行交叉驗證,其計算公式如式(20)所示;對于時間序列模型的篩選,則是基于自定義時間的交叉驗證法來對模型進(jìn)行驗證。
(1)機(jī)器學(xué)習(xí)模型篩選
對機(jī)器學(xué)習(xí)模型的訓(xùn)練、篩選和驗證不包括time 和max_alarm_lvl_shift 的時間特征。具體的交叉驗證結(jié)果如圖13 所示。由圖可知XGBoost 和隨機(jī)森林模型預(yù)測精度靠前,雖然XGBoost 的模型運(yùn)行時間稍長但精度高,且運(yùn)行時間在可接受范圍內(nèi),故本文選擇XGBoost 作為機(jī)器學(xué)習(xí)模型的最終 模型。
圖13 機(jī)器學(xué)習(xí)模型篩選結(jié)果
(2)時間序列模型篩選
對時間序列模型的篩選即在機(jī)器學(xué)習(xí)模型特征的基礎(chǔ)上加入time 和max_alarm_lvl_shift 的時間特征,采用自定義時間的交叉驗證方法,根據(jù)月份以4∶1 的比例劃分好數(shù)據(jù)進(jìn)行交叉驗證。驗證結(jié)果如圖14所示。從圖中可看出隨機(jī)森林和model-cb模型精度靠前,但model-cb模型的運(yùn)行時間過長,故本文選擇隨機(jī)森林模型作為時間序列模型的最終模型。
圖14 時間序列模型篩選結(jié)果圖
利用貝葉斯優(yōu)化法來對模型進(jìn)行參數(shù)優(yōu)化,貝葉斯優(yōu)化法是通過對種群進(jìn)行宏觀迭代的方法來實現(xiàn)參數(shù)尋優(yōu),可以轉(zhuǎn)換為未知函數(shù)在已知空間的最優(yōu)解問題,對于集成模型和樹模型,貝葉斯參數(shù)優(yōu)化法是一種很有效的方法[16]。優(yōu)化后的結(jié)果如表7 所示。從表7 中可以看出兩個模型效果都有了一定提升,XGBoost 模型AUC 得分提升了1.100%,RF 模型AUC得分提升了1.122%。
表7 模型前后優(yōu)化對比表
RE 模型為時間序列模型其輸入特征多了time和max_alarm_lvl_shift 兩個時間特征,XGBoost 模型為機(jī)器學(xué)習(xí)模型其輸入與時間序列無關(guān),本文Stacking集成模型的方法為:為充分利用數(shù)據(jù)擴(kuò)大訓(xùn)練樣本提高預(yù)測精度,將訓(xùn)練數(shù)據(jù)劃分為4 個月、5個月和6 個月的數(shù)據(jù)來訓(xùn)練時間序列RF 模型,將得到的RE 模型預(yù)測后1 個月的數(shù)據(jù);將全部訓(xùn)練數(shù)據(jù)作為輸入變量來訓(xùn)練XGBoost 模型,得到機(jī)器學(xué)習(xí)模型XGBoost 對數(shù)據(jù)進(jìn)行預(yù)測,最后將3 個RF 模型與XGBoost 模型一起作為基模型輸入到簡單的邏輯回歸LR 模型中,集成得到最終的預(yù)測結(jié)果。具體Stacking集成模型的結(jié)構(gòu)如圖15所示。
圖15 Stacking集成模型結(jié)構(gòu)圖
圖15 中:X為XGBoost 模型的全部數(shù)據(jù)輸入變量,X4、X5、X6為RF 模型的4 個月、5 個月、6 個月的輸入變量,其中不同輸入變量結(jié)構(gòu)如圖16所示。
圖16 不同輸入變量的結(jié)構(gòu)圖
為了驗證Stacking 集成模型的優(yōu)越性,采用圖17 中的方法對其進(jìn)行數(shù)據(jù)實驗。首先根據(jù)月份將訓(xùn)練數(shù)據(jù)劃分為4 個月、5 個月和6 個月的數(shù)據(jù),將其作為不同輸入變量來訓(xùn)練3 個不同的RF 模型;將全部訓(xùn)練數(shù)據(jù)作為輸入變量來訓(xùn)練XGBoost 模型,最后將3個不同RF模型與XGBoost模型的結(jié)果進(jìn)行集成,得到最終預(yù)測結(jié)果。
圖17 Stacking集成模型實驗流程圖
為了進(jìn)一步驗證模型的性能,本文基于測試數(shù)據(jù)對XGBoost、RF 和Stacking 集成模型進(jìn)行模型測試,其模型測試結(jié)果如表8 所示。由表8 可知XGBoost、RF 模型在測試數(shù)據(jù)集上的AUC 得分與訓(xùn)練集上的結(jié)果類似,表明各個模型沒有出現(xiàn)過擬合,模型結(jié)果符合預(yù)期并具有良好的泛化性和魯棒性。
表8 各個模型測試結(jié)果表
其中XGBBoost、RF 和Stacking 集成模型的ROC曲線如圖18 所示。由圖18 可知Stacking 集成模型相比前兩者單模型能明顯提高效果,可以對電動汽車電池風(fēng)險進(jìn)行更準(zhǔn)確的預(yù)測。
圖18 各個模型ROC曲線圖
本文中通過提取汽車內(nèi)外多維度信息,用隨機(jī)森林和SHAP 組合模型的方式對特征進(jìn)行篩選,模擬了復(fù)雜的電池應(yīng)用場景??紤]了汽車實際工況和駕駛員的駕駛習(xí)慣,使方案有較好的泛化性和魯棒性。將電池安全風(fēng)險預(yù)測問題解耦為傳統(tǒng)機(jī)器學(xué)習(xí)預(yù)測問題和時間序列預(yù)測問題,分別采用XGBoost模型和RF 模型進(jìn)行預(yù)測,并將兩者進(jìn)行Stacking 集成改進(jìn)后明顯提高了預(yù)測精度,根據(jù)集成模型的預(yù)測結(jié)果AUC值為0.991 7,表明該方案能對電動汽車的電池安全風(fēng)險做出準(zhǔn)確的預(yù)測,可以為安全化、智能化的電池管理系統(tǒng)提供輔助決策信息。