





摘 要:本文針對大型機械設備潤滑油磨粒分析識別領域中自動化識別難度大、準確率不高以及難以實際應用等問題,基于人工智能模型框架(PyTorch-Base-Trainer,PBT)進行磨粒形狀自動分析與識別研究。提取不同時期與不同類型的典型磨粒圖像作為訓練模型的數據集,基于PBT構建磨粒形狀自動化分析與識別的卷積神經網絡模型,反復訓練模型,利用測試集數據檢測模型性能。試驗結果表明,基于PBT構建的磨粒形狀自動化識別模型異常磨粒最佳識別率為99.3%。本研究使人工智能與深度學習技術應用于磨粒分析識別領域,為磨粒分析自動化提供參考。
關鍵詞:磨粒分析;人工智能;PBT框架
中圖分類號:TP 181" " " " " " " 文獻標志碼:A
潤滑油磨粒是存在于潤滑油中的微小磨損顆粒,通常來自機械設備在運行過程中金屬表面的磨損。根據磨粒類型、大小、形狀和數量,能夠得到關于設備磨損狀況和故障模式的重要信息,因此磨粒對設備健康監測、預防性維護以及延長設備壽命的作用十分重要[1-4]。
以前分析潤滑油中的磨粒的主要方法是由經驗豐富的專家利用肉眼識別,不僅費時、成本高,而且分析結果易受主觀影響,限制了其在行業中的應用范圍[4]。隨著智能圖像識別技術的快速發展,人工智能在圖像識別方面優勢明顯[5]。
磨粒分析的進展經歷了多個階段:在初期階段,主要利用人工微觀檢查,雖然該方法具備專業性,但是耗時且準確率有限。在技術進步階段,20世紀70年代鐵譜技術、掃描電子顯微鏡(SEM)和能譜分析技術出現,提升了分析精度[6]。在自動化與數字化階段,計算機視覺和圖像處理技術的應用初步使分析數字化[7],但是還面臨數據多樣性和復雜性的挑戰,高級的分析設備和技術需要較高的投資成本以及高級專業人員。
2006年深度學習技術興起,卷積神經網絡(Convolutional Neural Networks,CNN)的應用為圖像分析帶來了巨大變革[6]。在提高磨粒識別的效率和準確性方面,人工智能大模型技術取得了突破,減少了對專業技術人員的依賴,能夠處理復雜數據,識別多樣化磨粒特征。
1 磨粒人工智能識別模型的構建
本文將探討基于PyTorch的人工智能模型框架在磨粒自動化分析和識別中的應用,利用先進技術對磨粒進行高效識別,為大型機械設備的預測性維護提供強大的技術支持。
1.1 人工智能識別框架
在本研究中,采用基于PyTorch的人工智能模型框架的圖像分類管道,即人工智能模型框架(PyTorch Base Trainer,PBT)。PBT不僅優化了訓練流程,降低了模型開發的復雜程度,還利用其分布式訓練的能力顯著提升了訓練效率。PBT基礎訓練庫定義了一個基類(Base),所有訓練引擎(Engine)以及回調函數(Callback)都會繼承基類。Engine類完成訓練的迭代方法(例如on_batch_begin、on_batch_end),用戶在回調函數的過程中可以對迭代方法進行輸入/輸出處理。
PBT是1個針對深度學習訓練流程優化的框架,改進了老一代Keras(Keras是一種高層神經網絡,也是構建和訓練深度學習模型的有效工具。其在TensorFlow、Microsoft Cognitive Toolkit和Theano等應用程序編程接口(Application Programming Interface,API)基礎上提供了一種簡化接口,使深度學習模型的開發更加直觀、快速。其支持快速試驗,能夠從理念快速轉換為試驗結果)框架,在分布式訓練方面表現卓越。利用PyTorch的分布式數據并行(Distributed" Data Parallelism,DDP)功能,PBT在每個進程中復制模型并分配數據批次,完成高效的并行訓練。該方法采用梯度平均技術加快訓練過程,并保證模型副本間的一致性,顯著提升了訓練效率,與老一代框架模型相比,可縮減80%的訓練時間。PBT的設計理念是提供最大的配置靈活性,以適應不同的研究需求和環境。其支持命令行參數和YAML文件,使用者能夠方便地調整設置。PBT的Model Checkpoint和自定義回調函數功能使模型能夠得到保存并進行監控,提升了試驗的可操作性和監控效率。
此外,PBT集成了NNI模型剪枝工具,支持多種剪枝策略以提高模型運行效率。這個特性在處理大規模數據集和復雜模型的過程中十分重要,能夠有效減少模型的參數數量,減少在運行過程中的內存,保持模型性能。為使深度學習在不同領域廣泛應用,PBT還提供了一系列用于不同深度學習應用場景的通用庫,例如分類、檢測、分割和姿態估計,這些基于PBT的庫可快速構建和部署模型,無論是在GPU、CPU中,還是在個人電腦中均能高效運行。
綜上所述,PBT提供了1個高效、靈活且易于使用的深度學習訓練框架,不僅簡化了模型開發流程,還提供了完整的分布式訓練解決方案和性能優化工具,促進深度學習技術的研究和應用。在試驗中PBT框架的這些特性不僅加快了試驗進程,還提高了識別的準確度,展現了深度學習技術在傳統工業領域應用的巨大潛力。
1.2 模型構建的核心代碼
PBT提供了豐富的API函數,不同的模型構建方式會影響磨粒形狀自動化識別的準確度和模型訓練速度,主要影響因素是初始學習率配置和多GPU并行配置。在本試驗中模型配置的初始學習率為0.05,權重衰減系數設為5×10-4,這有助于模型在初期快速收斂,核心參數配置從YAML文件讀取超參數并更新配置,模型構建的核心代碼如下。
def build_model(self, cfg, **kwargs):
\"\"\"build_model\"\"\"
# 模型構建,配置初始學習率
self.logger.info(\"build_model,net_type:{}\".format(cfg.net_type))
model = build_models.get_models(net_type=cfg.net_type,input_size= cfg.input_size,width_mult=cfg.width_mult,num_classes=cfg.num_classes, pretrained=cfg.pretrained)
cfg = setup_config.parser_config(parser.parse_args(1)=0.05, parser.parse_args(2)=5e-4,cfg_updata= True)
# 構建模型并行化,如果配置了分布式訓練,則該模型在多個GPU上并行運行。
model = self.build_model_parallel(model, cfg.gpu_
id,distributed= cfg.distributed)return model
2 人工智能識別模型的訓練
2.1 試驗數據集的構建
1個涵蓋了廣泛譜片圖像的多元化數據集是本研究的基礎。從《磨粒圖譜》(安德森編著)和《磨粒分析》(楊其明著)中提取圖像,基于這些圖像建立1個包括3個磨損時期和6種不同類型磨粒的基礎圖片庫。在每張圖片中都有詳細的標注信息,例如形成原因、特征形貌和來源。根據機械磨損的時期不同,將磨粒圖像劃分為3個類別(如圖1所示),分別為類別一(磨合時期磨粒)、類別二(正常時期磨粒)和類別三(異常時期磨粒),分別對應機械磨損期的前、中和后期[8-9]。
為了擴大數據集并滿足神經網絡的學習需求,本文應用一系列數據增強技術,例如隨機裁剪、翻轉以及調整對比度、亮度和飽和度,在不增加原始數據的基礎上生成更多有效數據。使用數據增強技術處理后的異常磨損圖像樣本如圖2所示。
在進行模型訓練的過程中,不同來源的磨粒圖像的尺寸和分辨率的異質性可能會對訓練的一致性和效率造成負面影響。將所有圖像調整至統一尺寸,并將圖像統一縮放至256 ppi×256 ppi,既能保證數據輸入的一致性,又能降低所需的計算量來加速訓練過程。與其他2個時期相比,異常磨損時期的磨粒種類更多、更復雜,因此用于異常磨損的訓練集數據更多。本次試驗的磨粒圖像樣本數見表1,在訓練過程中從測試集隨機抽取25%的樣本作為驗證集。
2.2 訓練參數的配置
在試驗過程中模型訓練使用相同的超參數配置,在模型訓練過程中采用批量訓練方法,使用Multi-StepLR學習率調整策略。與只能固定步長(step)衰減的StepLR學習率調整策略相比,Multi-StepLR可以設置每一個步長的大小,使學習率滿足多指定步長衰減。當訓練輪次(epoch)符合設定值時,調整學習率。Multi-StepLR學習率調整策略如公式(1)所示。
(1)
式中:lrepoch為當前周期的學習率;Gmma為學習率;lrepoch-1為上一個訓練周期的學習率;milestones為1個包括訓練索引的列表。
Multi-StepLR的學習曲線如圖3所示,該學習曲線魯棒性好、收斂快。
在本磨粒圖像人工智能識別模型的訓練過程中,優化器采用了小批量隨機梯度下降算法(mini-SGD),設置學習率為0.05,批量(batch)大小為32,訓練30個輪次,采用損失函數為優秀的CrossEntropyLoss函數,如公式(2)所示。
H(p,q)=-∑p(x)log(q(x)) " " " " (2)
式中:H(p,q)為交叉熵;x為神經網絡輸出值;p(x)為期望輸出的概率分布;q(x)為實際輸出的概率分布。
交叉熵描述實際輸出概率與期望輸出概率之間的差距,交叉熵的值越小,2個概率分布就越接近。在訓練過程中數據損失值平穩下降,訓練集與驗證集的準確率平穩上升至差距很小,訓練完成。
2.3 運行過程與結果分析
配置試驗參數后,即可進行模型訓練。PBT框架提供了最佳模型、次最佳模型和最近模型,使用同樣的試驗參數對這3個模型進行訓練,從中選擇識別率最高的模型。當PBT模型進行訓練時,訓練集和測試集識別準確率曲線如圖4所示。由圖4可知,隨著訓練周期迭代,訓練集的準確率穩步上升。測試集的準確率在迭代周期前期有一些波折,但是總體呈上升趨勢,收斂速度快,魯棒性好。訓練集和測試集損失值曲線如圖5所示。由圖5可知,訓練集的損失值穩步下降,訓練完成后穩定在0.1左右。驗證集的損失值在訓練前期急劇上升,隨后穩步下降,最后也穩定在0.1左右。訓練迭代后訓練集與測試集的損失值差距很小。綜上所述,PBT模型訓練后訓練集與測試集準確率和損失值差距很小,構建的磨粒圖像識別模型識別能力較強。
迭代訓練30個輪次后(訓練時間小于1 h)形成最佳模型、次最佳模型和最近模型3個模型,運用測試集進行測試,最佳模型性能卓越,異常磨粒最佳模型的識別率為99.3%,模型識別率見表2。
分別從3個類別的測試集中隨機抽取25%的樣本作為驗證集,評估磨粒圖像識別模型的性能。使用精確率(Accuracy)、召回率(Recall)以及F1值評估模型的性能。精確率反映了模型預測為正例的樣本中實際為正例樣本的比例,代表了模型的預測準確性和精確性。Accuracy的計算過程如公式(3)所示。
Accuracy=TP/(TP+FP) " "(3)
式中:TP為正確預測為正例的樣本數;FP為錯誤預測為正例而真正為負例的樣本數。
精確度指標越高,模型的預測效果越好。模型對3個類別的識別精確率都超過90%,平均值為95.43%,對類別異常時期的磨粒識別精確率接近100%,說明模型對磨粒圖像識別的預測效果優秀。
Recall衡量了模型正確識別出正樣本的比例。Recall的計算過程如公式(4)所示。
Recall=TP/(TP+FN)" " " " (4)
式中:FN為預測為負例而真正為正例的樣本數。
Recall反映了模型中所有正例樣本被正確識別的比例,Recall越高,模型檢測識別能力越好。模型對3個類別的磨粒識別Recall都在90%以上,平均值為95.24%,說明模型能夠識別正確樣本。
F1值綜合評價模型的性能,其計算過程如公式(5)所示。
F1=(2×Accuracy·Recall)/(Accuracy+Recall) (5)
模型性能評估見表3。模型對3個類別的磨粒識別F1值都超過90%,平均值為95.23%,總體準確率為95.24%,說明該模型可以識別3種類別的磨粒。
這個高性能的識別結果不僅證明了模型在磨粒形態識別任務方面的有效性,還展示了其在實際應用場景中的實用性。本文構建的模型能夠縮減磨粒判別時間,提高判別準確度。
3 結論
本文針對大型機械設備潤滑油磨粒分析識別領域中自動化識別難度大、準確率不高和難以實際應用等問題,基于PBT對磨粒形狀自動分析與識別進行研究。本文構建了磨粒圖像人工智能識別模型,對磨粒圖像形狀進行自動化識別。模型運行結果表明,訓練后的模型對不同時期的磨粒圖像均有優秀的識別能力,異常磨粒最佳識別率為99.3%。本文提出的PBT形狀識別模型為人工智能與深度學習技術應用于磨粒分析識別領域以及磨粒分析自動化提供了新思路。
參考文獻
[1]劉峰壁,任和.機械潤滑故障與油液分析(上)[M].廣州:華南理工大學出版社,2019.
[2]黃志堅.機械設備故障診斷與監測技術[M].北京:化學工業出版社,2020.
[3]錢勇武,張萌萌,吳同浦.齒輪箱潤滑油在線監測系統總體設計[J].機械制造與自動化,2021,50(3):207-209.
[4]YUAN C Q, PENG Z X, ZHOU X C, et al.The characterization"of wear transitions in sliding wear process contaminated with silica and iron powder[J]. Tribology International,2005,38(2):129-143.
[5]張順,龔怡宏,王進軍.深度卷積神經網絡的發展及其在計算機視覺領域的應用[J].計算機學報,2019(3):100-101.
[6]徐元強.數字同軸全息油液磨粒檢測技術的初步研究[D].濟南:山東大學,2010.
[7]范斌.基于油液監測技術的重型車輛綜合傳動磨損狀態研究[D].呼和浩特:內蒙古工業大學,2013.
[8]楊其明.磨粒分析:磨粒圖譜與鐵譜技術[M].北京:中國鐵道出版社,2002.
[9]安德森,金元生,楊其明.磨粒圖譜[M].北京:機械工業出版社,1987.
通信作者:鐘金鋼(1964—),男,江西新余人,暨南大學物理與光電工程學院教授,研究方向為計算成像、機器視覺。
電子郵箱:tzjg@jnu.edu.cn。
通信作者:張冠文(1964—)男,廣東東莞人,廣東省科學院測試分析研究所(中國廣州分析測試中心)教授級高級工程師,研究方向為科學儀器。
電子郵箱:dg-qiang@163.com。