本發(fā)明涉及互聯(lián)網(wǎng)信息處理技術(shù)領域,具體而言,涉及一種人物關系識別方法及裝置和分詞方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,尤其是基于互聯(lián)網(wǎng)的各種社交媒體的發(fā)展,目前針對社會關系網(wǎng)絡的研究已逐漸成為了當下的熱點。人們每天通過各種互聯(lián)網(wǎng)社交媒體發(fā)布各種各樣的信息,這些信息在有意或無意中可能含有信息提供者或其他人的相關信息。上述相關信息不僅可以包括如:人名、家庭地址、工作地址、電話等真實社會屬性信息;也可以包括如:電子郵件、微信號、QQ號等虛擬身份屬性信息;同時也可能包括人物間的相互稱謂等社會關系信息。
因此,可以以互聯(lián)網(wǎng)上信息為輸入,對上述輸入信息進行處理后生成一張以人物為節(jié)點的社會關系交互圖,該社會關系交互圖中可以含有人物真實社會身份屬性和虛擬身份屬性,關系含有稱謂信息。
但就現(xiàn)有技術(shù)而言,現(xiàn)有的人物關系交互圖的實現(xiàn)具有運算量大、運算效率低、耗費時間長及實現(xiàn)難度高等缺點。
技術(shù)實現(xiàn)要素:
為了克服現(xiàn)有技術(shù)中的上述不足,本發(fā)明實施例的目的在于提供一種用于構(gòu)造運算量小、運算效率高、耗時少且實現(xiàn)難度較低的人物關系交互圖的人物關系識別方法及裝置和分詞方法,以改善現(xiàn)有技術(shù)中人物關系交互圖實現(xiàn)時暴露出的問題,向用戶提供豐富而準確的人物關系信息。
就人物關系識別方法而言,本發(fā)明較佳的實施例提供了一種人物關系識別方法。所述方法包括:
將輸入的文本進行分詞處理得到分詞結(jié)果,所述分詞結(jié)果包括分詞及分詞在所述文本中所對應的位置信息;
根據(jù)預設的詞性模型對所述分詞結(jié)果中分詞進行詞性標注,確認每個分詞在文本中對應的詞性;
根據(jù)所述分詞在對應文本中的位置信息及詞性,確定所述分詞在單一句子中所對應的語法成分,生成語法樹;
根據(jù)所述分詞結(jié)果及語法樹,按照預設的分詞篩選規(guī)則,提取滿足所述預設的分詞篩選規(guī)則的分詞,生成實體集;
對所述實體集與所述語法樹進行對比和模型模擬,生成實體關系圖;
根據(jù)所述實體關系圖得到人物關系圖。
就人物關系識別裝置而言,本發(fā)明較佳的實施例提供了一種人物關系識別裝置。所述裝置包括:
分詞模塊,用于將輸入的文本進行分詞處理得到分詞結(jié)果,所述分詞結(jié)果包括分詞及分詞在所述文本中所對應的位置信息;
詞性標注模塊,用于根據(jù)預設的詞性模型對所述分詞結(jié)果中分詞進行詞性標注,確認每個分詞在文本中對應的詞性;
語義解析模塊,用于根據(jù)所述分詞在對應文本中的位置信息及詞性信息,確定所述分詞在單一句子中所對應的語法成分,生成語法樹;
實體識別模塊,用于根據(jù)所述分詞結(jié)果及語法樹,按照預設的分詞篩選規(guī)則,提取滿足所述預設的分詞篩選規(guī)則的分詞,生成實體集;
指代消解模塊,用于對所述實體集與所述語法樹進行對比和模型模擬,生成實體關系圖;
人物關系圖生成模塊,用于根據(jù)所述實體關系圖得到人物關系圖。
就分詞方法而言,本發(fā)明較佳的實施例提供了一種分詞方法,應用于上述的人物關系識別裝置。所述方法包括:
讀取字典文件,根據(jù)所述字典文件生成前綴樹;
獲取待處理的文本,將所述待處理的文本切分為多個語句,生成句子集;
對所述句子集中的語句進行分詞處理;
判斷所述句子集中是否還有未分詞完成的語句;
當所述句子集中還有未分詞完成的語句時,采用所述前綴樹對所述語句進行循環(huán)遍歷查找分詞;
當所述語句中存在未被分詞的部分時,提取所述語句中未被分詞的部分,通過隱含馬爾可夫模型對所述未被分詞的部分進行分詞處理,得到分詞結(jié)果,并返回所述判斷所述句子集中是否還有未分詞完成的語句的步驟繼續(xù)執(zhí)行,直到所述句子集中的所有語句分詞完成。
相對于現(xiàn)有技術(shù)而言,本發(fā)明實施例提供的人物關系識別方法及裝置和分詞方法具有以下有益效果:所述方法通過對輸入文本進行分詞處理,并對分詞處理后得到的分詞進行詞性和語法信息的標注,提取所述分詞中符合預設的分詞篩選規(guī)則的分詞,讓所述分詞與語法樹進行對比和模型模擬,指代生成實體關系圖,得到人物關系圖。所述方法相對于現(xiàn)有技術(shù)中人物關系圖的構(gòu)建過程具有運算量小、運算效率高、耗時少且實現(xiàn)難度較低的特點。
為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉本發(fā)明較佳實施例,并配合所附附圖,作詳細說明如下。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應被看作是對范圍的限定,對于本領域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關的附圖。
圖1為本發(fā)明較佳實施例提供的服務器與至少一用戶終端進行通信的交互示意圖。
圖2為圖1所示的服務器的方框示意圖。
圖3為本發(fā)明較佳實施例提供的圖2中所示的人物關系識別裝置的一種功能模塊框圖。
圖4為本發(fā)明較佳實施例的一種實施方式提供的圖2中所示的人物關系識別裝置的一種功能模塊框圖。
圖5為本發(fā)明較佳實施例的另一種實施方式提供的圖2中所示的人物關系識別裝置的一種功能模塊框圖。
圖6為本發(fā)明較佳實施例提供的人物關系識別方法的一種流程示意圖。
圖7為本發(fā)明較佳實施例的一種實施方式提供的人物關系識別方法的一種流程示意圖。
圖8為本發(fā)明較佳實施例的另一種實施方式提供的人物關系識別方法的一種流程示意圖。
圖9為本發(fā)明較佳實施例提供的一種分詞方法的一種流程示意圖。
圖10為圖9中步驟S350的子步驟的流程示意圖。
圖11為圖9中步驟S360的子步驟的流程示意圖。
圖12為本發(fā)明較佳實施例提供的一種分詞方法的另一種流程示意圖。
圖標:10-服務器;20-用戶終端;30-網(wǎng)絡;11-存儲器;12-處理器;13-通信單元;100-人物關系識別裝置;110-分詞模塊;120-詞性標注模塊;130-語義解析模塊;140-實體識別模塊;150-指代消除模塊;160-人物關系圖生成模塊;170-詞性模型訓練模塊;180-語法模型訓練模塊。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。通常在此處附圖中描述和示出的本發(fā)明實施例的組件可以以各種不同的配置來布置和設計。
因此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例?;诒景l(fā)明中的實施例,本領域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步定義和解釋。
在本發(fā)明的描述中,需要說明的是,術(shù)語“下”、“后”等指示的方位或位置關系為基于附圖所示的方位或位置關系,或者是該發(fā)明產(chǎn)品使用時慣常擺放的方位或位置關系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對本發(fā)明的限制。此外,術(shù)語“第一”僅用于區(qū)分描述,而不能理解為指示或暗示相對重要性。
對于本領域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。
下面結(jié)合附圖,對本發(fā)明的一些實施方式作詳細說明。在不沖突的情況下,下述的實施例及實施例中的特征可以相互組合。
請參照圖1,是本發(fā)明較佳實施例提供的服務器10與至少一用戶終端20進行通信的交互示意圖。所述用戶終端20可通過網(wǎng)絡30訪問服務器10,以使用服務器10提供的人物關系識別服務。本實施例中,所述服務器10可以是,但不限于,web(網(wǎng)站)服務器。所述用戶終端20可以是,但不限于,智能手機、個人電腦(personal computer,PC)、平板電腦、個人數(shù)字助理(personal digital assistant,PDA)、移動上網(wǎng)設備(mobile Internet device,MID)等。所述網(wǎng)絡30可以是,但不限于,有線網(wǎng)絡或無線網(wǎng)絡。
請參照圖2,是圖1所示的服務器10的方框示意圖。所述服務器10可以包括人物關系識別裝置100、存儲器11、處理器12、及通信單元13。
所述存儲器11、處理器12以及通信單元13各個元件相互之間直接或間接地電性連接,以實現(xiàn)數(shù)據(jù)的傳輸或交互。例如,這些元件相互之間可通過一條或多條通訊總線或信號線實現(xiàn)電性連接。
其中,所述存儲器11可以是,但不限于,隨機存取存儲器(Random Access Memory,RAM),只讀存儲器(Read Only Memory,ROM),可編程只讀存儲器(Programmable Read-Only Memory,PROM),可擦除只讀存儲器(Erasable Programmable Read-Only Memory,EPROM),電可擦除只讀存儲器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存儲器11用于存儲程序,所述處理器12在接收到執(zhí)行指令后,執(zhí)行所述程序。所述通信單元13用于通過所述網(wǎng)絡30建立所述服務器10與用戶終端20之間的通信連接,并用于通過所述網(wǎng)絡30收發(fā)數(shù)據(jù)。
所述人物關系識別裝置100包括至少一個可以軟件或固件(firmware)的形式存儲于所述存儲器11中或固化在所述服務器10的操作系統(tǒng)(operating system,OS)中的軟件功能模塊。所述處理器12用于執(zhí)行所述存儲器11中存儲的可執(zhí)行模塊,例如所述人物關系識別裝置100所包括的軟件功能模塊及計算機程序等。本實施例中,所述人物關系識別裝置100為服務器10提供針對不同用戶的人物關系識別服務,具體的方法在后續(xù)進行詳細說明。本實施例中,所述人物關系識別裝置100可以是服務器10提供的關系識別引擎或者屬于該關系識別引擎的一部分(如該關系識別引擎的其中一個功能模塊)。所述關系識別引擎是指根據(jù)一定的策略、運用計算機程序從網(wǎng)絡30(如互聯(lián)網(wǎng))上搜集人物之間的相關信息,在對相關信息進行組織和處理后,得到人物關系交互圖,為用戶提供人物關系識別服務,將用戶需要查找的人物的相關信息(例如人名、家庭地址、工作地址、電子郵件、微信號、QQ號等)展示給用戶的系統(tǒng)。
可以理解的是,圖2所示的結(jié)構(gòu)僅為服務器10的結(jié)構(gòu)示意圖,所述服務器10還可包括比圖2中所示更多或者更少的組件,或者具有與圖2所示不同的配置。圖2中所示的各組件可以采用硬件、軟件或其組合實現(xiàn)。
請參照圖3,是本發(fā)明較佳實施例提供的圖2中所示的人物關系識別裝置100的一種功能模塊框圖。所述人物關系識別裝置100包括分詞模塊110、詞性標注模塊120、語義解析模塊130、實體識別模塊140、指代消除模塊150及人物關系圖生成模塊160。
所述分詞模塊110用于將輸入的文本進行分詞處理得到分詞結(jié)果,所述分詞結(jié)果包括分詞及分詞在所述文本中所對應的位置信息。
具體地,所述分詞處理為根據(jù)預設分詞策略將所述輸入的文本分隔為多個詞的過程,其中,預設分詞策略可以采用現(xiàn)有成熟的分詞策略,也可以根據(jù)實際需求對其進行相應的調(diào)整。所述分詞結(jié)果包括經(jīng)過上述分詞處理后得到的各個分詞及各個分詞在所述輸入的文本中所述對應的位置信息。
在本實施例中,所述分詞處理可以采用后續(xù)描述的分詞方法進行分詞。
所述詞性標注模塊120用于根據(jù)預設的詞性模型對所述分詞結(jié)果中分詞進行詞性標注,確認每個分詞在文本中對應的詞性。
在自然語言處理領域中,若要對一個自然語句進行深入研究,一般都需要對出現(xiàn)在文本中的各詞語詞性進行分析,確認詞語在文本中相應的詞性。具體地,在本實施例中,對所述分詞結(jié)果中的分詞進行詞性標注,確認每個分詞在文本中對應的詞性,可方便對人物關系識別的后續(xù)工作。所述詞性可以是,但不限于,名詞、代詞、動詞、形容詞、數(shù)詞、副詞等。
所述語義解析模塊130用于根據(jù)所述分詞在對應文本中的位置信息及詞性,確定所述分詞在單一句子中所對應的語法成分,生成語法樹。
在自然語言處理領域中,對一個自然語句進行深入研究,除了需要對出現(xiàn)在文本中的各詞語詞性進行分析外,還需對各詞語在文本中相對應的語法信息進行了解分析。所述語法成分可以是,但不限于,主語、狀語、謂語、賓語等。
具體地,在本實施例中,使用預設的語法信息模型得到單一句子中各分詞所對應的語法信息概率取值,選擇各分詞對應語法信息概率取值中的最大概率取值作為各分詞對應的輸出的語法信息。
所述實體識別模塊140用于根據(jù)所述分詞結(jié)果及語法樹,按照預設的分詞篩選規(guī)則,提取滿足所述預設的分詞篩選規(guī)則的分詞,生成實體集。
具體地,所述預設的分詞篩選規(guī)則為用戶根據(jù)實際需求設定的挑選滿足用戶需求的分詞的規(guī)則。在本實施例中,所述預設的分詞篩選規(guī)則為針對生成人物關系交互圖所需的相應信息進行挑選的規(guī)則。所述相應信息不僅可以包括如:人物姓名、家庭地址、工作地址、電話等真實社會屬性信息;也可以包括如:電子郵件、微信號、QQ號等虛擬身份屬性信息;同時也可能包括人物間的相互稱謂等社會關系信息。
所述指代消除模塊150用于對所述實體集與所述語法樹進行對比和模型模擬,生成實體關系圖。
具體地,所述對比和模型模擬為對實體集內(nèi)的實體與該實體在語法樹中可能對應的語法信息進行對比選擇和將實體帶有相應的語法信息置入語句之中進行模擬,形成代詞指代關系模型的過程,進而判斷實體集中實體對應的合適的語法信息,判斷實體是否存在相應的代詞指代關系。
在本實施例中,所述指代消除模塊150對所述實體集與所述語法樹進行對比和模型模擬,生成實體關系圖的方式包括:
將所述實體集內(nèi)的實體與所述實體在語法樹中對應的語法信息進行對比,判斷所述實體在語法樹中的語法結(jié)構(gòu)成分,判斷所述實體是否存在對應的代詞指代關系;
當所述實體存在對應的代詞指代關系時,將所述代詞與其被指代的實體從文本中抽取出來,通過遍歷文本中實體的方式,將同一實體所對應的不同代詞進行還原,生成實體關系圖。
具體地,所述語法樹是以計算機組織方法由自然語言中的語法結(jié)構(gòu)表述而成一種樹形結(jié)構(gòu),該結(jié)構(gòu)嚴格遵守主謂賓、主系表等語法規(guī)則。依照自然語言結(jié)構(gòu)規(guī)則,判斷實體在語法樹中所擔任的語法結(jié)構(gòu)成分,判斷其是否存在對應的代詞指代關系。將代詞的原始表述形式,如:你、我、他、她等,同其被指代的實體詞從原始文檔中抽取出來,然后再在此基礎上遍歷實體詞,將同一實體詞所對應的不同代詞形式一一還原,即可生成實體關系。再根據(jù)生成的實體關系,得到相應的實體關系圖。所述實體包括上述的相關信息。
所述人物關系圖生成模塊160用于根據(jù)所述實體關系圖得到人物關系圖。
具體地,利用有向圖的模式對所述實體關系圖進行信息的梳理總結(jié),基于人物與人物之間、人物與物品之間、物品與物品之間的信息聯(lián)系生成人物關系圖。所述人物關系圖表述了人物與人物之間、人物與物品之間、物品與物品之間的關系。
請參照圖4,在本實施例的一種較佳實施方式中,所述人物關系識別裝置100還可以包括:詞性模型訓練模塊170。
所述詞性模型訓練模塊170用于對預設的詞性模型進行訓練。在本實施方式中,所述詞性模型訓練模塊170對預設的詞性模型進行訓練的方式可以包括:
讀取已標注詞性的詞性語料集,對所述詞性語料集中每個詞在不同的詞序列中的詞性進行統(tǒng)計分析,得到詞性集;
對所述詞性集進行分析計算,得到每個詞在不同的詞序列中對應的詞性出現(xiàn)概率,以生成所述詞性模型。
具體地,所述詞性語料集為一種存放著已經(jīng)標注了相應詞性的可在語言的實際使用中真實出現(xiàn)過的語言材料的以電子計算機為載體承載語言知識的基礎資源。訓練詞性模型便是對該詞性語料集中每個詞在不同的詞序列中對應的詞性出現(xiàn)概率的總結(jié),可方便人物關系圖的建立。
請參照圖5,在本實施例的另一種較佳實施方式中,所述人物關系識別裝置100還可以包括:語法模型訓練模塊180。
所述語法模型訓練模塊180用于對預設的語法信息模型進行訓練。在本實施方式中,所述語法模型訓練模塊180對預設的語法信息模型進行訓練的方式可以包括:
讀取已標注語法的語法語料集,對所述語法語料集中每個詞在不同的詞序列中的語法信息進行統(tǒng)計分析,得到語法信息集;
對所述語法信息集進行分析計算,得到每個詞在不同的詞序列中對應出現(xiàn)的語法信息概率,以生成所述語法信息模型。
具體地,所述語法語料集與所述詞性語料集類似,所述語法語料集為一種存放著已經(jīng)標注了相應語法信息的可在語言的實際使用中真實出現(xiàn)過的語言材料的以電子計算機為載體承載語言知識的基礎資源。訓練語法信息模型便是對每個詞在不同的詞序列中對應出現(xiàn)的語法信息概率的總結(jié),可以提高所述人物關系圖的構(gòu)建效率。
請參照圖6,本發(fā)明較佳的實施例提供一種人物關系識別方法的具體流程示意圖,以下對上述方法的具體流程進行描述。
在本實施例中,所述人物關系識別方法可以包括以下步驟:
步驟S210,將輸入的文本進行分詞處理得到分詞結(jié)果,所述分詞結(jié)果包括分詞及分詞在所述文本中所對應的位置信息。
在本實施例中,所述步驟S210由圖3中所示的分詞模塊110執(zhí)行,所述步驟S210詳細描述可以參照對所述分詞模塊110的具體描述。
步驟S220,根據(jù)預設的詞性模型對所述分詞結(jié)果中分詞進行詞性標注,確認每個分詞在文本中對應的詞性。
在本實施例中,所述步驟S220由圖3中所示的詞性標注模塊120執(zhí)行,所述步驟S220詳細描述可以參照對所述詞性標注模塊120的具體描述。
步驟S230,根據(jù)所述分詞在對應文本中的位置信息及詞性,確定所述分詞在單一句子中所對應的語法成分,生成語法樹。
在本實施例中,所述步驟S230由圖3中所示的語義解析模塊130執(zhí)行,所述步驟S230詳細描述可以參照對所述語義解析模塊130的具體描述。
步驟S240,根據(jù)所述分詞結(jié)果及語法樹,按照預設的分詞篩選規(guī)則,提取滿足所述預設的分詞篩選規(guī)則的分詞,生成實體集。
在本實施例中,所述步驟S240由圖3中所示的實體識別模塊140執(zhí)行,所述步驟S240詳細描述可以參照對所述實體識別模塊140的具體描述。
步驟S250,對所述實體集與所述語法樹進行對比和模型模擬,生成實體關系圖。
在本實施例中,所述步驟S250由圖3中所示的指代消除模塊150執(zhí)行,所述步驟S250詳細描述可以參照對所述指代消除模塊150的具體描述。
具體地,所述步驟S250可以包括:
將實體集內(nèi)的實體與所述實體在語法樹中對應的語法信息進行對比,判斷所述實體在語法樹中的語法結(jié)構(gòu)成分,判斷所述實體是否存在對應的代詞指代關系;
當所述實體存在對應的代詞指代關系時,將所述代詞與其被指代的實體從文本中抽取出來,通過遍歷文本中實體的方式,將同一實體所對應的不同代詞進行還原,生成實體關系圖。
步驟S260,根據(jù)所述實體關系圖得到人物關系圖。
在本實施例中,所述步驟S260由圖3中所示的人物關系圖生成模塊160執(zhí)行,所述步驟S260詳細描述可以參照對所述人物關系圖生成模塊160的具體描述。
請參照圖7,所述人物關系識別方法還可以包括:
步驟S208,對預設的詞性模型進行訓練。
在本實施例中,所述步驟S208由圖4中所示的詞性模型訓練模塊170執(zhí)行,所述步驟S208詳細描述可以參照對所述詞性模型訓練模塊170的具體描述。
請參照圖8,所述人物關系識別方法還可以包括:
步驟S209,對預設的語法信息模型進行訓練。
在本實施例中,所述步驟S209由圖5中所示的語法模型訓練模塊180執(zhí)行,所述步驟S209詳細描述可以參照對所述語法模型訓練模塊180的具體描述。
請參照圖9,本發(fā)明較佳的實施例提供一種分詞方法的一種流程示意圖,所述分詞方法應用于上述的人物關系識別裝置,以下對上述方法的具體流程進行描述。
在本實施例中,所述分詞方法可以包括以下步驟:
步驟S310,讀取字典文件,根據(jù)所述字典文件生成前綴樹。
具體地,字典文件是計算機中預先定義好的常用詞語數(shù)據(jù)庫,而生成前綴樹的過程就是把計算機中預先定義好的字典文件表述為內(nèi)存空間占用少、數(shù)據(jù)查詢速度快的成樹狀的計算機內(nèi)存結(jié)構(gòu)。在本實施例中,從硬盤中讀取所述字典文件。
步驟S320,獲取待處理的文本,將所述待處理的文本切分為多個語句,生成句子集。
具體地,以中文的句子分隔符和文本文件換行符為標識將所述待處理的文本分成多個語句,所述句子分隔符可以是,但不限于,句號、嘆號、問號、分號等。
步驟S330,對所述句子集中的語句進行分詞處理。
具體地,所述分詞處理的步驟可以包括后續(xù)的步驟S350及步驟360。
步驟S340,判斷所述句子集中是否還有未分詞完成的語句。
具體地,當所述句子集中沒有未分詞完成的語句時,結(jié)束整個分詞過程,完成了對待處理文本的分詞處理。
當所述句子集中有未分詞完成的語句時,繼續(xù)執(zhí)行后續(xù)的步驟S350及步驟S360,直到整個句子集中再無未分詞完成的語句為止。
步驟S350,采用所述前綴樹對所述語句進行循環(huán)遍歷查找分詞。
具體地,請參照圖10,所述步驟S350可以包括:
子步驟S351,以語句開頭第一個文字為開始在所述前綴樹中查找以所述第一個文字開始的詞。
子步驟S352,如果查找成功,在所述前綴樹中查找以所述查找成功的文字為起點,以所述語句中距離查找成功的文字對應詞的長度的文字為開始的詞。
子步驟S353,如果查找失敗,從所述語句中查找失敗的文字的后一個文字開始在所述前綴樹中查找以所述文字開始的詞。
具體地,假設一個句子集用{Si}表示,其中Si(i=1、2、3、……、n)分別表示著句子集中相應的一個句子。所述循環(huán)遍歷查找分詞便是從1到n依次從句子集中取出一個句子,然后對該句子進行查找,完成分詞。
在本實施例中,假設一個句子的長度為L,則查找分詞的步驟可具體為:
從該長度為L的句子開頭的第一個文字開始,在前綴樹中查找以該文字開始的詞。
如果該詞能在所述句子上找到相應的位置,即所述句子上相應的位置上的文字組成的詞與所述的詞相同的話,即為查找成功,然后在所述前綴樹中查找以所述查找成功的文字為起點,以所述語句中距離查找成功的文字對應詞的長度的文字為開始的詞。
具體地,假設查找到的詞的長度為l,該詞開頭第一文字在所述句子中對應的位置為a點,則在長度為L的句子中,從a點所對應的位置開始向后移動長度為l的距離,到達b點位置,找到該句子中b點位置對應的文字,然后在前綴樹中繼續(xù)查找以b點位置上的文字為開始的詞。
如果該詞不能在所述句子上找到相應的位置,即所述句子上相應的位置上的文字組成的詞與所述的詞不同的話,即為查找失敗,然后從所述語句中查找失敗的文字的后一個文字開始在所述前綴樹中查找以所述文字開始的詞,所述文字為查找失敗的文字后面的那一個文字。
具體地,如果查找失敗對應在長度為L的句子上的位置為c點的話,那么就是從c點開始向后移動一個文字的位置,即c點后面一個文字的位置開始在前綴樹中查找以所述文字為開始的詞,所述文字為c點后面的一個文字。
步驟S360,當所述語句中存在未被分詞的部分時,提取所述語句中未被分詞的部分,通過隱含馬爾可夫模型對所述未被分詞的部分進行分詞處理,得到分詞結(jié)果。
具體地,所述語句表示的是句子集中經(jīng)歷了步驟S350后的語句。
請參照圖11,所述步驟S360可以包括:
根據(jù)隱含馬爾可夫模型結(jié)合維特比算法從提取出的所述語句部分中找到一個隱藏狀態(tài)序列;
根據(jù)模式匹配算法匹配出所述隱藏狀態(tài)序列中以起始字開始,結(jié)束字結(jié)束的詞語,或者單獨成詞的詞語;
將匹配出的所述詞語組成一個集合,得到所述分詞結(jié)果。
具體地,維特比算法是一種用于尋找最有可能產(chǎn)生目標觀察序列維特比路徑(隱含狀態(tài)序列)的動態(tài)規(guī)劃算法。
給定的隱含馬爾可夫模型的各個參數(shù)如下:
狀態(tài)空間S={B(詞語的起始字),E(詞語的結(jié)束字),M(詞語的中間字),S(單獨成詞)};
大小為4的初始概率數(shù)組p,其中pi(i=B,E,M,S)是狀態(tài)初始值為B,E,M,S的概率;
觀察值空間O{O1,O2,……,On}(n為模型中不重復的字的個數(shù));
A為4×4的轉(zhuǎn)移矩陣,把從狀態(tài)Si到狀態(tài)Sj(i,j=B,E,M,S)的轉(zhuǎn)移概率記為aij;
B為4×N的混淆矩陣,其中bij表示在狀態(tài)Si的前提下觀察到Oj的概率,令觀察到的輸出值為Y={y1,y2,……,yt},稱X={x1,x2,……,xt}為生成觀察值Y={y1,y2,……,yt}的狀態(tài)序列。
其核心計算如下:
V1,k=P(y1|k)×pk
Vt,k=P(yt|k)×max(axk×Vt-1,x)
其中Vt,k是前t個最終狀態(tài)為k的觀察結(jié)果最有可能對應的狀態(tài)序列的概率。通過記錄第二個等式中所用到的狀態(tài)x的轉(zhuǎn)化軌跡便可獲得維特比路徑,也就得到了隱藏狀態(tài)序列。
模式匹配算法是單獨的一種常用計算機算法。從目標序列的第一個狀態(tài)起與模式序列的第一個狀態(tài)比較,若相等,則繼續(xù)對序列進行后續(xù)的比較,否則目標序列從第二個狀態(tài)起與模式序列的第一個狀態(tài)重新比較,直至模式序列中的每個狀態(tài)依次和目標序列中的一個連續(xù)的狀態(tài)序列相等為止,此時稱為匹配成功,否則匹配失敗。
通過運用維特比算法、模式匹配算法及隱含馬爾可夫模型對所述語句中還未進行分詞處理的部分進行分詞,可對句子集進行更細致的分詞,分詞效率更高,便于解決現(xiàn)有技術(shù)中人物關系圖的構(gòu)造過程中的技術(shù)問題。
在本實施例中,所述分詞方法還包括,在步驟S360完成之后返回步驟S340,判斷句子集中是否還有未分詞完成的語句,然后依次執(zhí)行下去,直到所述句子集中的所有語句分詞完成。
請參照圖12,本發(fā)明較佳的實施例提供的分詞方法的另一種流程示意圖。所述方法還可以包括:
步驟S307,獲取訓練樣本,對所述訓練樣本的第一個文字進行統(tǒng)計分析,得到初始狀態(tài),其中,所述初始狀態(tài)為所述第一個文字在句中作為起始字的概率、中間字的概率、結(jié)束字的概率或單字成詞的概率。
具體地,通過對訓練樣本中的句子的第一個文字屬于詞語的起始文字、詞語的結(jié)束字、詞語的中間字或單字成詞等四個狀態(tài)進行統(tǒng)計,如文本開頭的第一個文字只可能為詞語的首字(B)或者單字成詞(S)的狀態(tài),得到文本的初始狀態(tài),所述初始狀態(tài)即為句子的第一個文字是屬于{B,E,M,S}這四種狀態(tài)的概率。
步驟S308,對所述訓練樣本中各個狀態(tài)下的文字所對應的下一狀態(tài)進行統(tǒng)計,計算所述下一狀態(tài)的出現(xiàn)概率,得到轉(zhuǎn)移矩陣,并根據(jù)各狀態(tài)下不同文字的出現(xiàn)概率,生成混淆矩陣。
所述下一狀態(tài)即為與文字相連的下一文字所對應的狀態(tài)。具體地,步驟S307中生成的初始狀態(tài)的集合中只含有B,E,M,S四種狀態(tài),所以對訓練樣本中各個狀態(tài)所對應的下一狀態(tài)進行統(tǒng)計,計算其出現(xiàn)概率,得到轉(zhuǎn)移矩陣值。而從B轉(zhuǎn)移到B的概率為0,即不存在具有兩個連續(xù)起始字狀態(tài)的詞語,符合狀態(tài)集的設定含義,B狀態(tài)的下一狀態(tài)只能為M或E。因此,轉(zhuǎn)移矩陣即為一個4×4的二維矩陣,其中部分轉(zhuǎn)移概率為0。
而以字為單位遍歷整個訓練樣本,然后統(tǒng)計所有的文在組成的詞中所屬于的B,E,M,S四種狀態(tài)的概率,進而生成一個4*m的矩陣,該矩陣便為混淆矩陣。其中,m表示不重復的文字的個數(shù)。具體的相關參數(shù)可參照步驟S360詳細描述中的隱含馬爾可夫模型的相關參數(shù)。
步驟S309,根據(jù)所述轉(zhuǎn)移矩陣和混淆矩陣生成隱含馬爾可夫模型。
具體地,通過對文字的現(xiàn)有狀態(tài)和下一狀態(tài)的概率進行統(tǒng)計,找到訓練文件中文字與文字之間關于概率的聯(lián)系,從而生成隱含馬爾可模型。
綜上所述,本發(fā)明實施例提供的人物關系識別方法及裝置和分詞方法。所述方法通過對輸入文本進行分詞處理,并對分詞處理后得到的分詞進行詞性和語法信息的標注,提取所述分詞中符合預設的分詞篩選規(guī)則的分詞,讓所述分詞與語法樹進行對比和模型模擬,指代生成實體關系圖,得到人物關系圖。所述方法相對于現(xiàn)有技術(shù)中人物關系圖的構(gòu)建過程具有運算量小、運算效率高、耗時少且實現(xiàn)難度較低的特點。
在本發(fā)明實施例所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,也可以通過其它的方式實現(xiàn)。以上所描述的裝置和方法實施例僅僅是示意性的,例如,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的裝置、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)方式中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的裝置來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一起形成一個獨立的部分,也可以是各個模塊單獨存在,也可以兩個或兩個以上模塊集成形成一個獨立的部分。
所述功能如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,電子設備,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。