一種基于圖書目錄的知識圖譜的構(gòu)建方法
【專利摘要】本發(fā)明公開了一種基于圖書目錄的知識圖譜的構(gòu)建方法。它抽取數(shù)字化圖書中的目錄頁,區(qū)分目錄中條目長度,將長條目用自然語言處理工具進(jìn)行詞性標(biāo)注得到詞性數(shù)組,利用連詞、標(biāo)點和詞性規(guī)則提取出候選節(jié)點,然后與短條目一起,去百度百科、互動百科中鑒定并利用目錄結(jié)構(gòu)形成上下級關(guān)系和并列關(guān)系,作為知識圖譜的骨架,同時區(qū)分出強(qiáng)弱并列關(guān)系,分別作為增量補充進(jìn)上下級關(guān)系,并根據(jù)以后綴為基礎(chǔ)的挖掘噪聲數(shù)據(jù)的算法,從未通過百科鑒定的條目中選取出節(jié)點補充進(jìn)知識圖譜,最后,對補充完的知識圖譜中的關(guān)系,算其權(quán)重再進(jìn)行排序,從而篩選掉噪聲。本發(fā)明比目前已有的知識圖譜有更豐富的節(jié)點,更好的可擴(kuò)展性,及更高的準(zhǔn)確率。
【專利說明】一種基于圖書目錄的知識圖譜的構(gòu)建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及利用計算機(jī)人工智能、數(shù)據(jù)挖掘等方法進(jìn)行知識圖譜的生成,尤其涉及一種基于圖書目錄的知識圖譜的構(gòu)建方法。
【背景技術(shù)】
[0002]計算機(jī)快速發(fā)展和普及的今天,為了更方便地、更清晰地獲取信息、學(xué)習(xí)知識,以及分析挖掘知識間的聯(lián)系演化過程,越來越需要一個內(nèi)容、層次豐富,準(zhǔn)確性高,并且易于擴(kuò)展的知識圖譜,而如何構(gòu)建這一知識圖譜則自然地成為了當(dāng)前研究的熱點。
[0003]目前的中文的知識圖譜有HowNet、互動百科知識樹、CNKI分類,但是它們各自存在局限性以及各種問題。
[0004]HowNet是有中國科學(xué)院董振東先生開發(fā)的,以漢語和英語的詞語所代表的概念為描述對象,以揭示概念與概念之間以及概念所具有的屬性之間的關(guān)系為基本內(nèi)容的常識知識庫。具體來說,Hownet中節(jié)點大部分為通俗的詞匯,層次并不能做深,相對而言節(jié)點數(shù)量少、關(guān)系少,且需要由人工生成。
[0005]互動百科知識樹是按傳統(tǒng)的百科分類方式,將百科大全分為人物、歷史、文化、藝術(shù)、自然、地理、科學(xué)、經(jīng)濟(jì)、生活、社會、體育、技術(shù)12大客觀分類,每個客觀分類下又逐級劃分為不同的二級分類、三級分類等子類?;影倏浦R樹中結(jié)構(gòu)固定,層次相對不深,且是人工生成,不利于擴(kuò)展。
[0006]CNKI 即中國知識基礎(chǔ)設(shè)施工程(China National Knowledge Infrastructure)。CNKI工程是以實現(xiàn)全社會知識資源傳播共享與增值利用為目標(biāo)的信息化建設(shè)項目,由清華大學(xué)、清華同方發(fā)起,始建于1999年6月。CNKI分類以學(xué)科分類為基礎(chǔ),將數(shù)據(jù)庫中的文獻(xiàn)分為十個專輯,每個專輯下分為若干個專題,共計168個專題。不足之處是層次相對少、節(jié)點間關(guān)系相對稀疏、結(jié)構(gòu)相對固定擴(kuò)展性不好,且是人工生成。
【發(fā)明內(nèi)容】
[0007]本發(fā)明的目的是為克服現(xiàn)有技術(shù)的不足,提供一種基于圖書目錄的自動生成知識圖譜的方法。
[0008]基于圖書目錄的知識圖譜的構(gòu)建方法包括以下步驟:
[0009]I)選擇一本書,將其目錄頁進(jìn)行光學(xué)字符識別實現(xiàn)數(shù)字化,并在數(shù)字化的目錄結(jié)構(gòu)上,按照目錄中條目的長度,區(qū)分出長條目和短條目兩類條目;
[0010]2)對短條目直接作為一批候選節(jié)點,同時將長條目利用開源的自然語言處理工具FudanNLP進(jìn)行詞性標(biāo)注得到詞性數(shù)組,然后利用連詞、標(biāo)點和詞性規(guī)則提取出另外一批候選節(jié)點;
[0011]3)對兩批候選節(jié)點,首先進(jìn)行嚴(yán)格過濾,去百度百科、互動百科中鑒定該詞條存在與否,通過百度百科、互動百科鑒定的部分利用目錄的上下級結(jié)構(gòu)形成上下級關(guān)系,利用目錄的同級結(jié)構(gòu)形成并列關(guān)系,以這兩部分作為知識圖譜的骨架;[0012]4)區(qū)分出強(qiáng)弱并列關(guān)系,從兩種并列關(guān)系中分別選取出節(jié)點,進(jìn)行增量補充進(jìn)上下級關(guān)系,豐富上一步得到的知識圖譜的骨架;
[0013]5)根據(jù)提出的以后綴為基礎(chǔ)的挖掘噪聲數(shù)據(jù)中有用部分的方法,從未通過百度百科、互動百科鑒定的條目中選取出一部分節(jié)點補充進(jìn)知識圖譜中;
[0014]6)對補充完的知識圖譜中的每一條關(guān)系,算其權(quán)重再進(jìn)行排序,從而篩選掉一部分噪聲,實現(xiàn)排序篩選。
[0015]所述的步驟2)如下:
[0016]對句子利用自然語言處理工具去切詞并標(biāo)注詞性,按照頓號和詞性為連詞的并列連接詞去對句子分裂,一個句子分裂出的一個字符串?dāng)?shù)組,
[0017]首先對每一個分裂成的字符串?dāng)?shù)組A中的每一個子字符串A[i],形成對每一個A[i]這樣的子字符串的一個〈單詞,詞性〉的詞性數(shù)組,
[0018]接下來對詞性數(shù)組中相鄰的元素進(jìn)行合并,在合并的過程中對字符串?dāng)?shù)組A中不同位置的字符串采用不同的合并順序,即對字符串?dāng)?shù)組A中的第一個子字符串A[0]的詞性數(shù)組處理時采用由后往前把連續(xù)的形容詞、名詞合并成一個單詞,同時,以A[0]的詞性數(shù)組中最后一個單詞的詞性為基準(zhǔn)詞性 ,利用基準(zhǔn)詞性提高對字符串?dāng)?shù)組A中接下來的字符串,在合并詞性數(shù)組時的準(zhǔn)確率,
[0019]對第二個子字符串A[l]及以后的每一個子字符串的詞性數(shù)組處理時,采用如下方法:
[0020]2.1)若基準(zhǔn)詞性為名詞,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中都由前向后匹配到最后一個詞性為名詞的為止,形成一個單詞,否則不返回結(jié)果;
[0021]2.2)電影、書名知識節(jié)點會加上《》或“ ”符號,則若基準(zhǔn)詞性為標(biāo)定符號,即書名號、引號時,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中都由前向后匹配到最后一個標(biāo)定符號為止,形成一個單詞,否則不返回結(jié)果;
[0022]若基準(zhǔn)詞性不為名詞或者標(biāo)定符號,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中,當(dāng)?shù)谝粋€詞性與基準(zhǔn)詞性匹配,則形成一個單詞,否則不返回結(jié)果;
[0023]對百度百科、互動百科上未收錄的詞,利用歸一化谷歌距離(Normalized GoogleDistance)計算下兩者在一起的凝結(jié)度,在值為O到一個閾值之間的兩節(jié)點被認(rèn)為是一組能被合并吸納的合理的詞,當(dāng)未通過詞性鑒定,為利用詞性規(guī)則合并出來的單詞時,則對其詞性數(shù)組,利用歸一化谷歌距離算出值決定是否收錄,
[0024]
【權(quán)利要求】
1.一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于包括以下步驟: 1)選擇一本書,將其目錄頁進(jìn)行光學(xué)字符識別實現(xiàn)數(shù)字化,并在數(shù)字化的目錄結(jié)構(gòu)上,按照目錄中條目的長度,區(qū)分出長條目和短條目兩類條目; 2)對短條目直接作為一批候選節(jié)點,同時將長條目利用開源的自然語言處理工具FudanNLP進(jìn)行詞性標(biāo)注得到詞性數(shù)組,然后利用連詞、標(biāo)點和詞性規(guī)則提取出另外一批候選節(jié)點; 3)對兩批候選節(jié)點,首先進(jìn)行嚴(yán)格過濾,去百度百科、互動百科中鑒定該詞條存在與否,通過百度百科、互動百科鑒定的部分利用目錄的上下級結(jié)構(gòu)形成上下級關(guān)系,利用目錄的同級結(jié)構(gòu)形成并列關(guān)系,以這兩部分作為知識圖譜的骨架; 4)區(qū)分出強(qiáng)弱并列關(guān)系,從兩種并列關(guān)系中分別選取出節(jié)點,進(jìn)行增量補充進(jìn)上下級關(guān)系,豐富上一步得到的知識圖譜的骨架; 5)根據(jù)提出的以后綴為基礎(chǔ)的挖掘噪聲數(shù)據(jù)中有用部分的方法,從未通過百度百科、互動百科鑒定的條目中選取出一部分節(jié)點補充進(jìn)知識圖譜中; 6)對補充完的知識圖譜中的每一條關(guān)系,算其權(quán)重再進(jìn)行排序,從而篩選掉一部分噪聲,實現(xiàn)排序篩選。
2.根據(jù)權(quán)利要求1所述的 一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于:所述的步驟2)如下: 對句子利用自然語言處理工具去切詞并標(biāo)注詞性,按照頓號和詞性為連詞的并列連接詞去對句子分裂,一個句子分裂出的一個字符串?dāng)?shù)組, 首先對每一個分裂成的字符串?dāng)?shù)組A中的每一個子字符串A[i],形成對每一個A[i]這樣的子字符串的一個〈單詞,詞性 > 的詞性數(shù)組, 接下來對詞性數(shù)組中相鄰的元素進(jìn)行合并,在合并的過程中對字符串?dāng)?shù)組A中不同位置的字符串采用不同的合并順序,即對字符串?dāng)?shù)組A中的第一個子字符串A[0]的詞性數(shù)組處理時采用由后往前把連續(xù)的形容詞、名詞合并成一個單詞,同時,以A[0]的詞性數(shù)組中最后一個單詞的詞性為基準(zhǔn)詞性,利用基準(zhǔn)詞性提高對字符串?dāng)?shù)組A中接下來的字符串,在合并詞性數(shù)組時的準(zhǔn)確率, 對第二個子字符串A[l]及以后的每一個子字符串的詞性數(shù)組處理時,采用如下方法: 2.1)若基準(zhǔn)詞性為名詞,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中都由前向后匹配到最后一個詞性為名詞的為止,形成一個單詞,否則不返回結(jié)果; 2.2)電影、書名知識節(jié)點會加上《》或“ ”符號,則若基準(zhǔn)詞性為標(biāo)定符號,即書名號、弓丨號時,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中都由前向后匹配到最后一個標(biāo)定符號為止,形成一個單詞,否則不返回結(jié)果; 若基準(zhǔn)詞性不為名詞或者標(biāo)定符號,則對A[l]及以后的每一個字符串各自的詞性數(shù)組中,當(dāng)?shù)谝粋€詞性與基準(zhǔn)詞性匹配,則形成一個單詞,否則不返回結(jié)果; 對百度百科、互動百科上未收錄的詞,利用歸一化谷歌距離(Normalized GoogleDistance)計算下兩者在一起的凝結(jié)度,在值為O到一個閾值之間的兩節(jié)點被認(rèn)為是一組能被合并吸納的合理的詞,當(dāng)未通過詞性鑒定,為利用詞性規(guī)則合并出來的單詞時,則對其詞性數(shù)組,利用歸一化谷歌距離算出值決定是否收錄,
3.根據(jù)權(quán)利要求1所述的一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于:所述的步驟3)包括: 3.1)對于每一本書的光學(xué)字符識別處理出的圖書目錄頁中的習(xí)題、實驗、實例這樣的圖書結(jié)構(gòu)化信息,通常會在同一本書中的同一層次的目錄中重復(fù)出現(xiàn)多次,這樣通過對每一層次的目錄建立一個存有〈目錄條目,計數(shù)〉的哈希表就可以統(tǒng)計并篩選出; 3.2)對于目錄條目的長度進(jìn)行限制,只取9個中文字符及以下長度的目錄條目;利用百度百科、互動百科上的詞條,建立出索引,然后在處理目錄中的每一個節(jié)點時,進(jìn)行百度百科、互動百科鑒定,百度百科、互動百科鑒定通過的被收錄; 在處理每一個目錄中的節(jié)點時,利用開源自然語言處理軟件FudanNLP進(jìn)行詞法分析,當(dāng)詞性標(biāo)記為動詞時,則不去收錄; 3.3)對于目錄條目的長度在9個中文字符以上長度的目錄條目,若處理的條目類型為“名詞+連詞+名詞”的類型,采用步驟2.1)、步驟2.2)中對句子中抽取并列關(guān)系的做法即可,然后再和“名詞+連詞+名詞”的上級節(jié)點形成上下級關(guān)系,同時將上下級關(guān)系和并列關(guān)系所在的圖書編號保存下來; 同時,處理時需要保存好每本書的目錄子結(jié)構(gòu),即需要保存兩張表,一張表保存通過上面方法得到的知識節(jié)點及其出現(xiàn)在的圖書編號、頁碼編號,以及知識節(jié)點間上下級關(guān)系和并列關(guān)系出現(xiàn)在的圖書編號,但即便暫時被丟棄的條目也可能是合格的節(jié)點,需要建另一張表將通過的以及未通過的所有的目錄節(jié)點所在的圖書編號、頁碼編號也保存下來,同時將對所有條目形成的每一個上下級關(guān)系和并列關(guān)系所在的圖書編號也保存進(jìn)來,接下來通過計算節(jié)點間相關(guān)性和通過圖書結(jié)構(gòu)進(jìn)行統(tǒng)計后,從被丟棄的條目中找出合理有用的知識節(jié)點,作為增量補充進(jìn)知識圖譜中,同時保存的每個詞條的位置信息可以用于接下來的定義的抽取。
4.根據(jù)權(quán)利要求1所述的一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于:所述的步驟4)包括: 4.1)強(qiáng)弱并列關(guān)系的區(qū)分 對并列關(guān)系出現(xiàn)的次數(shù)進(jìn)行統(tǒng)計,根據(jù)并列關(guān)系出現(xiàn)的絕對頻率進(jìn)行排序,將絕對頻率大于閾值的并列關(guān)系二元組選擇出來作為強(qiáng)并列關(guān)系,絕對頻率小于閾值的并列關(guān)系二元組作為弱并列關(guān)系; 4.2)知識節(jié)點間相關(guān)度 知識節(jié)點間往往具有二義性,在一個由上下級關(guān)系和并列關(guān)系構(gòu)成的數(shù)據(jù)集中,對于節(jié)點間存在的多個上級節(jié)點指向同一個下級節(jié)點的問題,根據(jù)與知識節(jié)點相關(guān)的其他節(jié)點來幫助解決,具體過程如下: .4.2.1)對每一個A — B,利用上下級關(guān)系找到A的一組下級節(jié)點SubA,對這組下級節(jié)點中的每一個節(jié)點EI eOfSubA,利用強(qiáng)并列關(guān)系找到一組并列節(jié)點ParaOfEI eOfSubA,對所有ParaOfEleOfSubA合并形成一個集合Setl ; .4.2.2)對B利用弱并列關(guān)系找到一組并列節(jié)點ParaB,對ParaB中每一個節(jié)點C,依次利用強(qiáng)并列關(guān)系找到一組并列節(jié)點ParaOfParaB,每一個ParaOfParaB作為一個集合Set2 ; .4.2.3)對集合 Setl、集合 Set2,
相關(guān)度 Relevancy=SameElementCount+ (ffeightI +Weight2) *10...SameElementCou nt
5.根據(jù)權(quán)利要求1所述的一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于:所述的步驟5)包括: 當(dāng)同一級目錄下的數(shù)據(jù)中有通過百度百科、互動百科鑒定的條目時,根據(jù)步驟I)保存的目錄子結(jié)構(gòu)和詞條所在的圖書編號、頁碼編號去書中重新把未通過百度百科、互動百科鑒定的數(shù)據(jù)補充進(jìn)去, 當(dāng)一個子目錄中有數(shù)據(jù)通過百度百科、互動百科鑒定后,以后綴為基礎(chǔ)去目錄子結(jié)構(gòu)中挖掘出有用部分,對知識圖譜進(jìn)行補充, 具體方法如下: 通過百度百科、互動百科鑒定的上下級關(guān)系中元素的集合為SetX,對上下級中的每一個A — B,找到出現(xiàn)A — B的所有的圖書編號的列表, 針對每一個圖書編號找到A在該書目錄中的下級節(jié)點的集合SetY, 對SetY與SetX交集中的每一個節(jié)點Node,Node為通過百度百科、互動百科鑒定的部分,在SetY中找出與Node有相同后綴但未通過百度百科、互動百科鑒定的詞條的集合SetZ,如果
percentage=[(|SetX Π SetY )+ SetZ ]/ SetY|>level 則收錄SetY中Node以外余下的所有未通過百度百科、互動百科鑒定的條目,否則,僅收錄SetY中與Node有相同后綴的條目,其中l(wèi)evel為設(shè)定的閾值。
6.根據(jù)權(quán)利要求1所述的一種基于圖書目錄的知識圖譜的構(gòu)建方法,其特征在于:所述的步驟6)包括: 6.1)上下級關(guān)系中清洗 上下級關(guān)系中存在:類型1、冗余關(guān)系,即A — A,類型2、長關(guān)系A(chǔ) — BC被切碎出的短關(guān)系A(chǔ) — B,類型3、循環(huán)的無意義的關(guān)系A(chǔ) — B — A,所以將補充后的上下級關(guān)系重新讀入,并將類型1、類型3篩選掉,將類型2中的短關(guān)系A(chǔ) — B合并歸入到長關(guān)系A(chǔ) — BC中; 6.2、上下級關(guān)系排序 對清洗完的上下級關(guān)系,需要對每一個關(guān)系算出權(quán)重,來表示該關(guān)系的可信度; 將步驟I)至步驟5)產(chǎn)生的上下級關(guān)系按照如下公式算其權(quán)重W' (T — L),然后進(jìn)行排序;丨
【文檔編號】G06F17/27GK103729402SQ201310601668
【公開日】2014年4月16日 申請日期:2013年11月22日 優(yōu)先權(quán)日:2013年11月22日
【發(fā)明者】魯偉明, 張萌, 魏寶剛, 莊越挺 申請人:浙江大學(xué)