樸博暉,彭俊榮,楊一鵬,別 瑜,王曉海
(武漢船用電力推進裝置研究所,武漢 430064)
隨著電力電子和新能源技術的快速發展,鋰離子電池在工程上得到了廣泛的應用。然而,隨著充放電周期的增加,容量通常會降低,如果無法準確預測電池剩余壽命,便無法保證產品的安全性等其他方面。因此,鋰電池壽命的準確預測至關重要。
在預測RUL 時,RVM[1]等機器學習模型和MLP 等深度學習模型被廣泛應用。然而針對鋰電池數據呈現序列結構且具有強時間關聯性的特點,基于循環神經網絡(RNN)的多種模型都表現出了良好的性能,包括GRU[2]和LSTM[3]等,針對長序列Transformer[4]更具競爭力。但目前仍然存在以下兩個問題:基于RNN 的網絡以循環的方式對序列數據進行建模,由于長期依賴會導致性能下降;上述方法將原始數據直接輸入網絡模型,但原始數據大多帶有較強的噪聲,導致預測結果不準確。
本文基于Transformer 設計了一種全新的網絡結構,在兩個數據集下針對本文模型和其他基準模型進行了實驗,并驗證了模型的可行性和準確性。本文提出的方法對于鋰電池RUL 預測具有一定的指導意義。
本文主要對鋰離子電池剩余使用壽命的預測方法進行研究,提出了一種全新的模型p-Transformer,在Transformer 的前面添加了前置編碼器,其架構如圖 1 所示。首先簡要介紹Transformer 模型原理,而后介紹改進部分的前置編碼器。

圖1 p-Transformer 網絡結構示意圖
Transformer 由具有多層結構的編碼器和解碼器組成,且每層都包括一個多頭自注意力(Multi-Head Self-Attention)和一個前饋神經網絡(Feedforward Neural Network, FNN)子層。編碼器將輸入序列映射到高維,而后將其饋送到解碼器生成輸出序列。由此,可以從電池歷史數據中學習容量退化的長期依賴關系。
多頭自注意力機制將單個自注意力機制拆分為多個子空間,并在每個子空間上執行自注意力機制,從而更好地捕捉不同層次的特征。具體來說,將輸入序列和上下文向量分別轉換為h組查詢(Query)、鍵(Key)和值(Value)[5],得到h組注意力矩陣A1,A2,...,Ah,經拼接得到增廣矩陣AεRn×hd,然后通過線性變換轉換為最終加權和向量CεRn×d。
其中,Selfattention表示單個自注意力機制,Concat表示拼接操作,分別表示第i組查詢、鍵和值的權重矩陣,0W表示線性變換的權重矩陣。令(Hi) =(Q,K,V)。
前饋神經網絡子層由兩個線性變換和一個激活函數組成,其中第一個線性變換將輸入向量轉換為一個中間表示向量,第二個線性變換將中間表示向量轉換為最終表示向量。具體來說,將輸入向量x在FNN 子層中表示為:
則可由Hi當前得到下一個預測結果Hi1+:
鋰電池原始輸入數據具有一定程度的噪聲,且在進行充放電時更為明顯。在大多數方法中,原始數據不做任何處理直接輸入網絡,其中的噪聲數據會嚴重影響預測精度。為了保持穩定性和魯棒性,輸入數據在進入網絡前需經過去噪處理。預處理前置編碼器將高維特征編碼為低維特征,進行數據壓縮降維并提取深層非線性特征,而后經過解碼器去除噪聲并對原始數據進行重構。模塊結構如圖2 所示。

圖2 前置編碼器簡易結構圖
為了減少輸入數據的分布變化對網絡的影響,需要對數據進行歸一化處理。設C0為額定容量,x={x1,x2,...,xn}表示長度為n的輸入序列,將其映射到(0,1],即:
其中,W、b、f和y分別表示前置編碼器輸出層的權重、偏置、激活函數和輸出。
其中:W'、b'、f'和分別表示前置解碼器輸出層的權重、偏置、映射函數和輸出。
在該前置編碼器網絡中,ReLU 和Sigmoid函數分別作為編碼器和解碼器的激活函數。目標函數定義如下:
結合前述過程,通過數據輸入歸一化、去噪降維并經過Transformer 層,得到最終目標函數(11),通過訓練使損失函數誤差最小,得到模型結果。
給定h個注意力機制層,將最后一個單元(cell)學習到的結果映射為Transformer 的預測:
其中,Wpre、bpre、f和Hh分別表示預測層的權重、偏置、映射函數和輸入。
為了從多角度對模型性能進行評估,本文基于Park 等人[6]的研究,選擇了相對誤差(Relative Error, RE)、均方根誤差(Root Mean Squared Error,RMSE)和平均絕對誤差(Mean Absolute Error,MAE)三種評價指標,定義如下所示:
本文使用鋰電池領域認可度較高的兩個公共數據集NASA[7]和CALCE[8]。其中,NASA 包含四種不同鋰離子電池的數據,每個電池重復充電、放電和阻抗測量三種操作。
實驗環境為:Python3.7、Pytorch1.8.0 和Windows 下i7 處理器。模型可變參數包括:學習率lr、自注意力層數L、隱藏層大小h和任務比重a。通過反復實驗確定在該實驗環境下,最優參數為:
在同樣的數據集、實驗環境和模型參數的情況下,實現了以下基準方法的鋰電池RUL 預測,并與本文的模型進行了比較,結果如表1 和表2所示。下表列出了所有方法的三重指標數值,并標注了最優結果,其中RE、RMSE 和MAE 分別代表相對誤差、均方根誤差和平均絕對誤差。

表1 NASA 數據集下多種模型的評價結果

表2 CALCE 數據集下多種模型的評價結果
此外,為了探究前置編碼器的去噪效果,在相同實驗環境下,將無前置編碼器的模型與p-Transformer 進行對比,結果如圖3 和圖4 所示:

圖3 NASA 數據集下,無前置編碼器與p-Transformer的對比結果

圖4 CALCE 數據集下,無前置編碼器與p-Transformer的對比結果
從表1和表2可以看出,本文的模型實驗效果相對最好。該模型能夠從鋰電池序列中提取有價值的信息,且該模型具有穩定性和魯棒性。
與GRU相比,本文模型在NASA數據集下的均方根誤差較大,最可能的原因是兩個數據集的序列長度不同。GRU比Transformer比更擅長從短序列中學習特征,這也是Transformer的不足。此外,由圖5和圖6可以看出,在Transformer網絡基礎上加入前置編碼器進行去噪,可以得到更好的性能,這是由于前置編碼器去除了大部分原始數據的噪聲信號,使得預測結果與真實數據更為接近,誤差更小,從而更準確地預測鋰電池的RUL。
本文提出了一種基于Transformer 的優化模型預測鋰電池RUL,模型通過前置編碼器對輸入數據進行去噪并降維壓縮,而后利用Transformer網絡學習容量衰落的特征。與其他基準方法相比,本文提出的模型可以較低的相對誤差、均方根誤差和平均絕對誤差得分較為準確地預測鋰電池RUL,性能更加優秀。本文所做研究對于鋰電池RUL 預測具有一定的參考意義。在后續研究中,可以針對去噪問題設計性能更好的模型結構。此外,針對電池數據序列長短不一的問題,可以設計算法黑盒來適應不同長度序列的鋰電池數據。