本技術(shù)涉及故障診斷領域,尤其涉及一種根因診斷方法、根因診斷模型訓練方法以及裝置。
背景技術(shù):
1、隨著手機、電腦等智能設備越來越發(fā)達,越來越多的服務需要由智能設備控制。隨著設備數(shù)量的增多和設備復雜性的提升,如何對大量設備進行及時維護是一項新的挑戰(zhàn)。系統(tǒng)發(fā)生故障時,不及時或者不恰當?shù)奶幚矶伎赡軙o制造商帶來嚴重的聲譽損害。一般來說,系統(tǒng)的故障可以追溯到某個根本原因,這個根本原因會傳播直至發(fā)生可觀測的故障。開發(fā)人員需要確定故障的根本原因,進而確定對應的處理方式。
2、通常,當設備發(fā)生故障時,開發(fā)人員可以通過日志、trace等工具進行問題定位。但實際工作中,單個模塊故障可能會影響很多關聯(lián)組件,導致大量的告警日志。因此,如何高效地確定故障根因,成為亟待解決的問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種根因診斷方法,用于基于標注故障時間窗口的訓練數(shù)據(jù)訓練得到的根因診斷模型來進行根因診斷,降低人工參與成本,降低根因診斷的成本,提高根因診斷效率。
2、有鑒于此,第一方面,本技術(shù)提供一種根因診斷方法,包括:首先,獲取當前日志數(shù)據(jù),即故障設備在運行時記載的日志,其中包括故障設備產(chǎn)生故障過程中生成的日志;隨后,將當前日志數(shù)據(jù)作為的根因診斷模型的輸入,得到預測日志數(shù)據(jù),該預測日志數(shù)據(jù)可以用于指示故障時間窗口中的數(shù)據(jù),該故障時間窗口覆蓋故障設備產(chǎn)生故障的時間范圍,如該預測日志數(shù)據(jù)中可以包括表示故障時間窗口中的日志行或者指示故障時間窗口中的日志行的指示等。
3、本技術(shù)實施方式中,根因診斷模型可以識別故障根因?qū)臅r間窗口,因此可以通過根因診斷模型來從設備的日志數(shù)據(jù)中識別表示故障根因的日志行是所在的時間窗口,從而可以實現(xiàn)高效的根因診斷,使用戶可以根據(jù)故障根因?qū)臅r間窗口準更精準地確定設備的故障根因。
4、在一種可能的實施方式中,上述方法還可以包括:使用歷史日志數(shù)據(jù)對初始模型進行迭代訓練,得到根因診斷模型,根因診斷模型為使用歷史日志數(shù)據(jù)進行訓練得到,歷史日志數(shù)據(jù)中包括已標注至少一個時間窗口的日志數(shù)據(jù),每個時間窗口覆蓋至少一個設備產(chǎn)生故障的時間范圍;其中,使用歷史日志數(shù)據(jù)對根因診斷模型進行訓練中的任意一次訓練過程可以包括:將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù);根據(jù)當前次日志數(shù)據(jù)、當前次日志數(shù)據(jù)對應的時間窗口以及損失函數(shù)計算損失值;根據(jù)損失值更新上一次訓練得到的根因診斷模型,得到當前次訓練得到的根因診斷模型。
5、本技術(shù)實施方式中,標注日志數(shù)據(jù)中產(chǎn)生故障的時間窗口,相當于提供了弱標簽,利用標注了故障時間窗口的日志數(shù)據(jù)來訓練根因診斷模型,只需通過故障時間窗口來對訓練數(shù)據(jù)進行劃分,即可實現(xiàn)模型訓練,從而高效輸出故障根因日志行,無需人工參與,降低人工參與成本,降低根因診斷的成本以及提高根因診斷效率。因此,本技術(shù)實施方式中,在訓練根因診斷模型的過程中,采集到設備的日志數(shù)據(jù)后,可以在日志數(shù)據(jù)中標注故障時間窗口作為弱標簽來進行訓練,從而無需人工標注故障日志行,減少了人工標注成本。
6、在一種可能的實施方式中,根因診斷模型為基于多頭注意力機制得到的模型。因此,本技術(shù)實施方式中,通過基于多頭注意力機制的根因診斷模型,可以通過弱監(jiān)督學習的方式學習到訓練集中各個日志行的語義特征,以便于在進行根因診斷時可以準確地識別出表示故障根因的日志行。
7、在一種可能的實施方式中,根因診斷模型可以分為多個模塊,如多頭注意力層和感知層,多頭注意力層用于從輸入的數(shù)據(jù)中提取語義特征,感知層可以用于基于提取到的語義特征識別故障根因?qū)娜罩緮?shù)據(jù)。
8、在一種可能的實施方式中,前述的歷史日志數(shù)據(jù)可以分為根因日志數(shù)據(jù)和無關日志數(shù)據(jù),根因日志數(shù)據(jù)包括至少一個時間窗口的日志數(shù)據(jù),無關日志數(shù)據(jù)為故障設備未產(chǎn)生故障的時間范圍內(nèi)的數(shù)據(jù);前述的損失函數(shù)可以包括第一部分和第二部分,第一部分用于計算根因診斷模型針對根因日志數(shù)據(jù)的輸出對應的損失值,第二部分用于計算根因診斷模型針對無關日志數(shù)據(jù)的輸出對應的損失值。
9、本技術(shù)實施方式中,針對模型訓練中不同的輸入數(shù)據(jù)設置了不同的損失函數(shù)部分,從而可以適應性地學習到輸入樣本中的特征,如學習到潛在根因日志行和無關日志數(shù)據(jù)中包括的特征,從而使模型可以輸出包括故障根因的日志行的數(shù)據(jù)。
10、在一種可能的實施方式中,當根因診斷模型的輸入為根因日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重高于第二部分在損失函數(shù)中的權(quán)重;當根因診斷模型的輸入為無關日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重低于第二部分在損失函數(shù)中的權(quán)重。
11、本技術(shù)實施方式中,損失函數(shù)中針對不同類型輸入數(shù)據(jù)的部分對應的權(quán)重可以基于不同類型的輸入數(shù)據(jù)來動態(tài)確定,從而可以適應性地基于輸入數(shù)據(jù)的類型來計算出適配的損失值,從而基于適配的損失值來對模型進行反向更新,提高模型輸出準確度。
12、在一種可能的實施方式中,訓練數(shù)據(jù)中根因日志數(shù)據(jù)和無關日志數(shù)據(jù)之間的比例包括1:4。本技術(shù)實施方式中,可以預先設置根因日志數(shù)據(jù)和無關日志數(shù)據(jù)之間的比例為1:4,從而可以跟準確地分別學習到根因日志和無關日志對應的特征。
13、在一種可能的實施方式中,前述的任意一次迭代中將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù),可以包括:獲取歷史日志數(shù)據(jù)中的多個字符的多個表征以及對應的位置編碼,位置編碼用于表示對應的字符在歷史日志數(shù)據(jù)中的位置;將多個表征以及對應的位置編碼作為上一次訓練得到的根因診斷模型的輸入,輸出當前次預測日志數(shù)據(jù),當前次預測日志數(shù)據(jù)包括預測的設備故障根因?qū)娜罩緮?shù)據(jù)。
14、本技術(shù)實施方式中,在將日志數(shù)據(jù)中的字符的表征作為模型輸入時,還可以同時輸入位置編碼。通常,當根因診斷模型為基于多頭注意力機制構(gòu)建的模型時,可能不具備識別字符在日志中的位置的功能,因此可以將各個字符的表征以及對應的位置編碼作為模型輸入,從而使模型具備識別故障日志行在日志數(shù)據(jù)中的位置的功能。
15、在一種可能的實施方式中,前述的方法還可以包括:將預測日志數(shù)據(jù)映射至同一空間中,得到預測日志數(shù)據(jù)中的每條日志行與空間中原點之間的距離,該原點可以是構(gòu)建空間時設置的0點;根據(jù)每條日志行與原點之間的距離進行過濾,得到過濾后的預測日志數(shù)據(jù),過濾后的預測日志數(shù)據(jù)用于表示故障設備故障的根因。
16、可以理解為,可以通過根因診斷模型來預測可能是表示了設備故障根因的日志行,可以通過預測日志數(shù)據(jù)中各個日志行與原點之間的距離,來表示各個日志行表示故障根因的可能性。因此,本技術(shù)實施方式中,在基于根因診斷模型得到預測結(jié)果后,還可以基于各個日志行與原點之間的空間距離進一步對預測結(jié)果進行過濾,濾除無關日志行,從而得到更準確的表示故障根因的日志行,實現(xiàn)對故障根因日志行更準確的定位,提高預測準確性。
17、在一種可能的實施方式中,前述的根據(jù)每條日志行與原點之間的距離進行過濾,得到過濾后的預測日志數(shù)據(jù),可以包括:篩選預測日志數(shù)據(jù)中與原點之間的距離大于閾值的至少一條日志行,得到過濾后的預測日志數(shù)據(jù)。
18、因此,本技術(shù)實施方式中,可以濾除預測日志數(shù)據(jù)中與原點之間的距離大于閾值的日志行,從而可以濾除與故障根因無關的日志行,實現(xiàn)對故障根因日志行更準確的定位。
19、在一種可能的實施方式中,前述的方法還可以包括:對預測日志數(shù)據(jù)中每個時間窗口的日志數(shù)據(jù)進行聚類,得到至少一種組團,每種組團包括表示至少一種類型的故障根因的日志數(shù)據(jù);根據(jù)至少一種組團包括的日志行確定故障設備故障根因?qū)娜罩拘小?/p>
20、本技術(shù)實施方式中,還可以通過聚類的方式來對預測結(jié)果中的日志行進行分類,從而可以根據(jù)聚類結(jié)果來識別故障根因。即通過聚類的方式進行進一步過濾,濾除預測日志數(shù)據(jù)中與故障根因更無關的日志行。
21、在一種可能的實施方式中,前述的對預測日志數(shù)據(jù)中每個時間窗口的日志數(shù)據(jù)進行聚類,得到至少一種組團,可以包括:對預測日志數(shù)據(jù)中每個時間窗口的日志數(shù)據(jù)進行迭代聚類,得到至少一種聚類結(jié)果,每種聚類結(jié)果包括至少一個日志組件;移除每種聚類結(jié)果中未歸屬于日志組件中的日志行,得到至少一種組團。
22、本技術(shù)實施方式中,可以通過根因診斷模型來預測表示設備故障根因的日志行,不同日志行可能對應不同類型的服務或者組件等,因此可以通過聚類的方式濾除離散的日志行,從而實現(xiàn)對故障根因更準確的定位。
23、在一種可能的實施方式中,前述的方法還可以包括:獲取至少一個設備的日志數(shù)據(jù);標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
24、本技術(shù)實施方式中,在采集訓練數(shù)據(jù)時,可以通過標注日志數(shù)據(jù)中故障根因?qū)臅r間窗口的方式來形成弱標簽,從而通過標注的弱標簽來實現(xiàn)弱監(jiān)督訓練,可以降低人工維護成本,提高訓練成本。
25、在一種可能的實施方式中,前述的標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù),可以包括:根據(jù)至少一個設備上報故障的時刻標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù);或者,識別至少一個設備的日志數(shù)據(jù)中的預設關鍵字,根據(jù)識別的關鍵字對應的時間窗口標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
26、本技術(shù)實施方式中,在標注故障時間窗口時,可以通過故障上報時間或者關鍵字識別的方式來確定可能包括了故障根因的時間窗口,從而可以確定包括了故障根因的日志行,從而實現(xiàn)弱標簽。
27、第二方面,本技術(shù)提供一種根因診斷模型訓練方法,包括:首先,獲取歷史日志數(shù)據(jù),歷史日志數(shù)據(jù)中包括已標注至少一個時間窗口的日志數(shù)據(jù),每個時間窗口覆蓋至少一個設備產(chǎn)生故障的時間范圍;使用歷史日志數(shù)據(jù)對初始模型進行迭代訓練,得到根因診斷模型,根因診斷模型為基于多頭注意力機制得到的模型,根因診斷模型用于從輸入的日志數(shù)據(jù)中識別設備故障的根因?qū)娜罩緮?shù)據(jù)。
28、因此,本技術(shù)實施方式中,標注日志數(shù)據(jù)中產(chǎn)生故障的時間窗口,相當于提供了弱標簽,利用標注了故障時間窗口的日志數(shù)據(jù)來訓練根因診斷模型,只需通過故障時間窗口來對訓練數(shù)據(jù)進行劃分,即可實現(xiàn)模型訓練,從而高效輸出故障根因日志行,無需人工參與,降低人工參與成本,降低根因診斷的成本以及提高根因診斷效率。
29、在一種可能的實施方式中,前述的使用歷史日志數(shù)據(jù)對根因診斷模型進行訓練中的任意一次訓練過程可以包括:將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù);根據(jù)當前次日志數(shù)據(jù)、當前次日志數(shù)據(jù)對應的時間窗口以及損失函數(shù)計算損失值;根據(jù)損失值更新上一次訓練得到的根因診斷模型,得到當前次訓練得到的根因診斷模型。
30、因此,本技術(shù)實施方式中,在訓練根因診斷模型的過程中,采集到設備的日志數(shù)據(jù)后,可以在日志數(shù)據(jù)中標注故障時間窗口作為弱標簽來進行訓練,從而無需人工標注故障日志行,減少了人工標注成本。
31、在一種可能的實施方式中,前述的歷史日志數(shù)據(jù)分為根因日志數(shù)據(jù)和無關日志數(shù)據(jù),根因日志數(shù)據(jù)包括至少一個時間窗口的日志數(shù)據(jù),無關日志數(shù)據(jù)為故障設備未產(chǎn)生故障的時間范圍內(nèi)的數(shù)據(jù);損失函數(shù)包括第一部分和第二部分,第一部分用于計算根因診斷模型針對根因日志數(shù)據(jù)的輸出對應的損失值,第二部分用于計算根因診斷模型針對無關日志數(shù)據(jù)的輸出對應的損失值。
32、本技術(shù)實施方式中,針對模型訓練中不同的輸入數(shù)據(jù)設置了不同的損失函數(shù)部分,從而可以適應性地學習到輸入樣本中的特征,如學習到潛在根因日志行和無關日志數(shù)據(jù)中包括的特征,從而使模型可以輸出包括故障根因的日志行的數(shù)據(jù)。
33、在一種可能的實施方式中,前述的當根因診斷模型的輸入為根因日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重高于第二部分在損失函數(shù)中的權(quán)重;當根因診斷模型的輸入為無關日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重低于第二部分在損失函數(shù)中的權(quán)重。
34、本技術(shù)實施方式中,損失函數(shù)中針對不同類型輸入數(shù)據(jù)的部分對應的權(quán)重可以基于不同類型的輸入數(shù)據(jù)來動態(tài)確定,從而可以適應性地基于輸入數(shù)據(jù)的類型來計算出適配的損失值,從而基于適配的損失值來對模型進行反向更新,提高模型輸出準確度。
35、在一種可能的實施方式中,前述的根因日志數(shù)據(jù)和無關日志數(shù)據(jù)之間的比例包括1:4,從而可以跟準確地分別學習到根因日志和無關日志對應的特征。
36、在一種可能的實施方式中,前述的將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù),可以包括:獲取歷史日志數(shù)據(jù)中的多個字符的多個表征以及對應的位置編碼,位置編碼用于表示對應的字符在歷史日志數(shù)據(jù)中的位置;將多個表征以及對應的位置編碼作為上一次訓練得到的根因診斷模型的輸入,輸出當前次預測日志數(shù)據(jù),當前次預測日志數(shù)據(jù)包括預測的故障設備故障對應的日志數(shù)據(jù)。
37、本技術(shù)實施方式中,在將日志數(shù)據(jù)中的字符的表征作為模型輸入時,還可以同時輸入位置編碼。通常,當根因診斷模型為基于多頭注意力機制構(gòu)建的模型時,可能不具備識別字符在日志中的位置的功能,因此可以將各個字符的表征以及對應的位置編碼作為模型輸入,從而使模型具備識別故障日志行在日志數(shù)據(jù)中的位置的功能。
38、在一種可能的實施方式中,前述的獲取歷史日志數(shù)據(jù),可以包括:獲取至少一個設備的日志數(shù)據(jù);標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
39、本技術(shù)實施方式中,在采集訓練數(shù)據(jù)時,可以通過標注日志數(shù)據(jù)中故障根因?qū)臅r間窗口的方式來形成弱標簽,從而通過標注的弱標簽來實現(xiàn)弱監(jiān)督訓練,可以降低人工維護成本,提高訓練成本。
40、在一種可能的實施方式中,前述的標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù),可以包括:根據(jù)至少一個設備上報故障的時刻標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù);或者,識別至少一個設備的日志數(shù)據(jù)中的預設關鍵字,根據(jù)識別的關鍵字對應的時間窗口標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
41、本技術(shù)實施方式中,在標注故障時間窗口時,可以通過故障上報時間或者關鍵字識別的方式來確定可能包括了故障根因的時間窗口,從而可以確定包括了故障根因的日志行,從而實現(xiàn)弱標簽。
42、第三方面,本技術(shù)提供一種根因診斷裝置,包括:
43、獲取模塊,用于獲取當前日志數(shù)據(jù),當前日志數(shù)據(jù)包括故障設備產(chǎn)生故障過程中生成的日志;
44、處理模塊,用于將當前日志數(shù)據(jù)作為的根因診斷模型的輸入,得到預測日志數(shù)據(jù),該預測日志數(shù)據(jù)可以用于指示故障時間窗口中的數(shù)據(jù),該故障時間窗口覆蓋故障設備產(chǎn)生故障的時間范圍,如該預測日志數(shù)據(jù)包括表示故障時間窗口中的日志行或者指示故障時間窗口中的日志行的指示等。
45、其中,第三方面以及第三方面任一可選實施方式所實現(xiàn)的效果可以參閱前述第一方面或第一方面任一可選實施方式中的描述,此處不再贅述。
46、在一種可能的實施方式中,上述裝置還可以包括:訓練模塊,用于:使用歷史日志數(shù)據(jù)對初始模型進行迭代訓練,得到根因診斷模型,根因診斷模型為使用歷史日志數(shù)據(jù)進行訓練得到,歷史日志數(shù)據(jù)中包括已標注至少一個時間窗口的日志數(shù)據(jù),每個時間窗口覆蓋至少一個設備產(chǎn)生故障的時間范圍,根因診斷模型為基于多頭注意力機制得到的模型;其中,使用歷史日志數(shù)據(jù)對根因診斷模型進行訓練中的任意一次訓練過程包括:將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù);根據(jù)當前次日志數(shù)據(jù)、當前次日志數(shù)據(jù)對應的時間窗口以及損失函數(shù)計算損失值;根據(jù)損失值更新上一次訓練得到的根因診斷模型,得到當前次訓練得到的根因診斷模型。
47、在一種可能的實施方式中,根因診斷模型為基于多頭注意力機制得到的模型。
48、在一種可能的實施方式中,歷史日志數(shù)據(jù)分為根因日志數(shù)據(jù)和無關日志數(shù)據(jù),根因日志數(shù)據(jù)包括至少一個時間窗口的日志數(shù)據(jù),無關日志數(shù)據(jù)為故障設備未產(chǎn)生故障的時間范圍內(nèi)的數(shù)據(jù);損失函數(shù)包括第一部分和第二部分,第一部分用于計算根因診斷模型針對根因日志數(shù)據(jù)的輸出對應的損失值,第二部分用于計算根因診斷模型針對無關日志數(shù)據(jù)的輸出對應的損失值。
49、在一種可能的實施方式中,當根因診斷模型的輸入為根因日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重高于第二部分在損失函數(shù)中的權(quán)重;當根因診斷模型的輸入為無關日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重低于第二部分在損失函數(shù)中的權(quán)重。
50、在一種可能的實施方式中,根因日志數(shù)據(jù)和無關日志數(shù)據(jù)之間的比例包括1:4。
51、在一種可能的實施方式中,訓練模塊,具體可以用于:獲取歷史日志數(shù)據(jù)中的多個字符的多個表征以及對應的位置編碼,位置編碼用于表示對應的字符在歷史日志數(shù)據(jù)中的位置;將多個表征以及對應的位置編碼作為上一次訓練得到的根因診斷模型的輸入,輸出當前次預測日志數(shù)據(jù),當前次預測日志數(shù)據(jù)包括預測的設備故障根因?qū)娜罩緮?shù)據(jù)。
52、在一種可能的實施方式中,上述裝置還可以包括:過濾模塊,用于:將預測日志數(shù)據(jù)映射至同一空間中,得到預測日志數(shù)據(jù)中的每條日志行與空間中原點之間的距離;根據(jù)每條日志行與原點之間的距離進行過濾,得到過濾后的預測日志數(shù)據(jù),過濾后的預測日志數(shù)據(jù)用于表示故障設備故障的根因。
53、在一種可能的實施方式中,過濾模塊,用于篩選預測日志數(shù)據(jù)中與原點之間的距離大于閾值的至少一條日志行,得到過濾后的預測日志數(shù)據(jù)。
54、在一種可能的實施方式中,過濾模塊,還用于:對預測日志數(shù)據(jù)中每個時間窗口的日志數(shù)據(jù)進行聚類,得到至少一種組團,每種組團包括表示至少一種類型的故障根因的日志數(shù)據(jù);根據(jù)至少一種組團包括的日志行確定故障設備故障根因?qū)娜罩拘小?/p>
55、過濾模塊,具體用于:對預測日志數(shù)據(jù)中每個時間窗口的日志數(shù)據(jù)進行迭代聚類,得到至少一種聚類結(jié)果,每種聚類結(jié)果包括至少一個日志組件;移除每種聚類結(jié)果中未歸屬于日志組件中的日志行,得到至少一種組團。
56、在一種可能的實施方式中,裝置還包括:采集模塊,用于:獲取至少一個設備的日志數(shù)據(jù);標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
57、在一種可能的實施方式中,采集模塊,還用于:根據(jù)至少一個設備上報故障的時刻標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù);或者,識別至少一個設備的日志數(shù)據(jù)中的預設關鍵字,根據(jù)識別的關鍵字對應的時間窗口標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
58、第四方面,本技術(shù)提供一種訓練裝置,包括:
59、獲取模塊,用于獲取歷史日志數(shù)據(jù),歷史日志數(shù)據(jù)中包括已標注至少一個時間窗口的日志數(shù)據(jù),每個時間窗口覆蓋至少一個設備產(chǎn)生故障的時間范圍;
60、訓練模塊,用于使用歷史日志數(shù)據(jù)對初始模型進行迭代訓練,得到根因診斷模型,根因診斷模型為基于多頭注意力機制得到的模型,根因診斷模型用于從輸入的日志數(shù)據(jù)中識別設備故障的根因?qū)娜罩緮?shù)據(jù)。
61、第四方面以及第四方面任一可選實施方式所實現(xiàn)的效果可以參閱前述第二方面或第二方面任一可選實施方式的描述,此處不再贅述。
62、在一種可能的實施方式中,訓練模塊進行訓練中的任意一次訓練過程可以包括:將歷史日志數(shù)據(jù)作為上一次訓練得到的根因診斷模型的輸入,輸出當前次輸出日志數(shù)據(jù);根據(jù)當前次日志數(shù)據(jù)、當前次日志數(shù)據(jù)對應的時間窗口以及損失函數(shù)計算損失值;根據(jù)損失值更新上一次訓練得到的根因診斷模型,得到當前次訓練得到的根因診斷模型。
63、在一種可能的實施方式中,歷史日志數(shù)據(jù)分為根因日志數(shù)據(jù)和無關日志數(shù)據(jù),根因日志數(shù)據(jù)包括至少一個時間窗口的日志數(shù)據(jù),無關日志數(shù)據(jù)為故障設備未產(chǎn)生故障的時間范圍內(nèi)的數(shù)據(jù);損失函數(shù)包括第一部分和第二部分,第一部分用于計算根因診斷模型針對根因日志數(shù)據(jù)的輸出對應的損失值,第二部分用于計算根因診斷模型針對無關日志數(shù)據(jù)的輸出對應的損失值。
64、在一種可能的實施方式中,當根因診斷模型的輸入為根因日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重高于第二部分在損失函數(shù)中的權(quán)重;當根因診斷模型的輸入為無關日志數(shù)據(jù)時,第一部分在損失函數(shù)中的權(quán)重低于第二部分在損失函數(shù)中的權(quán)重。
65、在一種可能的實施方式中,根因日志數(shù)據(jù)和無關日志數(shù)據(jù)之間的比例包括1:4。
66、在一種可能的實施方式中,前述的訓練模塊,具體用于:獲取歷史日志數(shù)據(jù)中的多個字符的多個表征以及對應的位置編碼,位置編碼用于表示對應的字符在歷史日志數(shù)據(jù)中的位置;將多個表征以及對應的位置編碼作為上一次訓練得到的根因診斷模型的輸入,輸出當前次預測日志數(shù)據(jù),當前次預測日志數(shù)據(jù)包括預測的故障設備故障對應的日志數(shù)據(jù)。
67、在一種可能的實施方式中,獲取模塊,具體用于:獲取至少一個設備的日志數(shù)據(jù);標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
68、獲取模塊,具體用于:根據(jù)至少一個設備上報故障的時刻標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù);或者,識別至少一個設備的日志數(shù)據(jù)中的預設關鍵字,根據(jù)識別的關鍵字對應的時間窗口標注至少一個設備的日志數(shù)據(jù)中的至少一個時間窗口,得到歷史日志數(shù)據(jù)。
69、第五方面,本技術(shù)實施例提供一種根因診斷裝置,包括:處理器和存儲器,其中,處理器和存儲器通過線路互聯(lián),處理器調(diào)用存儲器中的程序代碼用于執(zhí)行上述第一方面任一項所示的根因診斷方法中與處理相關的功能??蛇x地,該根因診斷裝置可以是芯片。
70、第六方面,本技術(shù)實施例提供了一種根因診斷裝置,該根因診斷裝置也可以稱為數(shù)字處理芯片或者芯片,芯片包括處理單元和通信接口,處理單元通過通信接口獲取程序指令,程序指令被處理單元執(zhí)行,處理單元用于執(zhí)行如上述第一方面或第一方面任一可選實施方式中與處理相關的功能。
71、第七方面,本技術(shù)實施例提供一種訓練裝置,包括:處理器和存儲器,其中,處理器和存儲器通過線路互聯(lián),處理器調(diào)用存儲器中的程序代碼用于執(zhí)行上述第二方面任一項所示的根因診斷模型訓練方法中與處理相關的功能。可選地,該訓練裝置可以是芯片。
72、第八方面,本技術(shù)實施例提供了一種訓練裝置,該訓練裝置也可以稱為數(shù)字處理芯片或者芯片,芯片包括處理單元和通信接口,處理單元通過通信接口獲取程序指令,程序指令被處理單元執(zhí)行,處理單元用于執(zhí)行如上述第二方面或第二方面任一可選實施方式中與處理相關的功能。
73、第九方面,本技術(shù)實施例提供了一種計算機可讀存儲介質(zhì),包括指令,當其在計算機上運行時,使得計算機執(zhí)行上述第一方面或第二方面任一可選實施方式中的方法。
74、第十方面,本技術(shù)實施例提供了一種包含指令的計算機程序產(chǎn)品,當其在計算機上運行時,使得計算機執(zhí)行上述第一方面或第二方面任一可選實施方式中的方法。