金亮, 楊柳, 王艷陽
(1.河北工業大學 省部共建電工裝備可靠性與智能化國家重點實驗室,天津 300130; 2.天津工業大學 天津市電工電能新技術重點實驗室,天津 300387)
永磁同步電機具有體積小、結構簡單、高效節能、功率密度高等優點,廣泛應用于航空航天、軌道交通、電動汽車等領域[1-2],因此電機性能分析與優化一直是國內外研究的熱點。隨著應用環境日趨嚴苛和極限性能的提升,應綜合考慮設計目標性能、材料、能源、造價、工藝和應用環境等多方面的要求,電機性能分析與優化逐步演變為一個數據量大、特征維數高、映射關系復雜的問題。
電機設計參數與性能數據的映射關系,是性能分析與優化的基礎和重點。由于電機結構復雜、材料多樣、工況復雜,多采用數值模擬方法實現對電機性能的精確計算[3-4]。如,通過數值模擬方法和優化算法優化電機的電樞槽口寬度[5]、轉子斜極[6]、分數槽繞組[7]和定子開槽[8]等結構。考慮到數值模擬計算耗時長、所需計算資源多,一般先通過數值模擬方法得到電機設計參數與性能數據的樣本數據,并用樣本數據訓練機器學習算法建立設計參數與性能數據的映射(也稱作代理模型),完成電機性能分析或優化[9]。可以通過Kriging模型[10]、徑向基函數[11]、支持向量回歸[12]模型等方式建立代理模型。代理模型代替數值模型參與優化,可以在很大程度上減少仿真次數、節約時間和計算成本[13-14]。隨著機器學習的發展,研究者們將BP神經網絡[15]、決策樹[16](decision tree,DT)、徑向基函數神經網絡[17-18](radial basis function,RBF)和支持向量機(support vector machine,SVM)等淺層機器學習方法應用到電機優化設計中。
淺層機器學習方法受限于信息處理能力,在有限樣本情況下對復雜函數的表達能力有限[19],往往導致算法性能提升困難、魯棒性差、泛化能力弱等嚴重問題,在高維數據中此問題更加凸顯[20-22]。深度學習可自動學習數據的深層和抽象特征,并在輸出層實現預測或回歸[23-24]。近年來,研究者們將深度學習應用到復雜電機的性能分析與優化中[26-29],有效提高了對高維數據的擬合和泛化能力[30]。
傳統機器學習和深度學習方法都需要大量帶標注結果的樣本,而且測試集或驗證集的數據必須和訓練集有著相同的分布[31]。但實際情況是,較易獲得的數據是歷史積累的不同電機的標簽數據(通過數值模擬或實驗得到的性能數據)以及目標電機的設計參數。僅使用歷史電機數據,由于目標電機與歷史電機數據分布的差異,導致用于性能預測的機器學習模型精確度差、魯棒性差;對目標電機數據集進行標注,存在計算耗時長和所需計算資源多的問題[32]。
因此,提出一種智能自學習新方法,嘗試從歷史電機數據中學習知識和特征,并遷移應用到目標電機性能預測中,使用極少量甚至不使用新電機樣本數據,實現目標電機設計參數與性能數據的映射。主要思路為提出一種基于特征遷移[33-34]的智能自學習電機性能預測方法,使得數據特征空間分布不同的電機數據也可以使用相同模型進行預測。自學習方法主要思想為:
1)將源域和目標域數據進行特征轉換,提取特征到同一公共空間。回歸器對提取的特征進行預測,可以解決目標域與源域數據特征不一致時無法使用同一模型進行訓練的問題。
2)通過加入對抗訓練的方式獲得特征對齊。通過min-max的方式,最小化標簽分類器的損失的同時最大化域分類器的損失,使得源域數據和目標域數據具有相同或非常相似的空間分布。
機器學習對數據有獨立同分布的假設要求,也就是訓練集與測試集必須具有相同的分布特性。當數據集的特征分布差異較大時,常規基于訓練集與測試集的訓練和測試方法通常找不到數據集之間的關聯,導致機器學習算法在不同數據集上的遷移應用困難。因此嘗試基于對抗訓練構建一個不同數據之間共性特征的提取方法,提取數據集之間的共性特征,實現特征對齊,建立性能預測自學習方法,并通過改進的長短期記憶網絡(long short-term memory,LSTM)實現。
考慮到目標電機性能參數取值容易獲得,本文采用通過將源域和目標域投影到公共特征空間的方法實現特征對齊,進而構建探索不同域或不同任務間特征相關性的自學習方法。有標簽的源域指已有設計參數及其對應的性能數據的數據集,可以是已有電機的實驗或者數值模擬數據。無標簽的目標域指目標電機的設計參數集。有標簽的源域和無標簽的目標域共享相同的特征和類別,但是它們空間分布不同,自學習方法與傳統算法的比較,如圖1所示。圖中,每種形狀的標簽數據代表一個領域的數據,傳統的機器學習針對不同領域的數據集要并訓練不同的模型,模型之間不通用;自學習方法把兩個分布不同的數據集分別作為源域和目標域,將源域和目標域映射到公共空間,通過特征提取,將學到的知識遷移到目標域的訓練中,自學習方法解決了傳統機器學習算法在目標域數據沒有標簽時不能很好的訓練模型的問題。

圖1 自學習方法與傳統方法的比較
電機數據在自學習方法中的定義如下:電機樣本數據中任選兩個數據集分別作為源域設計參數樣本集Xs、目標域樣本集Xt和源域性能數據樣本集Ys,探尋不同電機數據的相互遷移性。模型輸入數據Xs∈Xs(Xs={Xs1,Xs2,…,Xsn}),Xt∈Xt(Xt={Xt1,Xt2,…,Xtn}),Ys是一個有限集(Ys={1,2,…,L})。
在Xs、Xt上存在源域特征分布S(X,y)和目標域特征分布T(X,y),兩種分布都是復雜且未知的,相關但又不同。在訓練時,通過對抗學習將S(X)和T(X)映射到公共空間,實現特征對齊。在訓練時已知源域的標簽yi∈Ys。對于來自目標域的數據,在訓練時無標簽,但是通過自學習方法在測試時可以預測這些標簽。
自學習方法在減少不同數據分布差異上面有著良好的表現。其模型主要由生成器、回歸器和域分類器組成。
自學習方法的步驟,如圖2所示。

圖2 自學習方法模型
1)使用源域有標注的數據對生成器Gf和回歸器Gy進行有監督訓練。域分類器Gd將源域數據Xs和目標域數據Xt提取共性特征到公共空間,回歸器Gy對生成器Gf提取的共性特征進行預測,并基于源域性能數據樣本集Ys實現回歸器Gy的參數優化。訓練的目標是使生成器Gf產生的共性特征可以保留源域數據的關鍵信息,且回歸器Gy可以對生成器Gf產生的共性特征進行準確預測。
2)通過加入對抗訓練的方式實現特征對齊。在優化回歸器Gy的參數以最小化訓練集(Xs、Ys)上誤差的同時,通過min-max方法,優化生成器Gf的參數以最小化回歸器Gy損失的同時并最大化域分類器Gd的損失。
通過引入對抗學習將源域特征和目標域特征進行空間轉化,并約束兩者分布盡可能接近,在很大程度上能夠提高不同數據集之間預測的準確率。
自學習建模具體步驟如下,通過特征提取,特征對齊的方式最終實現不同的電機的預測。
1)特征提取。
定義一種深度前饋架構,將不同領域的數據特征提取到公共空間。
此映射中將所有層的參數向量表示為θf,即f=Gf(x;θf),然后,特征向量f通過標簽預測Gy映射到回歸標簽,將相同的特征向量f通過映射到領域標簽d,Gd參數記為θd。
輸入向量x=xs+xt經過隱藏層被映射成D維的特征圖,過程可表示為
Gf(x;W,b)=sigm(Wx+b)。
(1)
式中:sigm為激活函數sigmoid,W和b為當前層的權重和偏置。為了確保了特征向量f的可辨別性以及特征提取器和標簽預測在源域上的組合的總體良好預測性能。因此在源域的帶標簽的部分上最小化回歸器損失,從而按順序優化生成器和回歸器的參數以最小化源域樣本的經驗損失。
2)特征對齊。
對提取的特征實現特征對齊,域之間的轉換是不變的,即分布S(f)={Gf(x;θf|x~Sx|}和T(f)={Gf(x;θf)|x~Tx|}相似,這將使目標域上的標簽預測準確性與源域上的相同。考慮到f是高維的,并且隨著學習的進行,分布本身不斷變化,因此測量分布S(f)和T(f)的不相似性并非易事,可以通過查看Gd的損失,前提是已經訓練了Gd的參數θd以最佳方式在兩個特征分布之間進行區分。
Gy對特征空間的源域數據進行預測,盡可能分出正確的標簽數據,Gy的輸出為
Gy(Gf(x),V,c)=softmax(VGf(x)+c)。
(2)
式中:softmax為輸出層Gy激活函數,V和c為當前層的權重和偏置。
Gd的定義為
Gd(Gf(x),U,z)=sigm(UTGf(x)+z)。
(3)
式中:U和z為當前層的權重和偏置矩陣。


(4)

(5)
在不斷地對抗過程中,特征映射參數θf最小化標簽預測損失(即,特征是可區分的),域分類器的參數θf使域預測損失最大化(即,特征是域不變的)。該參數控制在學習過程中塑造特征的兩個目標之間的權衡。
選取評價指標為平均絕對百分誤差(mean absolute percentage error,MAPE),選取確定系數(R squared,R2)、均方誤差(mean squared error,MSE)、評價網絡結構如下:
(6)
(7)
(8)

MSE取值范圍是[0,+∞],數值越小,說明預測值與真實值越接近。R2取值范圍是[0,1],R2如果結果是0,說明模型擬合效果很差,如果R2結果越接近1,擬合效果越好,但是隨著數據量的增加,R2的值也會趨近于1,因此R2≈1并不能說明模型效果很好。MAPE取值范圍是[0,+∞],當MAPE大于100%時,表示模型是劣質模型,MAPE值越小,則說明預測模型擁有更好的精確度。
本次實驗的GPU平臺為GTX1660Ti-6G。
采用不同深度的LSTM以及其他不同的超參數,包括學習率、dropout進行訓練,表1“LSTM_數字”表示神經元參數的個數,每個單元的輸出為一組超參數,建立自學習模型實驗矩陣,如表1所示。對不同的網絡結構依次進行編號。使用的源域數據和目標域數據,在節3中有詳細介紹。在本文中,整個網絡采用RELU為激活函數,50個Epoch訓練完畢后的均方誤差作為驗證指標。實驗結果及超參數,如表1所示。

表1 網絡結構及實驗結果
采用不同深度、不同的網絡參數進行比較發現,采用3層(編號5)和4層(編號9)結構的網絡效果比較好。與2層的網絡相比,誤差明顯改善,而5層的網絡(編號11、12)和4層(編號9)相比,結果相差不大,說明網絡出現了飽和。
自學習模型調優后,選擇結果如下:
生成器:生成器的架構是由4層LSTM組成,參數量分別是32,64,128,16,對于LSTM的每一層的輸出,使用了注意力機制[35](Attention)。Attention機制通過對模型輸入變量進行計算,賦予輸入變量不同的權重,可以排除周圍的干擾信息,加入Attention機制可以提高輸出質量,獲得更準確的精確度。最后對于最后一層的一個LSTM,我們最后使用了一個全連接的形式,全連接層的參數量分別是512、120、1。
域分類器:域分類器的架構是由3層LSTM組成,參數量分別是16,32,64,對于最后一層同樣使用了一個全連接的形式,全連接的參數量分別是512、100、1。
回歸器:為了使模型做出更精確的預測,回歸器使用LightGBM[36],在訓練過程中不斷添加新的決策樹,新添加的決策樹更加關注預測錯誤的樣本并具有使模型預測結果向誤差梯度下降方向前進的能力。內部采用了基于直方圖的決策樹算法以及使用帶深度限制的葉節點生長策略,具有較高的訓練效率并且支持并行化學習。
仿真是驗證產品早期設計唯一可行的方法,利用仿真,可以替代絕大部分實驗,節約成本和減少研發周期。因此,訓練的數據集借助于有限元分析軟件,建立永磁同步電機模型,在不同參數下采集數據,得到數據樣本集。
研究對象為3個不同的永磁同步電機,并且選取相同的結構參數,對3個電機依次編號。
電機1選取日本Toyota混合動力轎車中的Prius 2010電機[37],Prius 2010電機的二維模型,如圖3所示,結構為48槽8極數,內置V型永磁體,單層繞組。

圖3 Prius 2010電機的二維模型
電機2選取的日本Toyota混合動力轎車中的Prius 2004電機[38],Prius 2004電機的二維模型,如圖4所示,電機1是在電機2的基礎上優化的,最主要區別是電機1的轉子中一部分是空心的,因此與電機1結構差異不大,結構為48槽8極數,內置V型永磁體,單層繞組。

圖4 Prius 2004電機的二維模型
電機3選取實驗室中實際電機,如圖5所示,結構為36槽6極,內置一字型永磁體,雙層繞組,電機3結構在極對數、槽數、繞組等方面與前兩電機差距較大。

圖5 實驗室中實際電機模型
在永磁同步電機有限元模型中選取6個輸入變量,分別為定子槽口寬度、永磁鐵寬度、永磁鐵厚度、槽高、氣隙長度、極弧系數。選取的變量均是影響電機性能相對重要的參數,也是優化的重點,各電機結構取值,如表2所示。選取電機效率和齒槽轉矩兩個性能參數作為預測性能參數。

表2 電機變量取值
案例驗證一:相似電機實驗結果與分析
為了驗證自學習方法在不同的數據集上的預測效果,電機1和電機2的結構較為相似。分別使用四種算法建立電機性能預測模型:LSTM、LSTM+PCA、LSTM+Attention、自學習算法。訓練集為電機1的設計參數和性能數據,測試集為電機2的設計參數和性能數據。對于特征遷移的自學習算法,電機1數據和電機2數分別作為源域數據和目標域數據。
對比實驗結果,如表3所示。加入PCA在降維過程中失去了部分高級特征,因此預測精確度略差,使用LSTM+Attention在測試集中效果是最好的,相對于測試集中最優的效果,使用自學習方法時,相似電機的齒槽轉矩MAPE值從8.68降低到3.07,即預測精確度提高了64%,效率MAPE值從4.93降低到1.51,即預測精確度提高了69%。自學習在不同數據集中的表現出良好的預測效果。

表3 相似電機預測實驗
相似的兩個電機齒槽轉矩、效率在不同模型下的真實值與預測值的對比,如圖6和圖7所示。訓練集效果最好,測試集效果雖然最差,但是預測趨勢與真實值接近。訓練集、自學習的預測趨勢與真實值一致,并且預測值逐漸逼近真實值,有較高的預測精確度。

圖6 齒槽轉矩的真實值與預測值

圖7 效率的真實值與預測值
案例驗證二:差異電機實驗結果與分析
電機1和電機3的結構差異較大。分別使用4種算法建立電機性能預測模型:LSTM、LSTM+PCA、LSTM+Attention、自學習算法。訓練集為電機1的設計參數和性能數據,測試集電機3的設計參數和性能數據。對于特征遷移的自學習算法,電機1和電機3分別作為源域和目標域。對比實驗結果,如表4所示。

表4 差異電機預測實驗
將LSTM模型用到測試集中,發現預測質量會有一個明顯的下降,并且驗證集齒槽轉矩部分的MAPE值大于100%,證明此模型已無法使用。數據差異越大,模型通用性越差,即數據差異越大,預測效果越差。
對于測試集LSTM+Attention模型,使用自學習方法時,相似電機的齒槽轉矩MAPE值從134.83下降到23.72,即預測精確度提高了80%,效率MAPE值從29.42下降到5.70,即預測精確度提高了82%。當使用特征遷移的自學習算法時,可以明顯的看出,即使應用在分布不同的數據集上,自學習方法也能得到一個很好的預測值,解決了在差異電機設計過程中數據特征遷移難的問題。
電機1和電機3差異較大,其電機齒槽轉矩、效率在不同模型下的真實值與預測值的對比圖,如圖8和圖9所示。

圖8 齒槽轉矩的真實值與預測值

圖9 效率的真實值與預測值
訓練集效果最好,測試集效果最差,LSTM模型已無法得出預測趨勢和預測值。自學習的預測趨勢和預測值逐漸逼近真實值,自學習在處理差異較大的數據時表現出良好的預測性能。
在電機設計初期,僅能得到很少的樣本數據,因此探索標簽數據量對預測結果十分必要。選取不同的目標域標簽數據占比,其實驗結果,如表5所示。

表5 樣本標簽數量對結果的影響
根據表5的實驗結果,目標域的標簽數據越多,特征提取時擬合程度更高,預測效果更準。當標簽數據在40%時,在齒槽轉矩和效率上的預測精確度已經達到了誤差要求。數據的累積對模型的預測精確度有很大的提升,因此在長期的使用過程中,通過數據的不斷積累可提升模型的預測精確度或者對于新的電機問題的適應能力。
使用有限元軟件計算和使用自學習方法預測1000個數據時的所用時間對比,實驗結果,如表6所示。用有限元建立電機模型仿真花費了大量的時間和精力,使用領域自適應模型可以大大降低計算工作量,節省了時間成本。如果有限元模擬仿真采用三維模型,和自學習算法相比,計算耗時將進一步拉開差距。

表6 預測所用時間對比
本文提出了基于特征遷移的自學習方法,用于不同的電機設計研究,經案例驗證得到如下結論:
1)自學習方法可以實現跨領域的學習,將不同分布的源域和目標域數據映射到公共空間提取特征,解決了不同類型電機設計過程中數據特征遷移難的問題。
2)在計算初期,使用自學習方法對電機性能快速驗證,得到初步的性能值再進行分析,可以大幅度降低有限元的樣本計算量和時間成本。
3)通過歷史數據的不斷累積,可以增加樣本標簽數量,從而可以得到更精確的預測值,實現最佳的自學習效果,將在電機的智能設計中發揮重要的作用。