一種知識庫構(gòu)建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計算機(jī)技術(shù)與電力專業(yè)交叉的研究領(lǐng)域,具體涉及一種針對電力系統(tǒng)的知識庫構(gòu)建方法。
【背景技術(shù)】
[0002]在監(jiān)控軟件系統(tǒng),特別是電力軟件監(jiān)控系統(tǒng)中,現(xiàn)場工作人員運行維護(hù)著集成度、復(fù)雜度越來越高的設(shè)備及系統(tǒng),當(dāng)其出現(xiàn)故障時,除非經(jīng)驗特別豐富的運維人員,故障的定位、分析、排除等過程變得異常復(fù)雜與漫長,進(jìn)而造成運維成本的提高,系統(tǒng)工作效率的下降。因此為工作人員提供一種高效、即席的智能知識庫系統(tǒng),以提高對類似場景的處理效率變得尤為關(guān)鍵。當(dāng)前的知識庫系統(tǒng)、專家系統(tǒng)得到了廣泛的研究和發(fā)展,但是在應(yīng)用中也存在著一定問題:
[0003]1)在知識表達(dá)層面,傳統(tǒng)的基于規(guī)則的方式可視作經(jīng)過萃取的知識,而直接提取知識不僅花費大量時間,而且容易受到專家本身的不精確性影響。而將成功案例記錄在專家系統(tǒng)中,但這種原生案例一般容量較大,且存在信息冗余。
[0004]2)在規(guī)則的推導(dǎo)方面,需要專家提出規(guī)則,而許多情況下沒有真正的專家存在;前項限制條件較多,且規(guī)則庫過于復(fù)雜,很多情況下難以從知識庫中尋找與當(dāng)前問題條件最匹配的一個案例。
[0005]3)在檢索效率方面,在某些情況下選取超大空間的列舉屬性或者數(shù)字屬性,此時該屬性值的選取,需要大量樣本以及復(fù)雜的運算,會導(dǎo)致系統(tǒng)搜索時間過長不能滿足知識庫系統(tǒng)的對效率方面的要求。
【發(fā)明內(nèi)容】
[0006]針對現(xiàn)有技術(shù)在知識表達(dá)、規(guī)則推導(dǎo)、檢索效率等方面存在的問題,本發(fā)明的目的是通過設(shè)計基于統(tǒng)計的知識庫分詞引擎、基于倒排表的知識庫構(gòu)建及統(tǒng)一的知識庫服務(wù)訪問等關(guān)鍵模塊,提供一種準(zhǔn)確、高效、可擴(kuò)展和應(yīng)用性良好的知識庫構(gòu)建方法。
[0007]為了實現(xiàn)上述目的,本發(fā)明提供了一種知識庫構(gòu)建方法,其特征在于,包括如下步驟:
[0008]A、接收原始信息的輸入,類型包含標(biāo)準(zhǔn)數(shù)據(jù)和經(jīng)驗數(shù)據(jù);
[0009]B、將原始信息引入基于字符串匹配和基于統(tǒng)計的分詞程序進(jìn)行預(yù)處理;
[0010]C、根據(jù)信息的類型,基于分詞引擎提取的特征詞,分別采用倒排表的方法構(gòu)建特征項到文檔的索引表,采用最小割集方法建立約簡的規(guī)則樹,并將倒排表和規(guī)則樹進(jìn)行存儲;
[0011]D、在對知識的訪問時,對存儲的倒排表和規(guī)則樹進(jìn)行知識匹配,返回使用者規(guī)程信息和相關(guān)的經(jīng)驗信息。
[0012]本發(fā)明中,分詞引擎承擔(dān)構(gòu)建知識庫之前的預(yù)處理工作,及應(yīng)用階段檢索關(guān)鍵字的解析工作。本發(fā)明的分詞引擎結(jié)合自動分詞的結(jié)合基于字符串匹配的分詞方法和基于統(tǒng)計的分詞方法,發(fā)揮匹配分詞切分速度快、效率高的特點,又利用了無詞典分詞結(jié)合上下文識別生詞、自動消除歧義的優(yōu)點。
[0013]本發(fā)明中,根據(jù)知識的類型和特點不同,分為標(biāo)準(zhǔn)知識和經(jīng)驗知識。標(biāo)準(zhǔn)知識的載體是靜態(tài)知識如相關(guān)規(guī)程、導(dǎo)則、制度等,具有規(guī)范化、電子化、分類化的特點,相對比較系統(tǒng)和固化。經(jīng)驗知識則是歷史記錄信息和運維人員任務(wù)執(zhí)行信息的匯總,是對日常工作和典型故障狀況的發(fā)生、處理的過程進(jìn)行綜合分析和知識提煉,具有可擴(kuò)展性方面的特點和要求。標(biāo)準(zhǔn)知識庫的內(nèi)容解析是根據(jù)文檔類型生成不同的解析器,以提取文檔的文字內(nèi)容作為分詞引擎的輸入。正向索引過程分析文檔過程包括提取正文信息和把正文信息切分為索引詞兩個階段。標(biāo)準(zhǔn)知識庫構(gòu)建的核心環(huán)節(jié)是將相關(guān)文檔進(jìn)行資料集成、建立索引以備將來查詢檢索高層應(yīng)用。其包括文檔的內(nèi)容解析,利用前面所述的分詞引擎進(jìn)行索引提取、正向索引的排序和反向索引表的構(gòu)建等步驟。
[0014]知識庫中的經(jīng)驗知識庫部分,存儲的更多是典型場景的故障處理流程與經(jīng)驗數(shù)據(jù),傳統(tǒng)的數(shù)據(jù)的表示最終采取的措施作為頂事件,在此之前需要找出系統(tǒng)內(nèi)部可能發(fā)生的部件失效、環(huán)境變化、人為失誤等因素與系統(tǒng)失效的特征。因此,此種類型的知識庫數(shù)據(jù)結(jié)構(gòu)的利用方式是需要“逐步推導(dǎo)”:先從葉子節(jié)點進(jìn)行匹配,然后根據(jù)故障特征進(jìn)行逐步推導(dǎo),直到推導(dǎo)到頂事件為止。本發(fā)明將傳統(tǒng)的推導(dǎo)方法進(jìn)行擴(kuò)展,以提高推導(dǎo)效率和實現(xiàn)模糊匹配。通過最小割集可以建立各種征兆(底事件)與結(jié)論(頂事件)的直接聯(lián)系。經(jīng)驗知識庫中的規(guī)則都是最小割集為征兆(條件)到結(jié)論的形式,將推理過程進(jìn)行約簡和壓縮。針對傳統(tǒng)規(guī)則樹需要多次推導(dǎo)匹配苛刻的問題,通過最小割集可以建立各種征兆(底事件)與結(jié)論(頂事件)的直接聯(lián)系。建立征兆(條件)到結(jié)論的“一步”推導(dǎo)的方式。
[0015]本發(fā)明中,知識庫的服務(wù)包含知識查詢、知識獲取、知識發(fā)現(xiàn)、知識維護(hù)及知識使用功能,實現(xiàn)了知識數(shù)據(jù)的全過程管理。
[0016]知識庫的輸入源包括兩方面:
[0017]1)知識庫的維護(hù):知識庫構(gòu)建的初始過程,來自規(guī)范、標(biāo)準(zhǔn)以及歷史經(jīng)驗等知識源進(jìn)行匯總、提煉和入庫;并對知識庫內(nèi)的知識點進(jìn)行增加、刪除、修改等操作;
[0018]2)知識發(fā)現(xiàn):通過接口自動獲取外部的運行維護(hù)數(shù)據(jù),并對知識獲取過程中的資源進(jìn)行提煉和挖掘,形成有效的知識點,并存儲到知識庫。
[0019]知識庫的輸出主要為用戶提供知識檢索接口,知識庫系統(tǒng)通過接口采集到用戶檢索關(guān)鍵詞,并調(diào)用分詞引擎進(jìn)行分詞和特征提取,并交由知識查詢模塊進(jìn)行知識推理和規(guī)則匹配,分別在經(jīng)驗知識庫和標(biāo)準(zhǔn)知識庫中進(jìn)行不同的匹配和檢索:在檢索標(biāo)準(zhǔn)知識庫時,推理機(jī)將關(guān)鍵字相關(guān)的規(guī)范、標(biāo)準(zhǔn)章節(jié)上下文按照匹配度閾值進(jìn)行結(jié)果篩選、提取和匯總;在檢索經(jīng)驗知識庫時,對故障處理知識正向規(guī)則和反向規(guī)則進(jìn)行檢索,對規(guī)則進(jìn)行抽取。最終將兩類結(jié)果,按照匹配度的排名為使用者進(jìn)行推送。也就是說,在內(nèi)部智能化對用戶檢索的關(guān)鍵字進(jìn)行匹配,將與關(guān)鍵字相關(guān)的規(guī)范、標(biāo)準(zhǔn)章節(jié)上下文,已經(jīng)歷史經(jīng)驗數(shù)據(jù),按照匹配度的排名進(jìn)行推送。
[0020]本發(fā)明的方法不但將靜態(tài)信息如電網(wǎng)相關(guān)規(guī)程、導(dǎo)則、制度等固化、系統(tǒng)化的信息入庫,同時將日常工作和典型故障相關(guān)的處理經(jīng)驗數(shù)據(jù),建立用于智能檢索的知識庫,以便于工作人員能有效利用歷史經(jīng)驗和相關(guān)規(guī)程及時處理現(xiàn)場問題,極大提高工作效率。
[0021]根據(jù)本發(fā)明另一【具體實施方式】,步驟A具體包括如下步驟:
[0022]A1、采用流的方式讀入文檔中的每一個句子S ;
[0023]A2、對于S采用正向減字最大匹配算法,生成正向匹配輸出列表SList 1 ;
[0024]A3、對于S采用反向減字最大匹配算法,生成反向匹配輸出列表SList2 ;
[0025]A4、將SListl與翻轉(zhuǎn)后的SList2進(jìn)行比較;
[0026]A5、如果兩者不同,則計算SListl和SList2的出現(xiàn)概率,計算完畢后,將概率較大的SList,存入OutPutList中;否則,將SList的結(jié)果存入最終的結(jié)果OutputList中;
[0027]A6、輸出分詞的結(jié)果:0utputList。
[0028]根據(jù)本發(fā)明另一【具體實施方式】,步驟A2包括如下步驟:
[0029]A2a、將S從左向右以MaxLen為界選出候選字串csl ;
[0030]A2b、如果csl為空,則說明句子S已經(jīng)處理完畢,跳轉(zhuǎn)到步驟A3 ;
[0031]A2c、如果csl在詞典中,將csl放入到正向匹配輸出列表SListl中,并跳轉(zhuǎn)到步驟A2a處理下一個長為MaxLen的候選字段;
[0032]A2d、將csl最右邊一個字去掉,如果不為單字,跳轉(zhuǎn)到上一步;否則csl放入到正向匹配輸出列表SListl中。
[0033]根據(jù)本發(fā)明另一【具體實施方式】,步驟A3包括如下步驟:
[0034]A3a、將S從右向左以MaxLen為界選出候選字串cs2 ;
[0035]A3b、如果cs2為空,則說明句子S已經(jīng)處理完畢,跳轉(zhuǎn)到A4 ;
[0036]A3c、如果cs2在詞典中,將cs2放入到反向匹配輸出列表SList2中,并跳轉(zhuǎn)到步