向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)方法,將接收的用戶輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)文本格式信息,然后對標(biāo)準(zhǔn)文本格式信息進(jìn)行去噪處理獲得第一信息,并利用錯(cuò)誤詞庫對第一信息進(jìn)行錯(cuò)誤判別,當(dāng)?shù)谝恍畔⒅邪e(cuò)誤內(nèi)容時(shí),提取第一信息中的錯(cuò)誤內(nèi)容,并對錯(cuò)誤內(nèi)容按照預(yù)設(shè)處理算法進(jìn)行替換,獲得第二信息并輸出,此第二信息即為經(jīng)過糾正后的正確信息,這種糾錯(cuò)方法能有效減少用戶對問答系統(tǒng)的輸入錯(cuò)誤,從而提高問答系統(tǒng)回答用戶提問的正確率,有效提升問答系統(tǒng)的用戶體驗(yàn)。
[0066]本發(fā)明提供的糾錯(cuò)方法不僅能用于問答系統(tǒng)中,還能用于其他對輸入文本要求較高,需要識別和糾正的系統(tǒng)中。
[0067]實(shí)施例二
[0068]本實(shí)施例是在上述實(shí)施例的基礎(chǔ)上進(jìn)行的補(bǔ)充說明。
[0069]圖2a為根據(jù)本發(fā)明實(shí)施例二的面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)方法的流程示意圖,如圖2a所示,本發(fā)明提供一種面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)方法,包括:
[0070]步驟201,接收用戶輸入信息,并將用戶輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)的文本格式信息,其中,用戶輸入信息包括語音信息和/或文本信息。
[0071 ]步驟202,對標(biāo)準(zhǔn)文本格式信息進(jìn)行去噪處理,并獲得第一信息。
[0072]上述步驟201-202與實(shí)施例一中步驟101-102—致,在此不再贅述。
[0073]步驟203,利用錯(cuò)誤詞庫對第一信息進(jìn)行錯(cuò)誤判別。
[0074]對第一信息進(jìn)行判別,判斷第一信息中是否有錯(cuò)誤內(nèi)容存在,若有,轉(zhuǎn)步驟204執(zhí)行;若第一信息中沒有錯(cuò)誤內(nèi)容存在,則進(jìn)入步驟2031。
[0075]步驟2031,當(dāng)針對第一信息在錯(cuò)誤詞庫檢索失敗時(shí),即:當(dāng)所述第一信息中不包含有錯(cuò)誤詞庫中存儲的錯(cuò)誤內(nèi)容;
[0076]通過正確語料基準(zhǔn)模型計(jì)算所述第一信息中包含錯(cuò)誤內(nèi)容的概率。
[0077]通過訓(xùn)練大量標(biāo)注正確的語料得到正確語料基準(zhǔn)模型,由于正確語料基準(zhǔn)模型是基于統(tǒng)計(jì)的模型,所以訓(xùn)練的正確語料的數(shù)據(jù)量越大,提取的錯(cuò)誤內(nèi)容就會越來越精確,利用錯(cuò)誤詞庫對第一信息進(jìn)行判別時(shí),會有無法完全匹配的情況,即:錯(cuò)誤詞庫中并未存儲第一信息中所包含的錯(cuò)誤內(nèi)容。
[0078]在以上情況下,在本步驟中通過正確語料基準(zhǔn)模型計(jì)算第一信息中包含錯(cuò)誤內(nèi)容的概率來在后續(xù)步驟中判斷第一信息中是否包含錯(cuò)誤內(nèi)容。比如用戶輸入“我想吃工包雞丁”,在正確語料基準(zhǔn)模型調(diào)用情境下,初步認(rèn)定“工包”與“雞丁”之間的結(jié)合并非正確的組合,因而為“工包雞丁”為錯(cuò)誤內(nèi)容;
[0079]此時(shí)的“工包雞丁”只是待確認(rèn)的錯(cuò)誤內(nèi)容,是否為真正的錯(cuò)誤內(nèi)容,還需要進(jìn)行進(jìn)一步的判斷,因此本步驟需計(jì)算出“工包雞丁”為錯(cuò)誤內(nèi)容的概率,用于進(jìn)一步的判斷。
[0080]步驟2032,當(dāng)概率超過預(yù)設(shè)閾值時(shí),判別第一信息中包含錯(cuò)誤內(nèi)容。
[0081]具體的,預(yù)設(shè)閾值可根據(jù)實(shí)際情況進(jìn)行設(shè)置,一般的,預(yù)設(shè)閾值設(shè)置得越低,錯(cuò)誤內(nèi)容越容易被發(fā)現(xiàn),預(yù)設(shè)閾值設(shè)置得越高,第一信息中的錯(cuò)誤內(nèi)容越容易被遺漏。當(dāng)步驟2031中計(jì)算獲得的概率超過預(yù)設(shè)閾值時(shí),可認(rèn)為第一信息中包含錯(cuò)誤內(nèi)容。如“工包雞丁”為錯(cuò)誤內(nèi)容的概率為0.95,預(yù)設(shè)閾值設(shè)置為0.9,那么此時(shí)“工包雞丁”就會被認(rèn)為是錯(cuò)誤內(nèi)容。
[0082]步驟204,當(dāng)?shù)谝恍畔⒅邪e(cuò)誤內(nèi)容時(shí),提取第一信息中的錯(cuò)誤內(nèi)容,對錯(cuò)誤內(nèi)容按照預(yù)設(shè)處理算法進(jìn)行替換。
[0083]具體的,本步驟需要對第一信息中的錯(cuò)誤內(nèi)容進(jìn)行替換修正,首先對錯(cuò)誤內(nèi)容進(jìn)行分析,獲得可能的正確內(nèi)容并對可能正確的內(nèi)容進(jìn)行判斷,最后確定一個(gè)正確內(nèi)容,然后用正確內(nèi)容去替換錯(cuò)誤內(nèi)容的算法。如確認(rèn)“工包雞丁”為錯(cuò)誤內(nèi)容,那么需要對“工包雞丁”進(jìn)行分析,獲得可能正確的內(nèi)容并對可能正確的內(nèi)容進(jìn)行判斷,最后確定正確內(nèi)容為“宮爆雞丁”,然后用正確內(nèi)容“宮爆雞丁”替換錯(cuò)誤內(nèi)容“工包雞丁”。
[0084]進(jìn)一步的,參見圖2b,步驟204具體包括:
[0085]步驟2051,對錯(cuò)誤內(nèi)容按照錯(cuò)誤類型進(jìn)行分類,在分類結(jié)果下,針對錯(cuò)誤內(nèi)容生成多條待選糾錯(cuò)內(nèi)容。
[0086]具體的,對錯(cuò)誤內(nèi)容進(jìn)行分析,確定該錯(cuò)誤內(nèi)容屬于哪種錯(cuò)誤類型,即該錯(cuò)誤內(nèi)容是由于文本輸入錯(cuò)誤造成的,還是語音輸入錯(cuò)誤造成的(如語音不清晰造成語音轉(zhuǎn)換成文本時(shí)出錯(cuò)):
[0087]進(jìn)一步的,文本輸入錯(cuò)誤還包括拼音輸入錯(cuò)誤、五筆輸入錯(cuò)誤和書寫輸入錯(cuò)誤(SP直接進(jìn)行文字書寫)輸入。本步驟可使用分類算法來實(shí)現(xiàn)。對錯(cuò)誤內(nèi)容進(jìn)行分類之后,再根據(jù)分類結(jié)果,針對錯(cuò)誤內(nèi)容生成多條待選糾錯(cuò)內(nèi)容。如對于錯(cuò)誤內(nèi)容“工包雞丁”,按照錯(cuò)誤類型進(jìn)行分類,屬于拼音輸入錯(cuò)誤,因此在拼音輸入錯(cuò)誤的錯(cuò)誤類型下,根據(jù)錯(cuò)誤內(nèi)容“工包雞丁”生成多條待選糾錯(cuò)內(nèi)容“宮爆雞丁”、“公報(bào)雞丁”等等。
[0088]步驟2052,按照整體句法分析及上下文系統(tǒng)對多條待選糾錯(cuò)內(nèi)容排序。
[0089]具體的,待選糾錯(cuò)內(nèi)容為多個(gè)時(shí),需要選擇正確概率最高的待選糾錯(cuò)內(nèi)容作為替換內(nèi)容,因此采用整體句法分析及上下文系統(tǒng)對多條待選糾錯(cuò)內(nèi)容排序,整體句法分析就是指對句子中的詞語語法功能進(jìn)行分析,比如〃我來晚了〃,這里〃我〃是主語,〃來〃是謂語,〃晚了〃是補(bǔ)語。句法分析主要應(yīng)用在中文信息處理中,如機(jī)器翻譯等。
[0090]將待選糾錯(cuò)內(nèi)容結(jié)合整體語句分析來進(jìn)行打分,確定待選糾錯(cuò)內(nèi)容為得分最高的正確內(nèi)容。本步驟可使用快速排序算法、最優(yōu)選擇算法來實(shí)現(xiàn)。如結(jié)合整體語句分析和上下文系統(tǒng)來對待選糾錯(cuò)內(nèi)容“宮爆雞丁”、“公報(bào)雞丁”打分,“宮爆雞丁”的分?jǐn)?shù)會比“公報(bào)雞丁”的分?jǐn)?shù)高,所以“宮爆雞丁”的排序位置會排在“公報(bào)雞丁”的前面。
[0091 ]步驟2053,根據(jù)排序結(jié)果,生成糾錯(cuò)內(nèi)容。
[0092]具體的,將步驟2052中排序位置為第一的待選糾錯(cuò)內(nèi)容作為糾錯(cuò)內(nèi)容。如“宮爆雞丁”的排序位置為第一位,即分?jǐn)?shù)最高,那么將“宮爆雞丁”選為糾錯(cuò)內(nèi)容。
[0093 ]步驟2054,利用糾錯(cuò)內(nèi)容,對錯(cuò)誤內(nèi)容進(jìn)行替換。
[0094]具體的,將第一信息中的錯(cuò)誤內(nèi)容直接替換為糾錯(cuò)內(nèi)容,如用“宮爆雞丁”替換“我要吃工包雞丁”中的“工包雞丁”,獲得“我要吃宮爆雞丁”,即第二信息,此時(shí)的第二信息即為糾正后的正確信息。
[0095]進(jìn)一步的,上述方法還包括將所述錯(cuò)誤內(nèi)容輸入至錯(cuò)誤詞庫中,以補(bǔ)充錯(cuò)誤詞庫中的錯(cuò)誤語料,提高錯(cuò)誤詞庫的豐富程度,在輸入信息中包含錯(cuò)誤內(nèi)容時(shí),可直接在錯(cuò)誤詞庫中完成錯(cuò)誤內(nèi)容判別,提高糾錯(cuò)效率。
[0096]最后,根據(jù)替換結(jié)果獲得第二信息并輸出。
[0097]進(jìn)一步的,作為優(yōu)選,本發(fā)明技術(shù)方案還包括:采集標(biāo)注為正確的語料,對正確語料基準(zhǔn)模型進(jìn)行訓(xùn)練。具體的,正確語料基準(zhǔn)模型在使用之前,需要通過大量的標(biāo)注正確的語料來訓(xùn)練得到,另外,在對第一信息進(jìn)行錯(cuò)誤判別的過程中,若沒有發(fā)現(xiàn)錯(cuò)誤內(nèi)容,可從第一信息中提取各詞語,并將各詞語標(biāo)注為正確,以實(shí)時(shí)采集這些標(biāo)注為正確的語料對正確語料基準(zhǔn)模型進(jìn)行訓(xùn)練。
[0098]本發(fā)明提供的面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)方法,當(dāng)針對第一信息在錯(cuò)誤詞庫檢索失敗時(shí),通過訓(xùn)練大量標(biāo)注正確的語料得到正確語料基準(zhǔn)模型,利用正確語料基準(zhǔn)模型提取第一信息中的錯(cuò)誤內(nèi)容,并對錯(cuò)誤內(nèi)容進(jìn)行分類,在分類結(jié)果下,針對錯(cuò)誤內(nèi)容生成多條待選糾錯(cuò)內(nèi)容,按照整體句法分析及上下文系統(tǒng)對多條待選糾錯(cuò)內(nèi)容排序,根據(jù)排序結(jié)果生成糾錯(cuò)內(nèi)容,利用糾錯(cuò)內(nèi)容,對錯(cuò)誤內(nèi)容進(jìn)行替換,獲得第二信息并輸出,即經(jīng)過糾正后的正確信息,這種糾錯(cuò)方法能有效減少用戶對問答系統(tǒng)的輸入錯(cuò)誤,從而提高問答系統(tǒng)回答用戶提問的正確率,有效提升問答系統(tǒng)的用戶體驗(yàn)。
[0099]實(shí)施例三
[0100]本實(shí)施例為用于執(zhí)行本發(fā)明提供的面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)方法的裝置實(shí)施例。
[0101]圖3為根據(jù)本發(fā)明實(shí)施例三的面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)裝置的結(jié)構(gòu)示意圖,如圖3所示,本發(fā)明提供一種面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)裝置,包括用戶信息接收模塊301、預(yù)處理模塊302、錯(cuò)誤判別模塊303、錯(cuò)誤內(nèi)容提取模塊304、預(yù)設(shè)處理算法模塊305和正確內(nèi)容輸出模塊306。
[0102]其中,用戶信息接收模塊301,用于接收用戶輸入信息,并將用戶輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)文本格式信息,其中,用戶輸入信息包括語音信息和/或文本信息;
[0103]預(yù)處理模塊302,用于對標(biāo)準(zhǔn)文本格式息進(jìn)行去噪處理,并獲得第一信息;
[0104]錯(cuò)誤判別模塊303,用于利用錯(cuò)誤詞庫對第一信息進(jìn)行錯(cuò)誤判別;
[0105]錯(cuò)誤內(nèi)容提取模塊304,用于當(dāng)?shù)谝恍畔⒅邪e(cuò)誤內(nèi)容時(shí),提取第一信息中的錯(cuò)誤內(nèi)容;
[0106]預(yù)設(shè)處理算法模塊305,用于對錯(cuò)誤內(nèi)容按照預(yù)設(shè)處理算法進(jìn)行替換。
[0107]正確內(nèi)容輸出模塊306,用于根據(jù)替換結(jié)果獲得第二信息并輸出。
[0108]本實(shí)施例是與方法實(shí)施例一對應(yīng)的裝置實(shí)施例,具體可參見實(shí)施例一中的相應(yīng)描述,在此不再贅述。
[0109]本發(fā)明提供的面向問答系統(tǒng)的數(shù)據(jù)糾錯(cuò)裝置,使用用