本發(fā)明涉及信息處理領域,尤其涉及一種文本修正方法及裝置。
背景技術:
:傳統(tǒng)上人們都是通過打字的方式輸入文本,隨著技術的發(fā)展,又出現(xiàn)了很多新的文本輸入(或者說是文本生成)的方式,例如通過語音識別技術將語音轉(zhuǎn)換為文本,通過OCR技術將圖片中的文字轉(zhuǎn)換成文本,等等。然而無論傳統(tǒng)的打字輸入方式還是新的文本輸入方式,都面臨一個問題,即各種新詞(如網(wǎng)絡詞匯)的不斷涌現(xiàn),給輸入系統(tǒng)或識別系統(tǒng)原有的詞典庫造成了不小的沖擊,因各種新詞而產(chǎn)生的大量同音詞、同義詞、形近詞等嚴重影響了輸入正確率,導致所輸入的文本經(jīng)常會現(xiàn)一些錯誤詞。例如,用戶通過語音輸入一個網(wǎng)絡詞語“醬紫”(意為“這樣子”),在轉(zhuǎn)換成文本時可能會被錯誤地識別成“絳紫”、“降紫”或“降子”等。當檢查發(fā)現(xiàn)有錯誤詞時,在現(xiàn)有技術中,通常的處理手段是用戶將光標移動到錯誤詞所在位置,重新輸入正確詞,將錯誤詞替換掉,或者通過軟件對某個錯誤詞進行通篇的自動查找及替換,從而完成文本修正。然而發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有技術中的這些文本修正方式因為需要用戶一一指出有哪些是錯誤詞,所以效率很低。以上文所提到的“醬紫”一詞為例,當用戶發(fā)現(xiàn)其被錯誤的識別為“絳紫”時,則需要進行一次通篇查找及替換,當用戶又發(fā)現(xiàn)其被錯誤的識別為“絳紫”時,也需要進行一次通篇查找及替換,當用戶又發(fā)現(xiàn)其被錯誤的識別為“降子”時,還需要進行一次通篇查找及替換,換句話說,用戶可能至少需要進行三次通篇查找及替換,才能對“醬紫”一詞的各種錯誤詞進行改正。同時,因為需要人工識別出錯誤詞,所以現(xiàn)有技術的準確率也較低,例如全文中可能還存在“醬紫”的其他錯誤詞,但用戶在檢查過程中未發(fā)現(xiàn),導致出現(xiàn)了遺漏。技術實現(xiàn)要素:本發(fā)明提供一種文本修正方法及裝置,以提高文本修正的效率和準確率。根據(jù)本發(fā)明實施例的第一方面,提供一種文本修正方法,所述方法包括:獲取待修正的文本數(shù)據(jù);獲取正確詞,所述正確詞用于替換所述文本數(shù)據(jù)中與所述正確詞對應的錯誤詞;根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞。可選的,根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞,包括:對所述文本數(shù)據(jù)進行分詞,以將所述文本數(shù)據(jù)切分為多個分詞詞語;將所述正確詞與每個分詞詞語組成詞對;提取每個詞對中正確詞與分詞詞語的相似度,所述相似度包括字形相似度、語義相似度及聲學相似度;根據(jù)每個詞對的相似度及預設的判定模型,獲取每個詞對為目標詞對的概率,所述目標詞對為詞對中的分詞詞語是與所述正確詞對應的錯誤詞的詞對;根據(jù)各詞對的所述概率及預設算法,確定目標詞對;使用所述正確詞在所述文本數(shù)據(jù)中替換所述目標詞對中的分詞詞語??蛇x的,對所述文本數(shù)據(jù)進行分詞之后,將所述正確詞與每個分詞詞語組成詞對之前,所述方法還包括:將分詞后得到的相鄰的兩個單字組合成一個分詞詞語??蛇x的,提取每個詞對中正確詞與分詞詞語的字形相似度,包括:如果當前詞對中的正確詞與分詞詞語的字數(shù)相同,則將正確詞與分詞詞語的每個單字均轉(zhuǎn)換為四角編碼,將正確詞與分詞詞語中各個相應單字的四角編碼相同編碼數(shù)與四角編碼總編碼數(shù)的比值的平均值作為字形相似度;如果當前詞對中的正確詞與分詞詞語的字數(shù)不相同,則將使用動態(tài)規(guī)劃算法獲得的正確詞與分詞詞語的最小編輯距離作為字形相似度??蛇x的,提取每個詞對中正確詞與分詞詞語的語義相似度,包括:對當前詞對中的正確詞與分詞詞語分別進行向量化以得到詞向量;將正確詞與分詞詞語的詞向量之間的距離作為語義相似度??蛇x的,提取每個詞對中正確詞與分詞詞語的聲學相似度,包括:確定當前詞對中的正確詞與分詞詞語在拼音字符轉(zhuǎn)換距離表中的最小編輯距離路徑;根據(jù)所述最小編輯距離路徑上各個拼音字符的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離;根據(jù)所述正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的聲學距離并將所述聲學距離作為聲學相似度。可選的,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,包括:判斷各詞對的所述概率與預設閾值的大小關系;將所述概率大于所述預設閾值的詞對確定為目標詞對??蛇x的,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,包括:根據(jù)各詞對的所述概率對所述詞對進行從大到小的排序;將排在前列的預設數(shù)量的詞對確定為目標詞對??蛇x的,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,包括:在預設詞表中分別使用當前詞對中的正確詞及分詞詞語進行查找,其中所述預設詞表中存儲有正確詞與錯誤詞的正確對應關系;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同,則確定當前詞對是一個目標詞對;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語不同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞也不同,則確定當前詞對不是一個目標詞對;如果僅出現(xiàn)使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同的情況,或者,僅出現(xiàn)使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同的情況,則詢問用戶,并根據(jù)用戶的指示確定當前詞對是否為一個目標詞對。根據(jù)本發(fā)明實施例的第二方面,提供一種文本修正裝置,所述裝置包括:文本獲取模塊,用于獲取待修正的文本數(shù)據(jù);正確詞獲取模塊,用于獲取正確詞,所述正確詞用于替換所述文本數(shù)據(jù)中與所述正確詞對應的錯誤詞;替換模塊,用于根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞??蛇x的,所述替換模塊包括:分詞子模塊,用于對所述文本數(shù)據(jù)進行分詞,以將所述文本數(shù)據(jù)切分為多個分詞詞語;詞對生成子模塊,用于將所述正確詞與每個分詞詞語組成詞對;相似度提取子模塊,用于提取每個詞對中正確詞與分詞詞語的相似度,所述相似度包括字形相似度、語義相似度及聲學相似度;概率獲取子模塊,用于根據(jù)每個詞對的相似度及預設的判定模型,獲取每個詞對為目標詞對的概率,所述目標詞對為詞對中的分詞詞語是與所述正確詞對應的錯誤詞的詞對;目標詞對確定子模塊,用于根據(jù)各詞對的所述概率及預設算法,確定目標詞對;替換子模塊,用于使用所述正確詞在所述文本數(shù)據(jù)中替換所述目標詞對中的分詞詞語。可選的,所述替換模塊還包括:單字組合子模塊,用于將分詞后得到的相鄰的兩個單字組合成一個分詞詞語??蛇x的,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的字形相似度時,用于:如果當前詞對中的正確詞與分詞詞語的字數(shù)相同,則將正確詞與分詞詞語的每個單字均轉(zhuǎn)換為四角編碼,將正確詞與分詞詞語中各個相應單字的四角編碼相同編碼數(shù)與四角編碼總編碼數(shù)的比值的平均值作為字形相似度;如果當前詞對中的正確詞與分詞詞語的字數(shù)不相同,則將使用動態(tài)規(guī)劃算法獲得的正確詞與分詞詞語的最小編輯距離作為字形相似度。可選的,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的語義相似度時,用于:對當前詞對中的正確詞與分詞詞語分別進行向量化以得到詞向量;將正確詞與分詞詞語的詞向量之間的距離作為語義相似度??蛇x的,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的聲學相似度時,用于:確定當前詞對中的正確詞與分詞詞語在拼音字符轉(zhuǎn)換距離表中的最小編輯距離路徑;根據(jù)所述最小編輯距離路徑上各個拼音字符的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離;根據(jù)所述正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的聲學距離并將所述聲學距離作為聲學相似度。可選的,所述概率獲取子模塊用于:判斷各詞對的所述概率與預設閾值的大小關系;將所述概率大于所述預設閾值的詞對確定為目標詞對??蛇x的,所述概率獲取子模塊用于:根據(jù)各詞對的所述概率對所述詞對進行從大到小的排序;將排在前列的預設數(shù)量的詞對確定為目標詞對??蛇x的,所述概率獲取子模塊用于:在預設詞表中分別使用當前詞對中的正確詞及分詞詞語進行查找,其中所述預設詞表中存儲有正確詞與錯誤詞的正確對應關系;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同,則確定當前詞對是一個目標詞對;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語不同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞也不同,則確定當前詞對不是一個目標詞對;如果僅出現(xiàn)使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同的情況,或者,僅出現(xiàn)使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同的情況,則詢問用戶,并根據(jù)用戶的指示確定當前詞對是否為一個目標詞對。本發(fā)明的實施例提供的技術方案可以包括以下有益效果:在本發(fā)明中,當發(fā)現(xiàn)文本中出現(xiàn)文字錯誤時,用戶無需給出任何錯誤詞,只需輸入正確詞即可,系統(tǒng)即自動按照正確詞去查找各個對應的錯誤詞。例如,當用戶發(fā)現(xiàn)文本中出現(xiàn)了將“醬紫”一詞錯誤的寫為“絳紫”及“降子”等時,只需要輸入正確詞即輸入“醬紫”,無需指出對應的錯誤詞是“絳紫”還是“降子”,更無需指出各個錯誤詞的位置,系統(tǒng)即可自動按照正確詞去尋找與之相對應的各個錯誤詞,并自動使用正確詞替換掉所確定的錯誤詞,從而完成了文本修正。因為用戶只需要給出正確詞即可,無需一一指出有哪些錯誤詞,大大提高了修正效率,且還可以避免因為用戶人工查找而可能導致的錯誤詞的遺漏,提高了修正的準確率。應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。附圖說明此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實施例,并與說明書一起用于解釋本發(fā)明的原理。圖1是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖2是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖3是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖4是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖5是根據(jù)本發(fā)明一示例性實施例示出的最小編輯距離路徑的示意圖;圖6是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖7是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖8是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖;圖9是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正裝置的示意圖;圖10是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正裝置的示意圖;圖11是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正裝置的示意圖。具體實施方式這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。圖1是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正方法的流程圖。該方法可用于手機等移動終端以及個人電腦、服務器等設備。參見圖1所示,該方法可以包括:步驟S101,獲取待修正的文本數(shù)據(jù)。所述待修正的文本數(shù)據(jù)可以根據(jù)用戶的需求而確定,對于待修正的文本數(shù)據(jù)的來源本實施例并不進行限制,例如可以是用戶手工輸入的文本,也可以是語音識別得到的文本數(shù)據(jù),或者,是OCR(OpticalCharacterRecognition,光學字符識別)識別得到的文本數(shù)據(jù),等等。步驟S102,獲取正確詞,所述正確詞用于替換所述文本數(shù)據(jù)中與所述正確詞對應的錯誤詞。在本實施例中,當發(fā)現(xiàn)存在文本錯誤時,用戶只需要輸入正確詞即可,無需指出對應的錯誤詞有哪些以及各在什么位置。步驟S103,根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞。對于具體如何根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞,本實施例并不進行限制,下面通過圖2進行舉例說明:參見圖2所示,在本實施例或本發(fā)明其他某些實施例中,根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞,即所述步驟S103,可以包括:步驟S201,對所述文本數(shù)據(jù)進行分詞,以將所述文本數(shù)據(jù)切分為多個分詞詞語。所使用的分詞方法例如可以為基于條件隨機場的分詞方法,對此本實施例并不進行限制。舉例來講,待修正的文本數(shù)據(jù)為“我想去沒過”,得到的分詞結(jié)果為“我想去沒過”,其中“沒過”為錯誤詞,需要修正為“美國”。此外,為了防止分詞時漏掉一些詞,在本實施例中還可以將分詞后得到的相鄰的兩個單字組合成一個分詞詞語,也即依次將前一個單字與后一個單字組合成分詞詞語。例如上面分詞結(jié)果中包含多個連續(xù)單字即“我”、“想”、“去”,將所述單字組合后,得到的分詞詞語為“我想”及“想去”。步驟S202,將所述正確詞與每個分詞詞語組成詞對。例如上例中的正確詞“美國”可以和得到的多個分詞詞語組成以下多個詞對:“美國-我”、“美國-想”、“美國-去”、“美國-沒過”、“美國-我想”、“美國-想去”。步驟S203,提取每個詞對中正確詞與分詞詞語的相似度,所述相似度包括字形相似度、語義相似度及聲學相似度。對于具體如何提取這三種相似度,本實施例并不進行限制,本領域技術人員可以根據(jù)不同需求\不同場景而自行設計,可以在此處使用的這些設計都沒有背離本發(fā)明的精神和保護范圍。步驟S204,根據(jù)每個詞對的相似度及預設的判定模型,獲取每個詞對為目標詞對的概率,所述目標詞對為詞對中的分詞詞語是與所述正確詞對應的錯誤詞的詞對。所述判定模型可以通過預先構(gòu)建得到。例如,可以預先收集大量文本數(shù)據(jù),人工找到文本數(shù)據(jù)中存在的錯誤詞并給出錯誤詞對應的正確詞,將所述正確詞與文本數(shù)據(jù)中分詞后的分詞詞語組成詞對后就可以人工標注每個詞對是否為目標詞對,即是否是真正的“正確詞-錯誤詞”詞對。在具體標注時,可以使用0和1作為標注特征,如果當前詞對為真正的“正確詞-錯誤詞”詞對,則標注為1,否則標注為0。然后,提取每個詞對中兩個詞的相似度,即字形相似度、語義相似度、聲學相似度。最后將所述相似度及標注特征作為訓練數(shù)據(jù),訓練得到該判定模型。具體訓練時,將每個詞對的相似度作為模型的輸入,將每個詞對的標注特征作為模型的輸出,對模型參數(shù)進行更新,參數(shù)更新結(jié)束后,得到判定模型。在使用該判定模型時,可以將每個詞對中兩個詞的相似度作為判定模型的輸入,然后輸出每個詞對為真正的“正確詞-錯誤詞”詞對的概率。步驟S205,根據(jù)各詞對的所述概率及預設算法,確定目標詞對。獲得了各詞對為目標詞對的概率后,就可以根據(jù)預設算法篩選出哪些是真正的目標詞對。對于預設算法的具體內(nèi)容本實施例并不進行限制,本領域技術人員可以根據(jù)不同需求\不同場景而自行設計,可以在此處使用的這些設計都沒有背離本發(fā)明的精神和保護范圍步驟S206,使用所述正確詞在所述文本數(shù)據(jù)中替換所述目標詞對中的分詞詞語。例如正確詞是“美國”,目標詞對是“美國-沒過”,那么即可在文本數(shù)據(jù)全文中使用“美國”去替換“沒過”,從而完成了修正。在本實施例中,當發(fā)現(xiàn)文本中出現(xiàn)文字錯誤時,用戶無需給出任何錯誤詞,只需輸入正確詞即可,系統(tǒng)即自動按照正確詞去查找各個對應的錯誤詞。例如,當用戶發(fā)現(xiàn)文本中出現(xiàn)了將“醬紫”一詞錯誤的寫為“絳紫”及“降子”等時,只需要輸入正確詞即輸入“醬紫”,無需指出對應的錯誤詞是“絳紫”還是“降子”,更無需指出各個錯誤詞的位置,系統(tǒng)即可自動按照正確詞去尋找與之相對應的各個錯誤詞,并自動使用正確詞替換掉所確定的錯誤詞,從而完成了文本修正。因為用戶只需要給出正確詞即可,無需一一指出有哪些錯誤詞,大大提高了修正效率,且還可以避免因為用戶人工查找而可能導致的錯誤詞的遺漏,提高了修正的準確率。下面對如何提取每個詞對中正確詞與分詞詞語的相似度,也即步驟S203,進一步進行舉例說明。在本實施例或本發(fā)明其他某些實施例中,提取每個詞對中正確詞與分詞詞語的字形相似度,具體可以包括:如果當前詞對中的正確詞與分詞詞語的字數(shù)相同,則將正確詞與分詞詞語的每個單字均轉(zhuǎn)換為四角編碼,將正確詞與分詞詞語中各個相應單字的四角編碼相同編碼數(shù)與四角編碼總編碼數(shù)的比值的平均值作為字形相似度。具體計算方法如式(1)所示:T=1n(Σi=1i=nliLi)---(1)]]>其中,T表示詞對中兩個詞的字形相似度,n為詞對中每個詞的字數(shù),li表示兩個詞中第i個字的四角編碼相同編碼數(shù),Li表示兩個詞中第i個字的四角編碼總編碼數(shù)(通常為4)。舉例來講,對于詞對“向去-想去”的字形相似度計算過程如下:“向”的四角編碼為2722“想”的四角編碼為4633第1個字即“向”和“想”的四角編碼總編碼數(shù)均為4,但沒有相同的編碼,而對于第2個字“去”和“去”,這樣根據(jù)公式(1)可算得該詞對的字形相似度為0.5。如果當前詞對中的正確詞與分詞詞語的字數(shù)不相同,則可以將使用動態(tài)規(guī)劃算法獲得的正確詞與分詞詞語的最小編輯距離作為字形相似度。具體實現(xiàn)時可以使用現(xiàn)有技術,此處不再贅述。參見圖3所示,在本實施例或本發(fā)明其他某些實施例中,提取每個詞對中正確詞與分詞詞語的語義相似度,具體可以包括:步驟S301,對當前詞對中的正確詞與分詞詞語分別進行向量化以得到詞向量。步驟S302,將正確詞與分詞詞語的詞向量之間的距離作為語義相似度。作為示例,具體的向量化方法可以使用Word2Vec等方法對詞對中每個詞進行向量化。得到詞對中每個詞的詞向量后,兩個詞向量的距離可以為余弦距離、歐式距離等,具體計算方法與現(xiàn)有技術相同,在此不再詳述。參見圖4所示,在本實施例或本發(fā)明其他某些實施例中,提取每個詞對中正確詞與分詞詞語的聲學相似度,具體可以包括:步驟S401,確定當前詞對中的正確詞與分詞詞語在拼音字符轉(zhuǎn)換距離表中的最小編輯距離路徑。步驟S402,根據(jù)所述最小編輯距離路徑上各個拼音字符的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離。步驟S403,根據(jù)所述正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的聲學距離并將所述聲學距離作為聲學相似度。所述聲學相似度指兩個詞在發(fā)音上的相似度,使用兩個詞的聲學距離表示,兩個詞的聲學距離越近,則聲學相似度越高??梢酝ㄟ^兩個詞的拼音字符轉(zhuǎn)換距離來計算,即根據(jù)拼音字符轉(zhuǎn)換距離表(或者說是拼音字符轉(zhuǎn)換混淆矩陣)中兩個拼音字符的轉(zhuǎn)換距離來計算。表1為部分拼音字符轉(zhuǎn)換混淆矩陣,其中,第一行和第一列為相互轉(zhuǎn)換的拼音字符,兩字符相交處為轉(zhuǎn)換距離。表1aaianangaobcchdeeienenga‐0.670.650.720.611110.60.8930.880.927ai0.67‐0.70.950.92811110.9140.7630.8660.928an0.6540.699‐0.60.93811110.9540.9440.670.832ang0.7160.950.6‐0.79311110.9720.9710.8770.737根據(jù)兩個詞的拼音字符轉(zhuǎn)換距離計算兩個詞的聲學距離,具體計算方法可以如式(2)所示:Dacou(a1,a2)=11+Dedit(a1,a2)---(2)]]>其中,Dacou(a1,a2)為兩個詞的聲學距離,Dedit(a1,a2)為兩個詞的拼音字符轉(zhuǎn)換距離。Dedit(a1,a2)可以根據(jù)動態(tài)規(guī)劃方法,查找兩個詞在拼音字符轉(zhuǎn)換距離表中的最小編輯距離路徑,將該路徑上各個拼音字符的拼音字符轉(zhuǎn)換距離融合后即可得到兩個詞的拼音字符轉(zhuǎn)換距離Dedit(a1,a2),具體融合方法例如可以取平均、簡單累加或加權(quán)累加等。舉例來講,“報案”和“備菜”兩個詞的拼音字符轉(zhuǎn)換距離計算方法如下:1)將每個詞轉(zhuǎn)換成拼音報案->baoan備菜->beicai2)根據(jù)拼音字符轉(zhuǎn)換混淆矩陣(也即拼音字符轉(zhuǎn)換距離表),查表得到每個拼音字符的拼音字符轉(zhuǎn)換距離如表2所示:表2baoanb011ei10.9760.944c111ai10.9280.6993)利用動態(tài)規(guī)劃方法,計算兩個詞的拼音字符轉(zhuǎn)換距離具體計算時,可以利用動態(tài)規(guī)劃方法查找拼音字符轉(zhuǎn)換距離表,找到最小編輯距離路徑,將該路徑上的值融合后即可得到兩個詞的拼音字符轉(zhuǎn)換距離,如圖5所示,陰影區(qū)域即為最小編輯距離路徑,將最小編輯距離路徑上的拼音字符轉(zhuǎn)換距離直接進行簡單累加即可得到兩個詞的拼音字符轉(zhuǎn)換距離,即0+0+0.976+1+0.699=2.675。此外,對于步驟S205,即根據(jù)各詞對的所述概率及預設算法,確定目標詞對,可以有多種方式實現(xiàn),下面通過圖6~圖8進行舉例說明:參見圖6所示,在本實施例或本發(fā)明其他某些實施例中,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,可以包括:步驟S601,判斷各詞對的所述概率與預設閾值的大小關系。步驟S602,將所述概率大于所述預設閾值的詞對確定為目標詞對。又或者參見圖7所示,在本實施例或本發(fā)明其他某些實施例中,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,可以包括:步驟S701,根據(jù)各詞對的所述概率對所述詞對進行從大到小的排序。步驟S702,將排在前列的預設數(shù)量的詞對確定為目標詞對。又或者參見圖8所示,在本實施例或本發(fā)明其他某些實施例中,根據(jù)各詞對的所述概率及預設算法,確定目標詞對,可以包括:步驟S801,在預設詞表中分別使用當前詞對中的正確詞及分詞詞語進行查找,其中所述預設詞表中存儲有正確詞與錯誤詞的正確對應關系。所述預設詞表中保存容易出錯的正確詞及其對應的錯誤詞,如“美國-沒過”、“美國-每過”等。所述詞表可由領域?qū)<腋鶕?jù)經(jīng)驗預先構(gòu)建得到。步驟S802,如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同,則確定當前詞對是一個目標詞對。步驟S803,如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語不同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞也不同,則確定當前詞對不是一個目標詞對。步驟S804,如果僅出現(xiàn)使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同的情況,或者,僅出現(xiàn)使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同的情況,則詢問用戶,并根據(jù)用戶的指示確定當前詞對是否為一個目標詞對。此時如果用戶確認了,則確定當前詞對是一個目標詞對,如果用戶未確認,則確定當前詞對不是一個目標詞對。需要說明的是,對于圖6~圖8這三種方式,還可以進行兩兩組合或三個一起組合來使用,對于組合關系及組合時的順序本實施例并不進行限制。例如,可以先篩選出概率大于閾值的詞對,然后在此基礎上進行概率大小的排序,選取排在前列的預設數(shù)量的詞對確定為目標詞對;又例如,可以先進行概率大小的排序,選取排在前列的預設數(shù)量的詞對,然后在此基礎上再利用所述預設詞表進行篩選;再例如,可以先篩選出概率大于閾值的詞對,然后在此基礎上再利用所述預設詞表進行二次篩選;等等。下述為本發(fā)明裝置實施例,可以用于執(zhí)行本發(fā)明方法實施例。對于本發(fā)明裝置實施例中未披露的細節(jié),請參照本發(fā)明方法實施例。圖9是根據(jù)本發(fā)明一示例性實施例示出的一種文本修正裝置的示意圖。該裝置可用于手機等移動終端以及個人電腦、服務器等設備。參見圖9所示,該裝置可以包括:文本獲取模塊901,用于獲取待修正的文本數(shù)據(jù);正確詞獲取模塊902,用于獲取正確詞,所述正確詞用于替換所述文本數(shù)據(jù)中與所述正確詞對應的錯誤詞;替換模塊903,用于根據(jù)所述正確詞找到并替換所述文本數(shù)據(jù)中的所述錯誤詞。參見圖10所示,在本實施例或本發(fā)明其他某些實施例中,所述替換模塊可以包括:分詞子模塊1001,用于對所述文本數(shù)據(jù)進行分詞,以將所述文本數(shù)據(jù)切分為多個分詞詞語;詞對生成子模塊1002,用于將所述正確詞與每個分詞詞語組成詞對;相似度提取子模塊1003,用于提取每個詞對中正確詞與分詞詞語的相似度,所述相似度包括字形相似度、語義相似度及聲學相似度;概率獲取子模塊1004,用于根據(jù)每個詞對的相似度及預設的判定模型,獲取每個詞對為目標詞對的概率,所述目標詞對為詞對中的分詞詞語是與所述正確詞對應的錯誤詞的詞對;目標詞對確定子模塊1005,用于根據(jù)各詞對的所述概率及預設算法,確定目標詞對;替換子模塊1006,用于使用所述正確詞在所述文本數(shù)據(jù)中替換所述目標詞對中的分詞詞語。參見圖11所示,在本實施例或本發(fā)明其他某些實施例中,所述替換模塊還可以包括:單字組合子模塊1101,用于將分詞后得到的相鄰的兩個單字組合成一個分詞詞語。在本實施例或本發(fā)明其他某些實施例中,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的字形相似度時,具體可以用于:如果當前詞對中的正確詞與分詞詞語的字數(shù)相同,則將正確詞與分詞詞語的每個單字均轉(zhuǎn)換為四角編碼,將正確詞與分詞詞語中各個相應單字的四角編碼相同編碼數(shù)與四角編碼總編碼數(shù)的比值的平均值作為字形相似度;如果當前詞對中的正確詞與分詞詞語的字數(shù)不相同,則將使用動態(tài)規(guī)劃算法獲得的正確詞與分詞詞語的最小編輯距離作為字形相似度。在本實施例或本發(fā)明其他某些實施例中,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的語義相似度時,具體可以用于:對當前詞對中的正確詞與分詞詞語分別進行向量化以得到詞向量;將正確詞與分詞詞語的詞向量之間的距離作為語義相似度。在本實施例或本發(fā)明其他某些實施例中,所述相似度提取子模塊在提取每個詞對中正確詞與分詞詞語的聲學相似度時,具體可以用于:確定當前詞對中的正確詞與分詞詞語在拼音字符轉(zhuǎn)換距離表中的最小編輯距離路徑;根據(jù)所述最小編輯距離路徑上各個拼音字符的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離;根據(jù)所述正確詞與分詞詞語的拼音字符轉(zhuǎn)換距離獲取正確詞與分詞詞語的聲學距離并將所述聲學距離作為聲學相似度。在本實施例或本發(fā)明其他某些實施例中,所述概率獲取子模塊具體可以用于:判斷各詞對的所述概率與預設閾值的大小關系;將所述概率大于所述預設閾值的詞對確定為目標詞對。在本實施例或本發(fā)明其他某些實施例中,所述概率獲取子模塊具體可以用于:根據(jù)各詞對的所述概率對所述詞對進行從大到小的排序;將排在前列的預設數(shù)量的詞對確定為目標詞對。在本實施例或本發(fā)明其他某些實施例中,所述概率獲取子模塊具體可以用于:在預設詞表中分別使用當前詞對中的正確詞及分詞詞語進行查找,其中所述預設詞表中存儲有正確詞與錯誤詞的正確對應關系;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同,則確定當前詞對是一個目標詞對;如果使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語不同,并且,使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞也不同,則確定當前詞對不是一個目標詞對;如果僅出現(xiàn)使用當前詞對中的正確詞在所述預設詞表中查找到的錯誤詞與當前詞對中的分詞詞語相同的情況,或者,僅出現(xiàn)使用當前詞對中的分詞詞語作為錯誤詞在所述預設詞表中查找到的正確詞與當前詞對中的正確詞相同的情況,則詢問用戶,并根據(jù)用戶的指示確定當前詞對是否為一個目標詞對。在本實施例中,當發(fā)現(xiàn)文本中出現(xiàn)文字錯誤時,用戶無需給出任何錯誤詞,只需輸入正確詞即可,系統(tǒng)即自動按照正確詞去查找各個對應的錯誤詞。例如,當用戶發(fā)現(xiàn)文本中出現(xiàn)了將“醬紫”一詞錯誤的寫為“絳紫”及“降子”等時,只需要輸入正確詞即輸入“醬紫”,無需指出對應的錯誤詞是“絳紫”還是“降子”,更無需指出各個錯誤詞的位置,系統(tǒng)即可自動按照正確詞去尋找與之相對應的各個錯誤詞,并自動使用正確詞替換掉所確定的錯誤詞,從而完成了文本修正。因為用戶只需要給出正確詞即可,無需一一指出有哪些錯誤詞,大大提高了修正效率,且還可以避免因為用戶人工查找而可能導致的錯誤詞的遺漏,提高了修正的準確率。關于上述實施例中的裝置,其中各個單元\模塊執(zhí)行操作的具體方式已經(jīng)在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。本領域技術人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本
技術領域:
中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權(quán)利要求指出。應當理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。當前第1頁1 2 3