孫鵬翔,畢 利,王俊杰
(寧夏大學 信息工程學院,銀川 750021)
“碳中和”工作被列為我國重點任務之一,作為清潔能源之一的太陽能資源具有極大的開發(fā)潛力。目前,光伏發(fā)電已經成為我國新能源開發(fā)的重點扶持項目,其中西北地區(qū)的光伏發(fā)電占比較大。然而西北地區(qū)存在土地沙化且常年多風的情況,導致常年風沙、揚塵天氣居多;同時,該地區(qū)雨水較少,沙塵積累在光伏板表面的情況較多。積灰對光伏板的輸出功率影響較大[1],且光伏板表面溫度在積灰狀態(tài)下比清潔狀態(tài)高,當局部積灰過大時,容易形成熱斑,導致部件故障。目前,識別光伏板積灰程度主要依賴于光伏電站現場運維人員通過個人觀測,依據運維經驗來定性積灰程度。該方法過度依賴人工,取決于運維人員的個人素質,存在準確性、實時性較差的問題,難以滿足分布式光伏發(fā)電系統(tǒng)智能運維和組件健康管理的發(fā)展需求。
針對光伏板積灰程度定性與識別的問題,國內外學者展開了多方面的研究。Saidan 等[2]研究表明,暴露在自然環(huán)境下的光伏板,當積灰密度達到0.64 g/m2時輸出功率降低14.26%。范思遠等[3]通過多組對照實驗得出積灰對光伏組件能量輸出具有明顯抑制作用,光伏板發(fā)電量與積灰程度呈現指數型衰減。牛海明等[4]提出光伏板發(fā)電效率與積灰密度呈線性關系,相對透光率與積灰密度呈對數關系,為光伏板積灰程度定性提供了理論依據。趙波等[5]提出一種電池板積灰狀態(tài)檢測方法,構建了電功率損失和積灰時間變化的漸進型預測模型,從電功率損失的角度對光伏板積程度進行了分析;然而實際應用中,不同光伏板存在差異,本身的電功率損失不同,該方法泛化性較弱。吳春華等[6]提出一種不均勻積灰檢測算法,并結合遺傳算法優(yōu)化控制策略,求解不均勻積灰情況下的光伏板發(fā)電效率的最大優(yōu)化。周曉明等[7]建立了反射光強度與光伏板清潔度的關系,通過反射光強度分析光伏板積灰程度,最后設計并實現了光反射光伏板清潔度檢測儀,該方法成本開銷較大。綜上所述,傳統(tǒng)方法通過對發(fā)電效率損失和反射光強度進行建模,進而分析光伏板積灰程度;然而,對某個光伏板的建模分析很難推廣到所有光伏板,泛化性較弱;同時,采集反射光強度的成本開銷較大,不適用于多電站光伏板數量較多的真實運維場景。
現場調研表明,積灰導致光伏板顏色、紋理發(fā)生顯著變化,人工觀測光伏板積灰圖像可初步判定發(fā)電效率損失,為采用圖像識別算法來判定光伏板積灰程度提供了思路[8]。傳統(tǒng)圖像識別技術依賴人工提取數據特征,難以訓練大規(guī)模樣本;以卷積神經網絡為代表的深度學習圖像識別算法,通過自動特征提取和自我學習特征訓練模型,效率較高[9]。
近年來,基于深度學習的圖像識別算法在電力設備狀態(tài)[10]與缺陷[11]檢測領域廣泛應用。趙波等[8]由圖像識別展開研究,提出了基于卷積神經網絡的光伏板積灰狀態(tài)識別模型,采用ResNet50(Residual Network 50),準確率達0.81,在實際運維中保證了實時性且開銷較小,但識別準確率難以滿足實際運維的需求。因此,本文提出一種改進的深度殘差網絡光伏板積灰識別模型,主要工作如下:
1)構建多電站不同光伏板不同積灰程度的數據集,保證模型的泛化能力。
2)通過分解卷積提高模型精度的同時減少了Conv1 模塊的參數;對下采樣進行微調,有效避免了特征提取過程中的信息丟失,進而增強了模型的表征能力。
3)針對光伏板積灰分布不均、模型關注區(qū)域存在偏差的問題,融合坐標注意力(Coordinate Attention,CA)機制[12],增強模型對積灰區(qū)域的關注。采用監(jiān)督對比學習損失函數,有效提高了光伏板積灰程度識別模型的準確率。
ResNet 通過堆疊殘差結構,有效解決了網絡過深導致的“退化”問題[13]。次代殘差網絡(NeXt Residual Network,ResNeXt)[14]與ResNet 相比,通過平行堆疊拓撲結構替代原始三層卷積的block,在不增加參數量級的情況下,提高了模型準確率。ResNeXt 與ResNet 殘差結構對比如圖1 所示。圖1(b)中的group為平行拓撲結構堆疊數量。
圖1 ResNet與ResNeXt殘差結構對比Fig.1 Residual structure comparison of ResNet and ResNeXt
較大卷積核進行卷積分解,由小卷積核替代,可以加深網絡層數,有效提高網絡精度[15];同時,卷積分解后,相同感受野情況下,參數更少,計算復雜度更低。針對ResNeXt 的Conv1模塊中的大卷積核,為保持輸出特征圖大小相同,采用3組3×3卷積的級聯替換7×7卷積,如圖2所示。
圖2 Conv1模塊改進Fig.2 Conv1 module improvement
ResNeXt 的基礎block 依次為1×1 卷積、3×3 卷積、1×1 卷積;設置首個1×1 卷積的步長為2,實現下采樣,如圖3(a)所示。
圖3 下采樣改進Fig.3 Down-sampling improvement
事實上,在第一個卷積進行下采樣時,存在信息丟失的問題。假設5×5 的特征圖經過步長為2、大小為1×1 卷積,將丟失3/5 的信息,如圖4 所示。淺灰色部分為參與卷積運算的信息,白色均不參與。針對1×1 卷積下采樣造成信息丟失的問題,對下采樣進行微調,如圖3(b)所示,在3×3 卷積設置步長為2 進行下采樣,防止信息丟失。
圖4 1×1卷積下采樣Fig.4 1×1 convolutional down-sampling
在圖像特征提取中,注意力機制可以增強特征選擇。基于位置的注意力機制有兩種作用方式:一種是通過大尺度核卷積,如SE(Squeeze Excitation)[16]和CBAM(Convolutional Block Attention Module)[17]等;另一種是分解特征圖像,如坐標注意力(CA)[12]。
與大尺度核卷積操作獲得空間信息的方式相比,分解特征圖像更能充分利用捕獲到的位置信息,準確捕獲感興趣的區(qū)域,且有效捕捉通道間的關系。CA 機制模塊整體流程如圖5 所示,通過二維全局池操作將特征圖像分解為兩個一維編碼,有效地捕獲位置信息和通道關系,分析出目標的具體位置,輸出相關特征值。
圖5 CA機制模塊Fig.5 CA mechanism module
CA 機制結構通過二維編碼獲得精確的位置信息,包含了坐標信息嵌入和坐標注意力生成2 步操作,能有效增強深度網絡的性能。CA 機制的處理過程中首先分別沿水平和垂直兩個方向對每個通道進行編碼,計算過程為:
其中:xc為第c通道的特征圖。得到一對大小為c×1×w和c×h×1 的方向感知特征圖,具體為:
其中:zh為高度為h所有通道的輸出,zw為寬度為w所有通道的輸出,[zh,zw]為沿空間維度繼續(xù)結合操作,δ為非線性激活函數,f為對空間信息在水平方向和垂直方向進行編碼的中間特征映射。然后沿著水平和垂直兩個維度分解為f h和f w,并使用1×1 卷積變換函數Fh和Fw分別將f h和f w變換為具有相同通道數的張量,計算過程為:
其中:σ為Sigmoid 激活函數。最后對輸出的gh和gw進行擴展,作為垂直、水平注意力的維度權重,輸出的特征圖像為:
其中:和是將gh和gw擴展,作為垂直、水平注意力的維度權重;xc為第c通道的特征圖;yc(i,j)為輸出的注意力加權后的圖像。
隨著對比學習的應用發(fā)展,自監(jiān)督的表征學習也得到了顯著發(fā)展。在自監(jiān)督學習過程中,正樣本圖像通常是一個錨節(jié)點的數據增強,負樣本圖像通常從最小批次的訓練中選取,標簽在這過程中是不可用的。
與自監(jiān)督的方法相反,監(jiān)督的方法可以使用標記數據從現有的同類示例中生成正樣本圖像,與通常僅僅增加錨節(jié)點所能達到的效果相比,提供了更多的預訓練可變性。為彌補自監(jiān)督學習和監(jiān)督學習之間的差距,使對比學習能夠應用于監(jiān)督環(huán) 境,Khosla 等[18]提出了 監(jiān)督對 比(Supervised Contrastive,SupCon)學習損失函數,訓練過程如圖6 所示。
圖6 監(jiān)督對比學習損失函數Fig.6 SupCon learning loss function
為簡化正樣本圖像選擇的過程,SupCon 利用標記數據將來自同一類別的所有樣本作為正的樣本集與來自同一個批次剩余樣本的負的樣本集進行對比學習。監(jiān)督對比學習損失函數由3 個主要結構組成:數據增廣模塊、編碼器模塊和映射模塊。數據增廣模塊Aug(·)是對每個輸入樣本x隨機生成兩個增廣樣本;編碼器模塊Enc(·)是將x和映射為表征向量r=Enc(x)∈RDE,并將r歸一化到RDE(DE=2 048)的單位球面上;映射模塊Proj(·)是將r映射為向量Z=Proj(r)∈RDP(DP=128)。監(jiān)督對比學習損失函數的表達式為:
本文改進后的整體網絡結構如圖7 所示,由注意力(Attention)模塊、Conv1、Conv2、Conv3、Conv4、Conv5 模塊、全連接層以及Softmax 構成。
圖7 改進后的整體網絡結構Fig.7 Improved overall network structure
注意力模塊由平均池化、單個1×1 卷積變換、兩個1×1 卷積變換及Sigmoid 模塊組成,輸出結果作為Attention weights進行加權。
對原始ResNeXt 的Conv1 模塊中大卷積核進行分解,采用3 組3×3 卷積的串聯替代原始7×7 卷積;Conv2、Conv3、Conv4、Conv5 均由1×1 卷積、3×3 卷積、1×1 卷積組成,且平行拓撲結構數量為32。其中:Conv2 模塊堆疊3 次,Conv3 模塊堆疊4 次,Conv4 模塊堆疊6 次,Conv5 模塊堆疊3 次。對原始ResNeXt 結構中的下采樣進行微調,原始下采樣在Conv2、Conv3、Conv4、Conv5 模塊中的首個1×1 卷積進行,調整至Conv2、Conv3、Conv4、Conv5 模塊中的3×3 卷積進行下采樣。網絡層參數設置如表1 所示。
表1 網絡參數設置Tab.1 Network parameter setting
表1 中,Attention 模塊的平均池化采用自適應平均池化(Adaptive Average Pooling)。與常用平均池化不同,表1 中參數為池化后的輸出大?。籹ame 表示通過補零操作使輸出尺寸與輸入尺寸一致,stride 為卷積步長。
針對光伏板積灰程度定量問題,參考文獻[19],根據光伏板傳感器采集的功率、溫度數據計算發(fā)電效率損失率。積灰程度與光伏板額定溫度下發(fā)電效率損失率關系如下:
式(8)中:α為光伏板額定溫度的發(fā)電效率,αd為積灰狀態(tài)額定溫度的發(fā)電效率,αp為不同積灰程度下的發(fā)電效率損失率。式(9)中:Pmax為額定溫度、輻照度下的最大輸出功率;Tb為光伏板實時溫度,Ts為額定溫度;R為光伏板功率溫度系數;Ai為光伏板面積;Fn為輻照度。
根據發(fā)電效率損失率均值,劃分4 個等級的光伏板積灰程度,如圖8 所示。
圖8 光伏板積灰程度分類Fig.8 Classification of dust accumulation degree of photovoltaic panel
圖8 中,發(fā)電效率損失率αp≤8 為干凈,8<αp≤12 為輕度積灰,12<αp≤16 為中度積灰,αp>16 為重度積灰。
實驗數據來源于寧夏中科嘉業(yè)新能源研究院,采集2021年3—7 月光伏板不同程度積灰圖像,采集手段包括電站攝像頭拍攝和運維人員人工拍攝。采集多個電站數據,過濾因模糊、過暗等因素形成的無效圖像;同時,為保證樣本分布均衡,根據積灰程度定量分析結果,篩選出4 類共計800 幅圖像,保持每個類別樣本數相同。
由于實驗數據較少,為防止過擬合現象,采用隨機縮放、隨機旋轉、隨機裁剪、平移變換、增強或減弱對比度、高斯噪聲進行圖像增廣,如圖9 所示。
圖9 圖像增廣Fig.9 Image augmentation
經圖像增廣后,光伏板積灰數據集共計22 400 幅,每個類別5 600 幅,可有效防止過擬合現象發(fā)生。
訓練集和測試集按照8∶2 劃分,實驗采用Ubuntu 操作系統(tǒng),Intel i5-6600 處理器,16 GB 內 存,GPU 為NVIDIA RTX2080 平臺,程序基于PyTorch1.8.0 環(huán)境采用Python 語言編寫。采用隨機梯度下降法,實驗中batch size 設置為16,表示每次迭代輸入到模型的樣本數量為16;學習率初始化為0.01,最小學習率為0.000 1,最大迭代次數為800,學習率更新策略為預熱階段(warm-up)采用一維線性插值法,預熱階段后采用余弦退火算法[20],學習率更新的偽代碼如算法1所示。
算法1 學習率更新算法。
為驗證網絡結構改進對模型性能的影響,分別設置分解卷積和微調下采樣的對照實驗,分解卷積實驗結果如表2 所示,微調下采樣實驗結果如表3 所示。
表2 中,原始Conv1 為7×7 卷積,借鑒Inception 系列設計思路,采用3 組3×3 卷積的級聯替換7×7 卷積。與原始Conv1相比,分解卷積Conv1 參數減少81%,識別精度提升了1.2 個百分點,有效提高識別準確率的同時降低了計算復雜度。
表2 分解卷積的實驗結果Tab.2 Experimental results of decomposition convolution
表3 中,原始ResNeXt 在首個1×1 卷積進行下采樣,對下采樣進行微調,將原始首個1×1 卷積時下采樣調整為3×3 卷積時下采樣,有效避免特征提取過程中的信息丟失問題。與原始ResNeXt 相比,下采樣微調ResNeXt 的準確率提高了1.6 個百分點。
表3 下采樣微調實驗結果Tab.3 Experimental results of down-sampling fine-tuning
為驗證注意力機制對模型的影響,在網絡結構的不同位置嵌入注意力模塊,如圖10 所示。
圖10 不同位置嵌入注意力模塊Fig.10 Attention modules embedded in different positions
圖10 中,(a)為原始模型結構,(b)~(f)分別為不同位置嵌入注意力模塊,實驗結果如表4。
表4 中,針對不同位置嵌入注意力模塊,模型識別準確率有不同程度提升,其中,ResNeXt-CA(b)模型效果最佳,與原始ResNeXt 相比,ResNeXt-CA(b)的準確率提升了2.3 個百分點。
表4 不同位置嵌入CA注意力模塊的實驗結果Tab.4 Experimental results of embedding CA attention module in different positions
為進一步探究CA 機制對模型性能的影響,采用類激活可視化(Gradient-Class Activation Map,Grad-CAM)[21-22]的方法對模型的識別性能進行驗證。該方法通過熱力圖,可視化模型識別圖像類別的依據,可清晰地說明類激活圖與識別分類的映射關系。
不同位置嵌入CA 機制的熱圖對比如圖11 所示,其中,熱圖中高亮的區(qū)域為預測類別的相關區(qū)域。
圖11 中,在光伏板積灰分布不均的場景下,原始ResNeXt 模型對積灰區(qū)域的關注存在偏差。針對這一問題,融合CA 后,關注偏差問題得到改善;同時,不同位置嵌入CA,對積灰區(qū)域的關注表現存在差異,其中,ResNeXt-CA(b)相較于其他模型對積灰區(qū)域更關注,進而模型對圖像的識別更精準。
圖11 不同位置嵌入CA注意力熱圖Fig.11 Heat maps of CA attention embedded in different positions
為驗證本文采用的CA 機制優(yōu)于傳統(tǒng)注意力機制,設置對照實驗,分別與SE 注意力[16]和CBAM[17]注意力對比,實驗結果如表5 所示。
表5 中,針對嵌入不同注意力機制,模型準確率有不同程度提升,其中,本文采用的ResNeXt-CA(b)效果最佳,與ResNeXt-CBAM 相比,準確率提升了0.7 個百分點,達85.8%。
表5 不同注意力機制的實驗結果 單位:%Tab.5 Experimental results of different attention mechanisms unit:%
為驗證監(jiān)督對比學習損失函數對模型的影響,設置對照實驗,實驗結果如表6 所示,與采用交叉熵損失函數的ResNeXt 模型相比,采用SupCon 損失函數的ResNeXt 模型識別準確率提高了2.1 個百分點。
表6 SupCon學習損失函數的實驗結果 單位:%Tab.6 Experimental results of SupCon learning loss function unit:%
為驗證改進后的ResNeXt50 模型,在光伏板積灰程度識別中優(yōu)于常用的深度學習算法和傳統(tǒng)識別算法,設置多組對照實驗,分別與隨機森林、K近鄰(K-Nearest Neighbors,KNN)、支持向量機(Support Vector Machine,SVM)、ResNeXt50[14]、ResNet50[13]、MobileNetV3[23]、InceptionV3[15]和Inception-ResNetV2[24]進行對比,實驗結果如表7 所示。
表7 中,與原始ResNeXt50 相比,改進后的ResNeXt50 識別準確率提升了7.2 個百分點,與Inception-ResNetV2、InceptionV3、MobileNetV3、ResNet50 相比,分別提升了4.8 個百分點、6.5 個百分點、6.8 個百分點和8.9 個百分點。在光伏板積灰程度識別中,優(yōu)于大部分主流模型,基本滿足光伏電站智能運維的需求。
表7 不同模型的實驗結果 單位:%Tab.7 Experimental results of different models unit:%
相較于原始ResNeXt50,改進后的ResNeXt50 模型參數量增加0.5 MB,單張圖像的推理時間增加0.2 ms,模型訓練時間增加1.3 min。兩個個模型的消耗對比如表8 所示。
表8 模型消耗對比Tab.8 Comparison of model consumption
針對光伏板積灰程度識別準確率較低的問題,本文在ResNeXt50 的基礎上進行改進,通過分解卷積和微調下采樣增強模型表征能力;同時,針對光伏板積灰分布不均,模型關注區(qū)域存在偏差,融合CA 機制,增強模型對積灰區(qū)域的關注表示;最后采用監(jiān)督對比學習損失函數,提升了識別的準確性。
目前,受現場環(huán)境影響,采集的部分光伏板積灰圖像質量較差,進而導致識別精度降低,后續(xù)研究將通過去噪、去霧等圖像處理技術提高采集圖像的質量,提升模型在復雜環(huán)境下的識別準確率。