一種基于種子的錯(cuò)別字混淆集生成方法
【專利摘要】一種基于種子錯(cuò)別字混淆集的生成方法,包括以下步驟:1)建立錯(cuò)別字混淆集圖。根據(jù)種子錯(cuò)別字混淆集,建立錯(cuò)別字混淆集圖;2)利用錯(cuò)別字混淆集圖,算法自動發(fā)現(xiàn)和挖掘錯(cuò)別字之間的規(guī)律,自動添加錯(cuò)別字混淆集;3)錯(cuò)別字混淆集中同音字錯(cuò)別字的自動生成,對漢字的同音錯(cuò)別字進(jìn)行自動添加;4)錯(cuò)別字混淆集中非同音字錯(cuò)別字的自動生成,根據(jù)形相似等特征和錯(cuò)別字混淆集圖,對漢字的非同音錯(cuò)別字進(jìn)行自動添加。
【專利說明】一種基于種子的錯(cuò)別字混淆集生成方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)領(lǐng)域中的自然語言處理,特別是利用基于種子和錯(cuò)別字圖的方 法來自動建立錯(cuò)別字混淆集,有效的降低人工量,生成的錯(cuò)別字混淆集有效的應(yīng)用于漢語 文本自動校對系統(tǒng)中。
【背景技術(shù)】
[0002] 隨著信息處理技術(shù)和互聯(lián)網(wǎng)的高速發(fā)展,傳統(tǒng)的文本工作幾乎全部被計(jì)算機(jī)所取 代,電子書、電子報(bào)紙、電子郵件、辦公文件等電子文本、博客、微博等都成為人們?nèi)粘I?的一部分,然而文本錯(cuò)別字也越來越多,這給校對工作帶來了很大的挑戰(zhàn)。傳統(tǒng)的人工校對 效率低、強(qiáng)度大、周期長顯然不能滿足文本校對的需求。因此,需要研究文本自動校對技術(shù), 而漢語文本自動校對中錯(cuò)別字混淆集是一種非常重要的資源,它的合理性和完備性是文本 自動校對技術(shù)的有效性的一個(gè)重要因素。
[0003] 由于漢語計(jì)算機(jī)文本是通過音碼輸入法(如搜狗拼音輸入法)和形碼輸入法(比如 五筆輸入法),因此音相似和形相似是漢字錯(cuò)別字的主要特征,如果錯(cuò)別字混淆集如果只是 通過音相似算法或形相似算法生成,會生成出很多非常不合理的混淆集,會導(dǎo)致自動校對 系統(tǒng)非常高的誤報(bào)率。如果完全通過人工去過濾,由于人工的主觀性,也會得到一些不合理 的混淆集及漏掉合理的混淆集,并且工作量非常巨大。因此本案中研究一種方法,根據(jù)種子 錯(cuò)別字混淆集自動發(fā)現(xiàn)錯(cuò)別字的規(guī)律,通過算法來自動添加和驗(yàn)證。
[0004] 在本方法中,需要解決以下問題:
[0005] (1)根據(jù)錯(cuò)別字種子,建立種子錯(cuò)別字混淆集圖。錯(cuò)別字混淆集圖能有效的反映錯(cuò) 別字混淆集中的關(guān)系。
[0006] (2)通過對錯(cuò)別字圖的分析,定義一些統(tǒng)計(jì)量來刻畫錯(cuò)別字,利用這些定義的統(tǒng)計(jì) 量和規(guī)則來對錯(cuò)別字關(guān)系進(jìn)行自動添加;
[0007] (3)對自動添加的錯(cuò)別字進(jìn)行驗(yàn)證,如果通過驗(yàn)證,則加入到錯(cuò)別字混淆集中,如 果沒有通過驗(yàn)證刪除添加的關(guān)系。從而生成合理的錯(cuò)別字混淆集。
[0008] 針對上述三個(gè)問題,本發(fā)明提出并且實(shí)現(xiàn)了一種基于種子的錯(cuò)別字混淆集的生成 方法。
【發(fā)明內(nèi)容】
[0009] 所要解決的技術(shù)問題:針對以上問題本發(fā)明提供一種可以有效對錯(cuò)別字種子混淆 集進(jìn)行自動添加和驗(yàn)證的一種基于種子的錯(cuò)別字混淆集生成方法。
[0010] 本發(fā)明根據(jù)錯(cuò)別字種子,建立種子錯(cuò)別字混淆集圖,并且根據(jù)錯(cuò)別字混淆集圖,定 義錯(cuò)別字混淆集圖的統(tǒng)計(jì)量。
[0011] 本發(fā)明通過種子錯(cuò)別字混淆集圖和統(tǒng)計(jì)量,利用自動化過程自動添加錯(cuò)別字混淆 集。
[0012] 本發(fā)明對已添加的錯(cuò)別字混淆集進(jìn)行自動驗(yàn)證。
[0013] 技術(shù)方案:為了解決以上問題本發(fā)明提供了一種基于種子錯(cuò)別字混淆集的生成方 法,其特征在于:包括以下步驟 :
[0014] 步驟1)根據(jù)種子錯(cuò)別字混淆集建立錯(cuò)別字混淆集圖,錯(cuò)別字混淆集圖是一個(gè)二元 組構(gòu)成Typo_CG=(S,E),其中Σ即為種子錯(cuò)別字混淆集本身,每個(gè)元素也稱為漢字節(jié)點(diǎn), 簡稱節(jié)點(diǎn)或漢字,E是有向邊的集合,有向邊e=〈Vi,V,表示漢字V i指向漢字 '的邊,即漢 字Vi可能寫錯(cuò)成漢字 ',在有向邊e中,Vi稱為正字,'稱為Vi的錯(cuò)別字;
[0015] 步驟2)利用錯(cuò)別字混淆集圖,算法自動發(fā)現(xiàn)和挖掘錯(cuò)別字之間的規(guī)律,自動添加 錯(cuò)別子混渚集;
[0016] 步驟3)錯(cuò)別字混淆集中同音字錯(cuò)別字的自動生成,對漢字的同音錯(cuò)別字進(jìn)行自動 添加;
[0017] 步驟4)錯(cuò)別字混淆集中非同音字錯(cuò)別字的自動生成,根據(jù)形相似等特征和錯(cuò)別字 混淆集圖,對漢字的非同音錯(cuò)別字進(jìn)行自動添加。
[0018] 所述的步驟2在錯(cuò)別字混淆集圖Typo_CG中施行以下步驟:
[0019] 步驟21)依次遍歷錯(cuò)別字混淆集圖中的漢字節(jié)點(diǎn)V,直到所有的節(jié)點(diǎn)都被遍歷則 結(jié)束;
[0020] 步驟22)獲取漢字節(jié)點(diǎn)V及其混淆集中的漢字的字頻權(quán)重,我們利用以下方法來 定義漢字節(jié)點(diǎn)V的字頻權(quán)重λ v : ^ _ η * freq{V)
[_] ' 1>喊) i=l
[0022] 其中式η為漢字的總數(shù),freq (V)是漢字節(jié)點(diǎn)V的字頻,我們通過大規(guī)模語料訓(xùn)練 而得;
[0023] 步驟23)計(jì)算漢字節(jié)點(diǎn)V及其混淆集中的漢字的常見度,通過常見度來判斷漢字 節(jié)點(diǎn)V以及其混淆集中的漢字是否是常見字和生僻字;
[0024] -個(gè)漢字節(jié)點(diǎn)V的常見度fv通過以下來進(jìn)行計(jì)算: rmwi ^ Λ , Indgree(V) + Outdgreeiy) L0025」 々=< ¥ ---
[0026] λ v為漢字節(jié)點(diǎn)V的字頻權(quán)重,Indegree (V),Outdegree (V)為漢字節(jié)點(diǎn)V的錯(cuò)別 字入度和錯(cuò)別字出度;
[0027] 如果fv > α,α為一閾值α > 1,α取2. 97,則漢字V是常見字;
[0028] 如果fv < β,β為一小閾值0 < β < 1,β取0. 1,則漢字V是生僻字;
[0029] 步驟24)通過以下過程來對種子錯(cuò)別字混淆集圖進(jìn)行自動添加,添加過程如下:
[0030] (1)如果三個(gè)漢字¥1,¥2,%互為雙向錯(cuò)別字,并且存在邊〈¥ 1,>、〈¥2、¥>,則在錯(cuò) 別字圖中添加漢字V3指向漢字V的邊<v 3, V〉,
[0031] (2)如果漢字V是一個(gè)常見字,即fv> α,而漢字Vi為一生僻字,即fv< β,并且 錯(cuò)別字圖中存在邊〈V,Vi>,則從錯(cuò)別字混淆集圖Typo_CG中刪除該邊。
[0032] 所述的步驟3在錯(cuò)別字混淆集圖Typo_CG中施行以下步驟:
[0033] 步驟31)遍歷種子錯(cuò)別字混淆集圖中的每個(gè)漢字節(jié)點(diǎn)V,直到所有的節(jié)點(diǎn)都被遍 歷則結(jié)束;
[0034] 步驟32)根據(jù)漢字拼音求得漢字V的同音字集合SameSpelling(V) = IV1, V2……}
[0035] 步驟33)遍歷漢字V的同音字集合SameSpeIling(V),依次取出同音字集合中的漢 字V i,轉(zhuǎn)向步驟34),直到同音字集合中的漢字都被遍歷,轉(zhuǎn)向步驟31);
[0036] 步驟34)如果V與Vi是雙向錯(cuò)別字,如果存在漢字節(jié)點(diǎn)Vj, Vk,使得存在邊〈Vy VjX 邊〈V」,Vk>,邊〈Vi,Vk>,且不存在邊〈V,VK>,則添加邊〈V,V k>表示V可以錯(cuò)成Vk ;添加完成 后轉(zhuǎn)向步驟33);否則轉(zhuǎn)向步驟35);
[0037] 步驟35)計(jì)算漢字V以及漢字\的同音字權(quán)重,轉(zhuǎn)向步驟36),計(jì)算方法如下:
【權(quán)利要求】
1. 一種基于種子錯(cuò)別字混淆集的生成方法,其特征在于:包括以下步驟: 步驟1)根據(jù)種子錯(cuò)別字混淆集建立錯(cuò)別字混淆集圖,錯(cuò)別字混淆集圖是一個(gè)二元組構(gòu) 成Typo_CG=(S,E),其中Σ即為種子錯(cuò)別字混淆集本身,每個(gè)元素也稱為漢字節(jié)點(diǎn),簡稱 節(jié)點(diǎn)或漢字,E是有向邊的集合,有向邊e=〈Vi,V,表示漢字Vi指向漢字 '的邊,即漢字Vi 可能寫錯(cuò)成漢字 ',在有向邊e中,Vi稱為正字,'稱為Vi的錯(cuò)別字; 步驟2)利用錯(cuò)別字混淆集圖,算法自動發(fā)現(xiàn)和挖掘錯(cuò)別字之間的規(guī)律,自動添加錯(cuò)別 字混淆集; 步驟3)錯(cuò)別字混淆集中同音字錯(cuò)別字的自動生成,對漢字的同音錯(cuò)別字進(jìn)行自動添 加; 步驟4)錯(cuò)別字混淆集中非同音字錯(cuò)別字的自動生成,根據(jù)形相似等特征和錯(cuò)別字混淆 集圖,對漢字的非同音錯(cuò)別字進(jìn)行自動添加。
2. 根據(jù)權(quán)利要求1所述的一種基于種子的錯(cuò)別字混淆集的生成方法,其特征在于:所 述的步驟2在錯(cuò)別字混淆集圖Typo_CG中施行以下步驟: 步驟21)依次遍歷錯(cuò)別字混淆集圖中的漢字節(jié)點(diǎn)V,直到所有的節(jié)點(diǎn)都被遍歷則結(jié)束; 步驟22)獲取漢字節(jié)點(diǎn)V及其混淆集中的漢字的字頻權(quán)重,我們利用以下方法來定義 漢字節(jié)點(diǎn)V的字頻權(quán)重λv :
其中式η為漢字的總數(shù),freq(V)是漢字節(jié)點(diǎn)V的字頻,我們通過大規(guī)模語料訓(xùn)練而 得; 步驟23)計(jì)算漢字節(jié)點(diǎn)V及其混淆集中的漢字的常見度,通過常見度來判斷漢字節(jié)點(diǎn)V以及其混淆集中的漢字是否是常見字和生僻字; 一個(gè)漢字節(jié)點(diǎn)V的常見度fv通過以下來進(jìn)行計(jì)算:
λv為漢字節(jié)點(diǎn)V的字頻權(quán)重,Indegree(V),Outdegree(V)為漢字節(jié)點(diǎn)V的錯(cuò)別字入 度和錯(cuò)別字出度; 如果fv >α,α為一閾值,α> 1,α取2. 97,則漢字V是常見字; 如果fv <β,β為一小閾值,〇 <β< 1,β取〇. 1,則漢字V是生僻字; 步驟24)通過以下過程來對種子錯(cuò)別字混淆集圖進(jìn)行自動添加,添加過程如下: (1) 如果三個(gè)漢字V1,V2,V3互為雙向錯(cuò)別字,并且存在邊〈VpV〉、<V2、V〉,則在錯(cuò)別字 圖中添加漢字V3指向漢字V的邊<V3,V〉, (2) 如果漢字V是一個(gè)常見字,即fv >α,而漢字Vi為一生僻字,即fv <β,并且錯(cuò)別 字圖中存在邊〈V,ViX則從錯(cuò)別字混淆集圖Typo_CG中刪除該邊。
3. 根據(jù)權(quán)利要求1所述的一種基于種子錯(cuò)別字混淆集的生成方法,其特征在于:所述 的步驟3在錯(cuò)別字混淆集圖Typo_CG中施行以下步驟: 步驟31)遍歷種子錯(cuò)別字混淆集圖中的每個(gè)漢字節(jié)點(diǎn)V,直到所有的節(jié)點(diǎn)都被遍歷則 結(jié)束; 步驟32)根據(jù)漢字拼音求得漢字V的同音字集合SameSpelling(V) =IV1,V2……} 步驟33)遍歷漢字V的同音字集合SameSpeIling(V),依次取出同音字集合中的漢字Vi,轉(zhuǎn)向步驟34),直到同音字集合中的漢字都被遍歷,轉(zhuǎn)向步驟31); 步驟34)如果V與Vi是雙向錯(cuò)別字,如果存在漢字節(jié)點(diǎn)',Vk,使得存在邊〈Vp'>,邊 〈',Vk>,邊〈Vi,Vk>,且不存在邊〈V,VK>,則添加邊〈V,Vk>表示V可以錯(cuò)成Vk;添加完成后轉(zhuǎn) 向步驟33);否則轉(zhuǎn)向步驟35); 步驟35)計(jì)算漢字V以及漢字Vi的同音字權(quán)重,轉(zhuǎn)向步驟36),計(jì)算方法如下:
其中qv是漢字V在作為同音字入度,λv為漢字V的字頻權(quán)重; 步驟36)如果dv>δ且5 5為小于1的值,取值為〇. 992,并且不存在邊〈V,V, 或邊〈Vi,V〉,則在Typo_CG中添加邊〈V,V,或邊〈Vi,V〉,使得Vi與V是雙向錯(cuò)別字;添加 成功后轉(zhuǎn)向步驟33);否則轉(zhuǎn)向步驟37); 步驟37)通過形相似算法,求得V與Vi的形相似度ShapeSimilarity(V,Vi),如果ShapeSimilarity(V,Vi)>φ,Q<φ<\,ρ取 0· 68,并且不存在邊〈V,V,或邊 〇1,>,則添加邊〈¥,,或邊〈¥1,>,使得¥ 1與¥是雙向錯(cuò)別字;轉(zhuǎn)向步驟33);否則轉(zhuǎn)向 步驟38); 步驟38)求得漢字V與漢字Vi共同的錯(cuò)別字集為S1=IVmV12^1MV1J,,V同時(shí)作 為一些漢字集的錯(cuò)別字S2= {V21,V22,. . .,V2J表示,同音字集合S= {Vn,Vi2,. . .,VJ,若 --2^,0〈λ〈1,λ取值為〇.25,不存在邊〈V,Vi>或邊〈Vi,V>,則添加邊〈V,Vi> 或邊〈Vi,V〉,使得Vi與V是雙向錯(cuò)別字,轉(zhuǎn)向步驟33)。
4.根據(jù)權(quán)利要求1所述的一種基于種子的錯(cuò)別字混淆集的生成方法,其特征在于:所 述的步驟4在錯(cuò)別字混淆集圖Typo_CG中施行以下步驟: 步驟41)遍歷圖中的每一個(gè)漢字節(jié)點(diǎn)V; 步驟42)取得字形相似表中字形相似度ShapeSimilarity(V,Vi) >p的漢字Vi,依次 計(jì)算漢字間的形相似錯(cuò)誤度ShapeED(V,Vi),計(jì)算方法如下:
其中ShapeSimilarity(V^i)為字形相似度、Indegree(V)為漢字V的錯(cuò)別字入度、Outdegree(V)為漢字V的錯(cuò)別字出度、λV為漢字V的字頻權(quán)重,4種因素對總的相似度影 響的大小順序?yàn)椋鹤中蜗嗨贫取靛e(cuò)別字入度=錯(cuò)別字出度〉漢字字頻;所以對A、w2、w3、W4 的選取上依照下面的原則:WPw2=WPw4 ;¥1、¥2、'\¥3、'\¥4都為大于0小于1的閾值,取值為 :¥1=1, W2=W3=O. 6,Wq=O. 3 ; 步驟43)判斷ShapeED(V,Vi)>θ,θ>〇,本案實(shí)驗(yàn)中Θ取為L5,則V與ViS雙向錯(cuò) 別字,若不存在V指向Vi的邊〈V,V,或不存在Vi的指向V的邊〈Vi,v>則在錯(cuò)別字混淆集 圖Typo_CG中添加邊〈V,V,或〈Vi,V〉。
【文檔編號】G06F17/27GK104462054SQ201310435002
【公開日】2015年3月25日 申請日期:2013年9月23日 優(yōu)先權(quán)日:2013年9月23日
【發(fā)明者】劉亮亮, 符建輝, 施恒利, 王石 申請人:鎮(zhèn)江諾尼基智能技術(shù)有限公司