本申請(qǐng)涉及計(jì)算機(jī)的技術(shù)領(lǐng)域,特別是涉及一種故障譜的生成方法、一種基于故障譜的檢測(cè)方法、一種故障譜的生成裝置和一種基于故障譜的檢測(cè)裝置。
背景技術(shù):
隨著科技的快速發(fā)展,各種產(chǎn)品,如虛擬主機(jī)、云平臺(tái)等等,廣泛進(jìn)入人們的生活、學(xué)習(xí)、工作等領(lǐng)域。
通常,在產(chǎn)品出現(xiàn)故障時(shí),用戶會(huì)向工單系統(tǒng)提交工單,進(jìn)行檢測(cè)、維護(hù),進(jìn)而解決故障。
現(xiàn)有的工單系統(tǒng)主要由兩個(gè)子系統(tǒng)組成:自主解答系統(tǒng)和客服解答系統(tǒng)。
在工單系統(tǒng)中,用戶需要自己查閱幫助中心文檔或根據(jù)向?qū)崾緛?lái)解決故障。
由于用戶需要根據(jù)文檔或提示一步一步操作排查,即串行排查,耗費(fèi)較多的時(shí)間,故障檢測(cè)的速度慢;并且,工單系統(tǒng)所累積的技術(shù)文檔一般數(shù)量很多,操作復(fù)雜,需要耗費(fèi)用戶大量的精力;此外,閱讀技術(shù)文檔需要多需要對(duì)領(lǐng)域內(nèi)的知識(shí)有積累,技術(shù)門檻較高,對(duì)于技術(shù)功底弱的用戶或客服很難獨(dú)自解決問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述問(wèn)題,提出了本申請(qǐng)實(shí)施例以便提供一種克服上述問(wèn)題或者至少部分地解決上述問(wèn)題的一種故障譜的生成方法、一種基于故障譜的檢測(cè)方法和相應(yīng)的一種故障譜的生成裝置、一種基于故障譜的檢測(cè)裝置。
為了解決上述問(wèn)題,本申請(qǐng)實(shí)施例公開了一種故障譜的生成方法,包括:
獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信 息與檢測(cè)信息;
針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
優(yōu)選地,所述故障譜中包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)表征故障信息,所述葉子節(jié)點(diǎn)表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
優(yōu)選地,所述從所述檢測(cè)信息中提取公共特征詞的步驟包括:
對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
統(tǒng)計(jì)所述第一分詞的詞頻;
通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán)重;
按照所述權(quán)重提取至少部分第一分詞作為公共特征詞。
優(yōu)選地,所述從所述檢測(cè)信息中提取公共特征詞的步驟還包括:
采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
移除匹配成功的第一分詞。
優(yōu)選地,所述對(duì)每類故障譜模型進(jìn)行修剪處理的步驟包括:
在所述故障譜模型中查找相同的子樹;所述子樹為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
當(dāng)查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
優(yōu)選地,所述對(duì)每類故障譜模型進(jìn)行修剪處理的步驟還包括:
按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
優(yōu)選地,所述對(duì)每類故障譜模型進(jìn)行修剪處理的步驟還包括:
從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
本申請(qǐng)實(shí)施例還公開了一種基于故障譜的檢測(cè)方法,包括:
當(dāng)接收到第二工單數(shù)據(jù)時(shí),從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞;
查找所述第二工單數(shù)據(jù)所屬類別對(duì)應(yīng)的故障譜;
在所述故障譜中,根據(jù)所述關(guān)鍵詞查找一個(gè)或多個(gè)檢測(cè)路徑;
依據(jù)所述一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),獲得檢測(cè)結(jié)果。
優(yōu)選地,所述故障譜中包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)表征故障信息,所述葉子節(jié)點(diǎn)表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
優(yōu)選地,所述從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞的步驟包括:
對(duì)所述第二工單數(shù)據(jù)進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第二分詞;
識(shí)別所述一個(gè)或多個(gè)第二分詞的詞性;
按照所述詞性從所述一個(gè)或多個(gè)第二分詞中提取關(guān)鍵詞。
優(yōu)選地,所述從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞的步驟還包括:
采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
移除匹配成功的第二分詞。
優(yōu)選地,所述在所述故障譜中,根據(jù)所述特征詞查找一個(gè)或多個(gè)檢測(cè)路徑的步驟包括:
在所述故障譜中,查找與所述關(guān)鍵詞匹配的根節(jié)點(diǎn);
遍歷與所述根節(jié)點(diǎn)相連的一個(gè)或多個(gè)葉子節(jié)點(diǎn),獲得一個(gè)或多個(gè)檢測(cè)路徑。
優(yōu)選地,所述依據(jù)所述一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),獲得檢測(cè)結(jié)果的步驟包括:
針對(duì)每個(gè)檢測(cè)路徑,獲取所述檢測(cè)路徑中的一個(gè)或多個(gè)葉子節(jié)點(diǎn)表征的檢測(cè)信息;
按照當(dāng)前葉子節(jié)點(diǎn)表征的檢測(cè)信息進(jìn)行檢測(cè),獲得候選檢測(cè)結(jié)果;
查找邏輯關(guān)系與所述候選檢測(cè)結(jié)果匹配的下一葉子節(jié)點(diǎn),返回執(zhí)行按照當(dāng)前葉子節(jié)點(diǎn)表征的檢測(cè)信息進(jìn)行檢測(cè)的步驟,直至執(zhí)行至最終的葉子節(jié)點(diǎn);
將最終的葉子節(jié)點(diǎn)的候選檢測(cè)結(jié)果設(shè)置為檢測(cè)結(jié)果。
優(yōu)選地,所述故障譜通過(guò)以下方式生成:
獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
本申請(qǐng)實(shí)施例還公開了一種故障譜的生成裝置,包括:
工單數(shù)據(jù)獲取模塊,用于獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
公共特征詞提取模塊,用于針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
故障譜模型學(xué)習(xí)模塊,用于針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
故障譜模型修剪模塊,用于對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
優(yōu)選地,所述故障譜中包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)表征故障信息,所述葉子節(jié)點(diǎn)表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
優(yōu)選地,所述公共特征詞提取模塊包括:
第一分詞處理模塊,用于對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
詞頻統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述第一分詞的詞頻;
權(quán)重計(jì)算模塊,用于通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán)重;
第一分詞提取子模塊,用于按照所述權(quán)重提取至少部分第一分詞作為公 共特征詞。
優(yōu)選地,所述公共特征詞提取模塊還包括:
第一匹配子模塊,用于采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
第一移除子模塊,用于移除匹配成功的第一分詞。
優(yōu)選地,所述故障譜模型修剪模塊包括:
子樹查找子模塊,用于在所述故障譜模型中查找相同的子樹;所述子樹為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
連接子模塊,用于在查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
第一修剪子模塊,用于在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
優(yōu)選地,所述故障譜模型修剪模塊還包括:
第二修剪子模塊,用于按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
優(yōu)選地,所述故障譜模型修剪模塊還包括:
第三修剪子模塊,用于從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
本申請(qǐng)實(shí)施例還公開了一種基于故障譜的檢測(cè)裝置,包括:
關(guān)鍵詞提取模塊,用于在接收到第二工單數(shù)據(jù)時(shí),從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞;
故障譜查找模塊,用于查找所述第二工單數(shù)據(jù)所屬類別對(duì)應(yīng)的故障譜;
檢測(cè)路徑查找模塊,用于在所述故障譜中,根據(jù)所述關(guān)鍵詞查找一個(gè)或多個(gè)檢測(cè)路徑;
檢測(cè)模塊,用于依據(jù)所述一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),獲得檢測(cè)結(jié)果。
優(yōu)選地,所述故障譜中包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)表征故障信息,所述葉子節(jié)點(diǎn)表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間具有邏輯關(guān) 系,所述葉子節(jié)點(diǎn)具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
優(yōu)選地,所述關(guān)鍵詞提取模塊包括:
第二分詞處理子模塊,用于對(duì)所述第二工單數(shù)據(jù)進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第二分詞;
詞性識(shí)別子模塊,用于識(shí)別所述一個(gè)或多個(gè)第二分詞的詞性;
第二分詞提取子模塊,用于按照所述詞性從所述一個(gè)或多個(gè)第二分詞中提取關(guān)鍵詞。
優(yōu)選地,所述關(guān)鍵詞提取模塊還包括:
第二匹配子模塊,用于采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
第二移除子模塊,用于移除匹配成功的第二分詞。
優(yōu)選地,所述檢測(cè)路徑查找模塊包括:
根節(jié)點(diǎn)匹配子模塊,用于在所述故障譜中,查找與所述關(guān)鍵詞匹配的根節(jié)點(diǎn);
葉子節(jié)點(diǎn)遍歷子模塊,用于遍歷與所述根節(jié)點(diǎn)相連的一個(gè)或多個(gè)葉子節(jié)點(diǎn),獲得一個(gè)或多個(gè)檢測(cè)路徑。
優(yōu)選地,所述檢測(cè)模塊包括:
檢測(cè)信息獲取子模塊,用于針對(duì)每個(gè)檢測(cè)路徑,獲取所述檢測(cè)路徑中的一個(gè)或多個(gè)葉子節(jié)點(diǎn)表征的檢測(cè)信息;
候選檢測(cè)結(jié)果獲取子模塊,用于按照當(dāng)前葉子節(jié)點(diǎn)表征的檢測(cè)信息進(jìn)行檢測(cè),獲得候選檢測(cè)結(jié)果;
葉子節(jié)點(diǎn)查找子模塊,用于查找邏輯關(guān)系與所述候選檢測(cè)結(jié)果匹配的下一葉子節(jié)點(diǎn),返回調(diào)用候選檢測(cè)結(jié)果獲取子模塊,直至執(zhí)行至最終的葉子節(jié)點(diǎn);
檢測(cè)結(jié)果設(shè)置子模塊,用于將最終的葉子節(jié)點(diǎn)的候選檢測(cè)結(jié)果設(shè)置為檢測(cè)結(jié)果。
優(yōu)選地,所述故障譜通過(guò)調(diào)用以下模塊生成:
工單數(shù)據(jù)獲取模塊,用于獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第 一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
公共特征詞提取模塊,用于針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
故障譜模型學(xué)習(xí)模塊,用于針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
故障譜模型修剪模塊,用于對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
本申請(qǐng)實(shí)施例包括以下優(yōu)點(diǎn):
本申請(qǐng)實(shí)施例通過(guò)建立故障譜,使得后續(xù)檢測(cè)時(shí)支持并發(fā)依據(jù)該一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),減少了檢測(cè)耗時(shí),提高檢測(cè)的效率,同時(shí),應(yīng)用故障譜的檢測(cè)操作簡(jiǎn)單,大大減少了人工參與的頻次,減少用戶精力的耗費(fèi),同時(shí),利用海量的工單數(shù)據(jù)所形成的知識(shí)庫(kù)中的知識(shí)點(diǎn)處理故障,大大降低了技術(shù)門檻,方便技術(shù)功底弱的用戶或客服獨(dú)自解決問(wèn)題。
附圖說(shuō)明
圖1是本申請(qǐng)的一種故障譜的生成方法實(shí)施例的步驟流程圖;
圖2A和圖2B是本申請(qǐng)的一種故障譜模型的修剪示例圖;
圖3A和圖3B是本申請(qǐng)的一種故障譜模型的修剪示例圖;
圖4是本申請(qǐng)的一種基于故障譜的檢測(cè)方法實(shí)施例的步驟流程圖;
圖5是本申請(qǐng)的一種檢測(cè)路徑的示例圖;
圖6A是現(xiàn)有的一種檢測(cè)示例圖;
圖6B是本申請(qǐng)的一種檢測(cè)示例圖;
圖7是本申請(qǐng)的一種故障譜的生成裝置實(shí)施例的結(jié)構(gòu)框圖;
圖8是本申請(qǐng)的一種基于故障譜的檢測(cè)裝置實(shí)施例的結(jié)構(gòu)框圖。
具體實(shí)施方式
為使本申請(qǐng)的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)的說(shuō)明。
參照?qǐng)D1,示出了本申請(qǐng)的一種故障譜的生成方法實(shí)施例的步驟流程圖,具體可以包括如下步驟:
步驟101,獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);
在實(shí)際應(yīng)用中,可以對(duì)歷史中海量的第一工單數(shù)據(jù)進(jìn)行存儲(chǔ),對(duì)該海量的第一工單數(shù)據(jù)分析總結(jié)后,把典型的第一工單數(shù)據(jù)寫成知識(shí)點(diǎn),保存在知識(shí)庫(kù)中。
一般而言,每個(gè)第一工單數(shù)據(jù)可以包括:日期、用戶ID、產(chǎn)品、問(wèn)題分類、問(wèn)題(故障信息)、解決辦法(檢測(cè)信息)、溝通記錄等要素。
其中,故障信息可以為記載所發(fā)生的故障的信息,檢測(cè)信息可以為記載如何進(jìn)行檢測(cè)解決該故障的信息,兩者是相對(duì)應(yīng)的。
例如,在某個(gè)工單數(shù)據(jù)中,故障信息為“DB(Database,數(shù)據(jù)庫(kù))訪問(wèn)慢”,檢測(cè)信息為“請(qǐng)您首先對(duì)網(wǎng)絡(luò)擁塞檢測(cè)吧”。
通過(guò)問(wèn)題分類可以提取足夠數(shù)量的、同屬一個(gè)類別的第一工單數(shù)據(jù),作為訓(xùn)練樣本。
步驟102,針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
公共特征詞,為該類中部分第一工單數(shù)據(jù)中所共有的詞,可以用于表征檢測(cè)信息的特征,作為訓(xùn)練樣本的參數(shù)。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,步驟102可以包括如下子步驟:
子步驟S11,對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
在具體實(shí)現(xiàn)中,可以通過(guò)以下方式進(jìn)行分詞處理:
1、基于字符串匹配的分詞方法:是指按照一定的策略將待分析的漢字串與一個(gè)預(yù)置的機(jī)器詞典中的詞條進(jìn)行匹配,若在詞典中找到某個(gè)字符串,則匹配成功(識(shí)別出一個(gè)詞)。
2、基于特征掃描或標(biāo)志切分的分詞方法:是指優(yōu)先在待分析字符串中識(shí)別和切分出一些帶有明顯特征的詞,以這些詞作為斷點(diǎn),可將原字符串分為較小的串再來(lái)進(jìn)機(jī)械分詞;或者將分詞和詞類標(biāo)注結(jié)合起來(lái), 利用豐富的詞類信息對(duì)分詞決策提供幫助,并且在標(biāo)注過(guò)程中又反過(guò)來(lái)對(duì)分詞結(jié)果進(jìn)行檢驗(yàn)、調(diào)整。
3、基于理解的分詞方法:是指通過(guò)讓計(jì)算機(jī)模擬人對(duì)句子的理解,達(dá)到識(shí)別詞的效果。其基本思想就是在分詞的同時(shí)進(jìn)行句法、語(yǔ)義分析,利用句法信息和語(yǔ)義信息來(lái)處理歧義現(xiàn)象。
4、基于統(tǒng)計(jì)的分詞方法:對(duì)語(yǔ)料中相鄰共現(xiàn)的各個(gè)字的組合的頻度進(jìn)行統(tǒng)計(jì),計(jì)算它們的互現(xiàn)信息,以及計(jì)算兩個(gè)漢字X、Y的相鄰共現(xiàn)概率。互現(xiàn)信息可以體現(xiàn)漢字之間結(jié)合關(guān)系的緊密程度。當(dāng)緊密程度高于某一個(gè)閾值時(shí),便可認(rèn)為此字組可能構(gòu)成了一個(gè)詞。
當(dāng)然,上述分詞處理方式只是作為示例,在實(shí)施本申請(qǐng)實(shí)施例時(shí),可以根據(jù)實(shí)際情況設(shè)置其他分詞處理方式,本申請(qǐng)實(shí)施例對(duì)此不加以限制。另外,除了上述分詞處理方式外,本領(lǐng)域技術(shù)人員還可以根據(jù)實(shí)際需要采用其它分詞處理方式,本申請(qǐng)實(shí)施例對(duì)此也不加以限制。
子步驟S12,統(tǒng)計(jì)所述第一分詞的詞頻;
子步驟S13,通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán)重;
在實(shí)際應(yīng)用中,可以通過(guò)TF-IDF(term frequency–inverse document frequency,一種用于資訊檢索與資訊探勘的常用加權(quán)技術(shù))計(jì)算第一分詞的權(quán)重。
具體而言,TF-IDF可以用于評(píng)估一字詞對(duì)于一個(gè)文件集或一個(gè)語(yǔ)料庫(kù)中的其中一份文件的重要程度,字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時(shí)會(huì)隨著它在語(yǔ)料庫(kù)中出現(xiàn)的頻率成反比下降。
子步驟S14,按照所述權(quán)重提取至少部分第一分詞作為公共特征詞。
若通過(guò)TF-IDF計(jì)算第一分詞的權(quán)重,則可以提取權(quán)重最高的前N(N為正整數(shù),如10)個(gè)第一分詞作為公共特征詞。
對(duì)于整體而言,會(huì)獲得每個(gè)分類的故障信息及其公共特征詞。
例如:對(duì)于連接失敗的分類,提取的公共特征詞如下:
攔截,錯(cuò)誤日志,部分失敗,…,白名單;
報(bào)錯(cuò),驗(yàn)證失敗,…,密碼;
連接失敗,訪問(wèn)拒絕,…,端口。
在本申請(qǐng)的另一種優(yōu)選實(shí)施例中,步驟102還可以包括如下子步驟:
子步驟S15,采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
子步驟S16,移除匹配成功的第一分詞。
停用詞庫(kù)中可以存儲(chǔ)出現(xiàn)頻率很高,但實(shí)際意義又不大的詞,主要指副詞、虛詞、語(yǔ)氣詞等,如“是”、“而是”等。
在本申請(qǐng)實(shí)施例中,在子步驟S12之前,可以通過(guò)停用詞濾去第一分詞中無(wú)意義的詞。
例如,檢測(cè)信息“請(qǐng)您首先對(duì)網(wǎng)絡(luò)擁塞檢測(cè)吧”可以劃分為“請(qǐng)”、“您”、“首先”、“對(duì)”、“網(wǎng)絡(luò)擁塞”、“檢測(cè)”、“吧”等第一分詞,通過(guò)停用詞庫(kù),可以去除“請(qǐng)”、“您”、“首先”、“對(duì)”、“吧”等無(wú)意義的詞。
步驟103,針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
應(yīng)用本申請(qǐng)實(shí)施例,可以預(yù)先設(shè)置訓(xùn)練器,可以用于學(xué)習(xí)各個(gè)維度的數(shù)據(jù)(即故障信息、特征向量)的邏輯關(guān)系,如支持向量機(jī)(Support Vector Machine,SVM)、決策樹(Decision Tree)、隨機(jī)森林(Random Forest)等等,本申請(qǐng)實(shí)施例對(duì)此不加以限制。
其中,支持向量機(jī)是通過(guò)一個(gè)非線性映射p,把樣本空間映射到一個(gè)高維乃至無(wú)窮維的特征空間中(Hilbert空間),使得在原來(lái)的樣本空間中非線性可分的問(wèn)題轉(zhuǎn)化為在特征空間中的線性可分的問(wèn)題。
隨機(jī)森林,是用隨機(jī)的方式建立一個(gè)森林,森林里面有很多的決策樹組成,隨機(jī)森林的每一棵決策樹之間是沒有關(guān)聯(lián)的。在得到森林之后,當(dāng)有一個(gè)新的輸入樣本進(jìn)入的時(shí)候,就讓森林中的每一棵決策樹分別進(jìn)行一下判斷,看看這個(gè)樣本應(yīng)該屬于哪一類(對(duì)于分類算法),然后看看哪一類被選擇最多,就預(yù)測(cè)這個(gè)樣本為那一類。
決策樹是在已知各種情況發(fā)生概率的基礎(chǔ)上,通過(guò)構(gòu)成決策樹來(lái)求取凈現(xiàn)值的期望值大于等于零的概率,評(píng)價(jià)項(xiàng)目風(fēng)險(xiǎn),判斷其可行性的決策分析 方法,是直觀運(yùn)用概率分析的一種圖解法。
在訓(xùn)練器訓(xùn)練時(shí),可以對(duì)故障譜模型進(jìn)行擬合,若誤差(CP)小于一個(gè)預(yù)先設(shè)定的誤差閾值(如0.001),停止擬合,所訓(xùn)練處的故障譜模型如圖2A所示,是樹形結(jié)構(gòu),包括根節(jié)點(diǎn)與葉子節(jié)點(diǎn),至少部分葉子節(jié)點(diǎn)之間具有邏輯關(guān)系。
如圖2A所示,如“2.5”、“3.1”為節(jié)點(diǎn)(包括根節(jié)點(diǎn)、葉子節(jié)點(diǎn)),表征特征向量,“mmax<6100”、“syct>=360”等表征邏輯關(guān)系。
此外,根節(jié)點(diǎn)表征故障信息,葉子節(jié)點(diǎn)表征檢測(cè)信息。
具體而言,如圖3A所示,“A:DB連接失敗”為根節(jié)點(diǎn),表征故障信息,“E:本地檢測(cè)”、“B:網(wǎng)絡(luò)斷”為葉子節(jié)點(diǎn),表征檢測(cè)信息,與根節(jié)點(diǎn)“A:DB連接失敗”不存在邏輯關(guān)系。
而“H:配置排查”、“C:修復(fù)網(wǎng)絡(luò)”為“B:網(wǎng)絡(luò)斷”的子節(jié)點(diǎn),即“B:網(wǎng)絡(luò)斷”為“H:配置排查”、“C:修復(fù)網(wǎng)絡(luò)”的父節(jié)點(diǎn),“H:配置排查”、“C:修復(fù)網(wǎng)絡(luò)”與“B:網(wǎng)絡(luò)斷”存在邏輯關(guān)系(圖上未示出)。
步驟104,對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
在實(shí)際應(yīng)用中,可以按照實(shí)際需求對(duì)故障譜模型進(jìn)行修剪處理,獲得故障譜。
其中,故障譜中可以包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),根節(jié)點(diǎn)可以表征故障信息,葉子節(jié)點(diǎn)可以表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間可以具有邏輯關(guān)系,葉子節(jié)點(diǎn)可以具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
修剪好的故障譜,可以存儲(chǔ)在故障譜倉(cāng)庫(kù)(數(shù)據(jù)庫(kù))中。
在本申請(qǐng)的一種優(yōu)選實(shí)施中,步驟104可以包括如下子步驟:
子步驟S21,在所述故障譜模型中查找相同的子樹;
其中,所述子樹可以為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
子步驟S22,當(dāng)查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
子步驟S23,在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
在本申請(qǐng)實(shí)施例中,由于某些子樹可能有重復(fù),因此,可以遞歸檢查有重復(fù)的子樹,發(fā)現(xiàn)后,在一個(gè)節(jié)點(diǎn)指向另一個(gè)子樹,同時(shí)刪除本身的子樹, 使得某些葉子節(jié)點(diǎn)具有多個(gè)父節(jié)點(diǎn)(表示一個(gè)現(xiàn)象可能由多種原因造成),形成類樹形結(jié)構(gòu),即有向無(wú)環(huán)圖(DAG,指一個(gè)有向圖無(wú)法從某個(gè)頂點(diǎn)出發(fā)經(jīng)過(guò)若干條邊回到該點(diǎn))。
類樹形結(jié)構(gòu)的故障譜并非樹形結(jié)構(gòu),如二叉樹,二叉樹中某些子樹可能會(huì)其他子樹重復(fù),造成二叉樹的結(jié)構(gòu)冗長(zhǎng),分支過(guò)多,邏輯關(guān)系不清晰;但在DAG中不存在重復(fù)的子樹,因?yàn)槿绻貜?fù)了,父節(jié)點(diǎn)可以刪除本子樹,并指向其他重復(fù)的子樹,因此,相對(duì)于二叉樹等樹形結(jié)構(gòu)層次較少,邏輯較清晰。
需要說(shuō)明的是,相同(即重復(fù))是指葉子節(jié)點(diǎn)相同、葉子節(jié)點(diǎn)之間的邏輯關(guān)系相同。
如圖3A所示,“H:配置排查”、“F:白名單”、“D:檢測(cè)密碼”和“J:檢測(cè)端口”這四個(gè)葉子節(jié)點(diǎn)組成的子樹重復(fù),如圖3B所示,可以刪除其中一個(gè)子樹,使得該子樹的父節(jié)點(diǎn)“B:網(wǎng)絡(luò)斷”和“E:本地檢測(cè)”指向同一個(gè)子樹。
在本申請(qǐng)的另一種優(yōu)選實(shí)施中,步驟104還可以包括如下子步驟:
子步驟S24,按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
一般情況下,訓(xùn)練出來(lái)的故障譜模型可能含有較深的層次,可能造成檢測(cè)的步驟繁多。
在本申請(qǐng)實(shí)施例中,可以通過(guò)預(yù)設(shè)的剪枝方式,如prune()函數(shù),對(duì)故障譜模型進(jìn)行修剪處理,在可接受檢測(cè)誤差的范圍內(nèi),把故障譜模型的層次減低,減少故障譜模型的復(fù)雜度,減少檢測(cè)的步驟。
例如,如圖2A所示的故障譜模型的層次為6層,通過(guò)剪枝方式修剪之后,獲得如圖2B所示的4層故障譜模型。
在本申請(qǐng)的另一種優(yōu)選實(shí)施中,步驟104還可以包括如下子步驟:
子步驟S25,從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
在本申請(qǐng)實(shí)施例中,可以通過(guò)人工確認(rèn)或者通過(guò)合法邏輯關(guān)系排查,剪去對(duì)一些邏輯關(guān)系不合法的葉子節(jié)點(diǎn),提高準(zhǔn)確率。
參照?qǐng)D4,示出了本申請(qǐng)的一種基于故障譜的檢測(cè)方法實(shí)施例的步驟流程圖,具體可以包括如下步驟:
步驟401,當(dāng)接收到第二工單數(shù)據(jù)時(shí),從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞;
本申請(qǐng)實(shí)施例可以應(yīng)用在虛擬客服系統(tǒng)中,該虛擬克服系統(tǒng)可以使用流式實(shí)時(shí)處理框架strom,保證在極小的延遲完成檢測(cè)。
當(dāng)然,除了strom,還可以應(yīng)用S4(Simple Scalable Streaming System)、MillWheel、Kinesis等流式實(shí)時(shí)處理框架中,本申請(qǐng)實(shí)施例對(duì)此不加以限制。
在具體實(shí)現(xiàn)中,用戶可以通過(guò)瀏覽器、獨(dú)立的應(yīng)用等方式提交第二工單數(shù)據(jù)給虛擬客服系統(tǒng),虛擬客服系統(tǒng)可以會(huì)去除無(wú)關(guān)干擾信息、凈化第二工單數(shù)據(jù)。
通常,該第二工單數(shù)據(jù)中允許包含一個(gè)故障信息,解決一個(gè)問(wèn)題,若用戶提出了一個(gè)問(wèn)題,與此問(wèn)題無(wú)關(guān)的信息可以認(rèn)為是干擾信息。
進(jìn)一步而言,在某種情況下,第二工單數(shù)據(jù)可以根據(jù)產(chǎn)品分類,與當(dāng)前產(chǎn)品無(wú)關(guān)的信息可以第二工單數(shù)據(jù)。
例如,在某個(gè)第二工單數(shù)據(jù)中,用戶詢問(wèn):“我的SQL中的UDF函數(shù)為什么不能執(zhí)行?”虛擬客服系統(tǒng)回答:“因?yàn)楝F(xiàn)在對(duì)外沒有開放UDF的權(quán)限,因此你的UDF不能執(zhí)行?!贝送?,用戶再次詢問(wèn):“明白。另一個(gè)問(wèn)題:我的日志怎么下載呀?”
此示例中,用戶的第2個(gè)問(wèn)題與第一個(gè)問(wèn)題無(wú)關(guān),屬于干擾信息。
對(duì)于過(guò)濾干擾信息后的第二工單數(shù)據(jù),可以提取關(guān)鍵詞,該關(guān)鍵詞可以為體現(xiàn)第二工單數(shù)據(jù)(即故障信息)特征的信息。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,步驟401可以包括如下子步驟:
子步驟S31,對(duì)所述第二工單數(shù)據(jù)進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第二分詞;
在具體實(shí)現(xiàn)中,可以通過(guò)以下方式進(jìn)行分詞處理:
1、基于字符串匹配的分詞方法。
2、基于特征掃描或標(biāo)志切分的分詞方法。
3、基于理解的分詞方法。
4、基于統(tǒng)計(jì)的分詞方法。
當(dāng)然,上述分詞處理方式只是作為示例,在實(shí)施本申請(qǐng)實(shí)施例時(shí),可以根據(jù)實(shí)際情況設(shè)置其他分詞處理方式,本申請(qǐng)實(shí)施例對(duì)此不加以限制。另外,除了上述分詞處理方式外,本領(lǐng)域技術(shù)人員還可以根據(jù)實(shí)際需要采用其它分詞處理方式,本申請(qǐng)實(shí)施例對(duì)此也不加以限制。
子步驟S32,識(shí)別所述一個(gè)或多個(gè)第二分詞的詞性;
子步驟S33,按照所述詞性從所述一個(gè)或多個(gè)第二分詞中提取關(guān)鍵詞。
在本申請(qǐng)實(shí)施例中,可以對(duì)第二分詞進(jìn)行詞性分析,獲得各第二分詞的詞性,如名詞、動(dòng)詞、形容詞、副詞、介詞、連詞、助詞等等。
其中,可以通過(guò)名詞與動(dòng)詞組成關(guān)鍵詞,名詞可以用于確定目標(biāo)對(duì)象,動(dòng)詞可以推測(cè)出主要語(yǔ)義。
例如,在某個(gè)第二工單數(shù)據(jù)中,用戶A詢問(wèn)“有沒有最大值的UDF函數(shù)”,此示例中,動(dòng)詞為“有沒有”,名詞為“UDF函數(shù)”,即用戶A的問(wèn)題(即關(guān)鍵詞)是問(wèn),“有沒有UDF函數(shù)”。
又例如,在某個(gè)第二工單數(shù)據(jù)中,用戶B詢問(wèn)“如何調(diào)試UDF函數(shù)”,此示例中,動(dòng)詞為“調(diào)試”,名詞為“UDF函數(shù)”,即用戶B的問(wèn)題(即關(guān)鍵詞)是問(wèn),“調(diào)試UDF函數(shù)”的方法。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,步驟401還可以包括如下子步驟:
子步驟S34,采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
子步驟S35,移除匹配成功的第二分詞。
在本申請(qǐng)實(shí)施例中,在子步驟S32之前,可以通過(guò)停用詞濾去第二分詞中無(wú)意義的詞。
步驟402,查找所述第二工單數(shù)據(jù)所屬類別對(duì)應(yīng)的故障譜;
應(yīng)用本申請(qǐng)實(shí)施例,可以預(yù)先訓(xùn)練故障譜,存儲(chǔ)在故障譜倉(cāng)庫(kù)(數(shù)據(jù)庫(kù))中。
在實(shí)際應(yīng)用中,可以通過(guò)文本相似度查找第二工單數(shù)據(jù)所屬類別對(duì)應(yīng)的 故障譜,即在故障譜倉(cāng)庫(kù)中查找與第二工單數(shù)據(jù)中的關(guān)鍵詞相似的故障譜。
例如,如果關(guān)鍵詞是:“DB”、“查詢”、“等待”、“慢”等,則可以根據(jù)文本相似度匹配上“DB訪問(wèn)慢”這個(gè)類目的故障譜。
在本申請(qǐng)實(shí)施例中,故障譜中可以包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),根節(jié)點(diǎn)可以表征故障信息,葉子節(jié)點(diǎn)可以表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間可以具有邏輯關(guān)系,葉子節(jié)點(diǎn)可以具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
步驟403,在所述故障譜中,根據(jù)所述關(guān)鍵詞查找一個(gè)或多個(gè)檢測(cè)路徑;
在具體實(shí)現(xiàn)中,該檢測(cè)路徑可以記載檢測(cè)方式及檢測(cè)順序的信息。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,步驟403可以包括如下子步驟:
子步驟S41,在所述故障譜中,查找與所述關(guān)鍵詞匹配的根節(jié)點(diǎn);
子步驟S42,遍歷與所述根節(jié)點(diǎn)相連的一個(gè)或多個(gè)葉子節(jié)點(diǎn),獲得一個(gè)或多個(gè)檢測(cè)路徑。
在本申請(qǐng)實(shí)施例中,故障譜是一個(gè)類樹形結(jié)構(gòu)(有向無(wú)環(huán)圖DAG),因此,檢索檢測(cè)路徑時(shí)可以從上致下地進(jìn)行使用“節(jié)點(diǎn)”匹配。
根據(jù)關(guān)鍵詞可以在故障譜中定位根節(jié)點(diǎn),是從該根節(jié)點(diǎn)向下遍歷所經(jīng)過(guò)的所有葉子節(jié)點(diǎn),組成檢測(cè)路徑。
例如,如圖3B所示的故障譜中存在兩個(gè)檢測(cè)路徑,分布為“A→E→H→F/D/J”和“A→B→C/H→F/D/J”。
由于根節(jié)點(diǎn)與下一層的葉子節(jié)點(diǎn)一般不存在邏輯關(guān)系,因此,該下一層葉子節(jié)點(diǎn)的數(shù)量與檢測(cè)路徑的數(shù)量一般相同。
需要說(shuō)明的是,相連可以指根節(jié)點(diǎn)與子節(jié)點(diǎn)直接相連,也可以指根節(jié)點(diǎn)與子節(jié)點(diǎn)間接相連。
例如,如圖3B所示,葉子節(jié)點(diǎn)“E:本地檢測(cè)”與根節(jié)點(diǎn)“A:DB連接失敗”直接相連,葉子節(jié)點(diǎn)“H:配置排查”與根節(jié)點(diǎn)“A:DB連接失敗”間接相連。
步驟404,依據(jù)所述一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),獲得檢測(cè)結(jié)果。
在申請(qǐng)實(shí)施例中,支持并發(fā)依據(jù)該一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),減少了檢測(cè)耗時(shí),提高檢測(cè)的效率。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,步驟404可以包括如下子步驟:
子步驟S51,針對(duì)每個(gè)檢測(cè)路徑,獲取所述檢測(cè)路徑中的一個(gè)或多個(gè)葉子節(jié)點(diǎn)表征的檢測(cè)信息;
子步驟S52,按照當(dāng)前葉子節(jié)點(diǎn)表征的檢測(cè)信息進(jìn)行檢測(cè),獲得候選檢測(cè)結(jié)果;
子步驟S53,查找邏輯關(guān)系與所述候選檢測(cè)結(jié)果匹配的下一葉子節(jié)點(diǎn),返回執(zhí)行子步驟S51,直至執(zhí)行至最終的葉子節(jié)點(diǎn);
子步驟S54,將最終的葉子節(jié)點(diǎn)的候選檢測(cè)結(jié)果設(shè)置為檢測(cè)結(jié)果。
在本申請(qǐng)實(shí)施例中,邏輯關(guān)系和葉子節(jié)點(diǎn)表征的檢測(cè)信息可以稱之為規(guī)則,即當(dāng)符合某個(gè)條件(邏輯關(guān)系)就做執(zhí)行某個(gè)操作(檢測(cè)信息)。
例如,當(dāng)DB訪問(wèn)慢時(shí),就檢查網(wǎng)絡(luò)的帶寬及流量,這就是一條邏輯關(guān)系。
規(guī)則是預(yù)先定義在規(guī)則引擎(rule engine)中的,如JBoss Rules(業(yè)務(wù)規(guī)則引擎),一旦條件觸發(fā),規(guī)則引擎會(huì)執(zhí)行這條規(guī)則,如:執(zhí)行網(wǎng)絡(luò)狀態(tài)檢測(cè)命令ifstat。
在具體實(shí)現(xiàn)中,在檢測(cè)路徑按照邏輯關(guān)系逐層檢測(cè),直至最終的葉子節(jié)點(diǎn),可以避免執(zhí)行不符合邏輯關(guān)系的部分子節(jié)點(diǎn)。其中,最終的葉子節(jié)點(diǎn)可以指沒有下一層葉子節(jié)點(diǎn)的葉子節(jié)點(diǎn),并不一定是檢測(cè)路徑中最底層的葉子節(jié)點(diǎn)。
例如,在如圖5所示的檢測(cè)路徑中,根節(jié)點(diǎn)“A:DB訪問(wèn)慢”表征故障信息,要素是網(wǎng)絡(luò),DB負(fù)載,SQL(Structured Query Language,結(jié)構(gòu)化查詢語(yǔ)言)。
首先要按照子節(jié)點(diǎn)“B:網(wǎng)絡(luò)擁塞檢測(cè)”確定網(wǎng)絡(luò)是否有問(wèn)題,若網(wǎng)絡(luò)有問(wèn)題(即“Y”),其余的要素都很難起作用(即無(wú)需執(zhí)行“C:DB負(fù)載檢測(cè)”),按照子節(jié)點(diǎn)“H:聯(lián)系網(wǎng)工”進(jìn)行人工解決;其次,如果網(wǎng)絡(luò)沒有問(wèn)題(即“N”),則按照子節(jié)點(diǎn)“C:DB負(fù)載檢測(cè)”判斷DB負(fù)載是否高,如果“DB負(fù)載高”,即使SQL本身沒有問(wèn)題(即無(wú)需執(zhí)行“D:慢SQL檢測(cè)”),對(duì)外也會(huì)展現(xiàn)出訪問(wèn)慢的情況,則按照子節(jié)點(diǎn)“J:SQL線程檢測(cè)”確認(rèn)SQL 線程是否運(yùn)行正常;如果“DB負(fù)載低”,則按照子節(jié)點(diǎn)“D:慢SQL檢測(cè)”進(jìn)行檢測(cè),分布為葉子節(jié)點(diǎn)“K:索引”的檢測(cè)、“M:執(zhí)行計(jì)劃”的檢測(cè)和“N:鎖”的檢測(cè)。
若執(zhí)行到子節(jié)點(diǎn)“H:聯(lián)系網(wǎng)工”、“J:SQL線程檢測(cè)”、“K:索引”、“M:執(zhí)行計(jì)劃”和“N:鎖”,則可以終止檢測(cè),獲得檢測(cè)結(jié)果。
據(jù)某項(xiàng)數(shù)據(jù)統(tǒng)計(jì)表明,70%的工單數(shù)據(jù)是很基本的常見問(wèn)題,有較大的重復(fù)性,以現(xiàn)有的工單系統(tǒng)處理這些問(wèn)題需占用50%以上的客服資源,花費(fèi)大量重復(fù)勞動(dòng),效率很低,本申請(qǐng)實(shí)施例的目的之一是自動(dòng)化解決這70%的常見問(wèn)題。
現(xiàn)有的工單系統(tǒng)一般是用戶根據(jù)自己的經(jīng)驗(yàn)來(lái)引導(dǎo)問(wèn)題排查,即導(dǎo)向方向?yàn)椤叭恕鷨?wèn)題”,操作復(fù)雜,需要耗費(fèi)用戶大量的精力,并且,技術(shù)門檻高。
本申請(qǐng)實(shí)施例是讓系統(tǒng)引導(dǎo)排查過(guò)程,是由海量的工單數(shù)據(jù)生成的故障譜來(lái)指導(dǎo)用戶排查問(wèn)題,是逆向引導(dǎo),即導(dǎo)向方向?yàn)椤跋到y(tǒng)→問(wèn)題→人”,操作簡(jiǎn)單,大大減少了人工參與的頻次,減少用戶精力的耗費(fèi),同時(shí),利用海量的工單數(shù)據(jù)鎖形成的知識(shí)庫(kù)中的知識(shí)點(diǎn)處理問(wèn)題,大大降低了技術(shù)門檻,方便技術(shù)功底弱的用戶或客服獨(dú)自解決問(wèn)題。
如圖6A所示,現(xiàn)有的工單系統(tǒng)在串行排查時(shí),即沒有任何內(nèi)在邏輯關(guān)系地進(jìn)行排查,需要對(duì)圖6A中所有的節(jié)點(diǎn)一一進(jìn)行亂序排查,如:A→B→C→D→E,直到發(fā)現(xiàn)問(wèn)題。因此,時(shí)間復(fù)雜度時(shí)O(N),N為節(jié)點(diǎn)的數(shù)量,即所有的節(jié)點(diǎn)都要進(jìn)行排查。
在本申請(qǐng)實(shí)施例中,如圖6B所示,通過(guò)故障譜進(jìn)行并發(fā)排查(如并發(fā)執(zhí)行B、C)時(shí),因?yàn)楣?jié)點(diǎn)間是有邏輯關(guān)系的,一般不需要對(duì)所有的節(jié)點(diǎn)一一排查,節(jié)省了很多排查步驟,如,若在C檢測(cè)導(dǎo)向D,則不需要執(zhí)行E,反之,若在C檢測(cè)導(dǎo)向E,則不需要執(zhí)行D。對(duì)于故障譜的結(jié)構(gòu),利用分支結(jié)構(gòu)(每次除以2),可以省去很多排查步驟,排查復(fù)雜度最低可達(dá)O(log2N),N為節(jié)點(diǎn)的數(shù)量。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜可以通過(guò)以下方式生成:
子步驟S61,獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
子步驟S62,針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
子步驟S63,針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
子步驟S64,對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
在實(shí)際應(yīng)用中,所述故障譜中可以包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)可以表征故障信息,所述葉子節(jié)點(diǎn)可以表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間可以具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)可以具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,子步驟S62可以包括如下子步驟:
子步驟S621,對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
子步驟S622,統(tǒng)計(jì)所述第一分詞的詞頻;
子步驟S623,通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán)重;
子步驟S624,按照所述權(quán)重提取至少部分第一分詞作為公共特征詞。
在本申請(qǐng)的另一種優(yōu)選實(shí)施例中,子步驟S62還可以包括如下子步驟:
子步驟S625,采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
子步驟S626,移除匹配成功的第一分詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,子步驟S64可以包括如下子步驟:
子步驟S641,在所述故障譜模型中查找相同的子樹;所述子樹為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
子步驟S642,當(dāng)查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
子步驟S643,在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
在本申請(qǐng)的另一種優(yōu)選實(shí)施例中,子步驟S64還可以包括如下子步驟:
子步驟S644,按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
在本申請(qǐng)的另一種優(yōu)選實(shí)施例中,子步驟S64還可以包括如下子步驟:
子步驟S645,從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
需要說(shuō)明的是,對(duì)于方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請(qǐng)實(shí)施例并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本申請(qǐng)實(shí)施例,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說(shuō)明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本申請(qǐng)實(shí)施例所必須的。
參照?qǐng)D7,示出了本申請(qǐng)的一種故障譜的生成裝置實(shí)施例的結(jié)構(gòu)框圖,具體可以包括如下模塊:
工單數(shù)據(jù)獲取模塊701,用于獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
公共特征詞提取模塊702,用于針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
故障譜模型學(xué)習(xí)模塊703,用于針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
故障譜模型修剪模塊704,用于對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
在具體實(shí)現(xiàn)中,所述故障譜中可以包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)可以表征故障信息,所述葉子節(jié)點(diǎn)可以表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間可以具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)可以具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述公共特征詞提取模塊702可以包括如下子模塊:
第一分詞處理模塊,用于對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
詞頻統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述第一分詞的詞頻;
權(quán)重計(jì)算模塊,用于通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán)重;
第一分詞提取子模塊,用于按照所述權(quán)重提取至少部分第一分詞作為公共特征詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述公共特征詞提取模塊702還可以包括如下子模塊:
匹配子模塊,用于采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
移除子模塊,用于移除匹配成功的第一分詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊704可以包括如下子模塊:
子樹查找子模塊,用于在所述故障譜模型中查找相同的子樹;所述子樹為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
連接子模塊,用于在查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
第一修剪子模塊,用于在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊704還可以包括如下子模塊:
第二修剪子模塊,用于按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊704還可以包括如下子模塊:
第三修剪子模塊,用于從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
參照?qǐng)D8,示出了本申請(qǐng)的一種基于故障譜的檢測(cè)裝置實(shí)施例的結(jié)構(gòu)框 圖,具體可以包括如下模塊:
關(guān)鍵詞提取模塊801,用于在接收到第二工單數(shù)據(jù)時(shí),從所述第二工單數(shù)據(jù)中提取關(guān)鍵詞;
故障譜查找模塊802,用于查找所述第二工單數(shù)據(jù)所屬類別對(duì)應(yīng)的故障譜;
檢測(cè)路徑查找模塊803,用于在所述故障譜中,根據(jù)所述關(guān)鍵詞查找一個(gè)或多個(gè)檢測(cè)路徑;
檢測(cè)模塊804,用于依據(jù)所述一個(gè)或多個(gè)檢測(cè)路徑進(jìn)行檢測(cè),獲得檢測(cè)結(jié)果。
在具體實(shí)現(xiàn)中,所述故障譜中可以包括相連的根節(jié)點(diǎn)與葉子節(jié)點(diǎn),所述根節(jié)點(diǎn)可以表征故障信息,所述葉子節(jié)點(diǎn)可以表征檢測(cè)信息,至少部分葉子節(jié)點(diǎn)之間可以具有邏輯關(guān)系,所述葉子節(jié)點(diǎn)可以具有一個(gè)或多個(gè)父節(jié)點(diǎn)。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述關(guān)鍵詞提取模塊801可以包括如下子模塊:
第二分詞處理子模塊,用于對(duì)所述第二工單數(shù)據(jù)進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第二分詞;
詞性識(shí)別子模塊,用于識(shí)別所述一個(gè)或多個(gè)第二分詞的詞性;
第二分詞提取子模塊,用于按照所述詞性從所述一個(gè)或多個(gè)第二分詞中提取關(guān)鍵詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述關(guān)鍵詞提取模塊801還可以包括如下子模塊:
第二匹配子模塊,用于采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
第二移除子模塊,用于移除匹配成功的第二分詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述檢測(cè)路徑查找模塊803可以包括如下子模塊:
根節(jié)點(diǎn)匹配子模塊,用于在所述故障譜中,查找與所述關(guān)鍵詞匹配的根節(jié)點(diǎn);
葉子節(jié)點(diǎn)遍歷子模塊,用于遍歷與所述根節(jié)點(diǎn)相連的一個(gè)或多個(gè)葉子節(jié)點(diǎn),獲得一個(gè)或多個(gè)檢測(cè)路徑。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述檢測(cè)模塊804可以包括如下子模塊:
檢測(cè)信息獲取子模塊,用于針對(duì)每個(gè)檢測(cè)路徑,獲取所述檢測(cè)路徑中的一個(gè)或多個(gè)葉子節(jié)點(diǎn)表征的檢測(cè)信息;
候選檢測(cè)結(jié)果獲取子模塊,用于按照當(dāng)前葉子節(jié)點(diǎn)表征的檢測(cè)信息進(jìn)行檢測(cè),獲得候選檢測(cè)結(jié)果;
葉子節(jié)點(diǎn)查找子模塊,用于查找邏輯關(guān)系與所述候選檢測(cè)結(jié)果匹配的下一葉子節(jié)點(diǎn),返回調(diào)用候選檢測(cè)結(jié)果獲取子模塊,直至執(zhí)行至最終的葉子節(jié)點(diǎn);
檢測(cè)結(jié)果設(shè)置子模塊,用于將最終的葉子節(jié)點(diǎn)的候選檢測(cè)結(jié)果設(shè)置為檢測(cè)結(jié)果。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜可以通過(guò)調(diào)用以下模塊生成:
工單數(shù)據(jù)獲取模塊,用于獲取一個(gè)或多個(gè)類別的第一工單數(shù)據(jù);每個(gè)第一工單數(shù)據(jù)中包括故障信息與檢測(cè)信息;
公共特征詞提取模塊,用于針對(duì)每類第一工單數(shù)據(jù),從所述檢測(cè)信息中提取公共特征詞,作為特征向量;
故障譜模型學(xué)習(xí)模塊,用于針對(duì)每類第一工單數(shù)據(jù),學(xué)習(xí)所述故障信息與所述特征向量之間的邏輯關(guān)系,獲得每類故障譜模型;
故障譜模型修剪模塊,用于對(duì)每類故障譜模型進(jìn)行修剪處理,獲得每類故障譜。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述公共特征詞提取模塊702可以包括如下子模塊:
第一分詞處理模塊,用于對(duì)所述檢測(cè)信息進(jìn)行分詞處理,獲得一個(gè)或多個(gè)第一分詞;
詞頻統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述第一分詞的詞頻;
權(quán)重計(jì)算模塊,用于通過(guò)所述第一分詞的詞頻計(jì)算所述第一分詞的權(quán) 重;
第一分詞提取子模塊,用于按照所述權(quán)重提取至少部分第一分詞作為公共特征詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述公共特征詞提取模塊還可以包括如下子模塊:
匹配子模塊,用于采用所述一個(gè)或多個(gè)第一分詞在預(yù)置的停用詞庫(kù)中進(jìn)行匹配;
移除子模塊,用于移除匹配成功的第一分詞。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊可以包括如下子模塊:
子樹查找子模塊,用于在所述故障譜模型中查找相同的子樹;所述子樹為一個(gè)或多個(gè)葉子節(jié)點(diǎn)的集合;
連接子模塊,用于在查找到時(shí),將相同的子樹的父節(jié)點(diǎn)連接至其中一個(gè)子樹;
第一修剪子模塊,用于在相同的子樹中,剪去已連接的子樹之外的其他的子樹。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊還可以包括如下子模塊:
第二修剪子模塊,用于按照預(yù)設(shè)的剪枝方式對(duì)所述故障譜模型進(jìn)行修剪處理。
在本申請(qǐng)的一種優(yōu)選實(shí)施例中,所述故障譜模型修剪模塊還可以包括如下子模塊:
第三修剪子模塊,用于從所述故障譜模型剪去邏輯關(guān)系不合法的葉子節(jié)點(diǎn)。
對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說(shuō)明即可。
本說(shuō)明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請(qǐng)實(shí)施例的實(shí)施例可提供為方法、裝置、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)實(shí)施例可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)實(shí)施例可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
在一個(gè)典型的配置中,所述計(jì)算機(jī)設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非持續(xù)性的電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
本申請(qǐng)實(shí)施例是參照根據(jù)本申請(qǐng)實(shí)施例的方法、終端設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、 專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備上,使得在計(jì)算機(jī)或其他可編程終端設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程終端設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本申請(qǐng)實(shí)施例的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本申請(qǐng)實(shí)施例范圍的所有變更和修改。
最后,還需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者終端設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者終端設(shè)備中還存在另外的相同要素。
以上對(duì)本申請(qǐng)所提供的一種故障譜的生成方法、一種基于故障譜的檢測(cè) 方法、一種故障譜的生成裝置和一種基于故障譜的檢測(cè)裝置,進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。