專利名稱:語音辨認所有語言及用語音輸入單字的方法
語音辨認所有語言及用語音輸入單字的方法技術(shù)領(lǐng)域
中文有408個單音,再加上四聲,現(xiàn)代語音方法不能辨認408X4個單音,英文更 多。本發(fā)明將常用字分成m ( = 500)個左右不同的相似音群(類),每一類相似音的文字由 一個未知相似音代表。使用者對一個單字發(fā)音,本發(fā)明用貝氏分類法在m類未知單音中找 出幾個與該單字發(fā)音最相似的未知單音,再從這幾個相似的未知單音所代表的類中的單字 去找所要的單字及句子。
本發(fā)明用12個彈性框(窗),等長,無濾波器,不重疊,將長短不一的一個單音的音 波轉(zhuǎn)換成12X12的線性預(yù)估編碼倒頻譜(LPCC)矩陣。
本發(fā)明包含貝氏比對法,在m個未知單音中為發(fā)音者找F個與所需要單字發(fā)音最 相似的未知單音。因僅在固定的m類中辨認F個最相似的未知單音,本發(fā)明最重要的功能 是可以很快辨認單字,句子及輸入大量單字。同樣單字發(fā)不同單音或不同語言,分別放在不 同類中,因此單字或句子用不同發(fā)音或不同語言均可辨認,本發(fā)明不需樣本。
背景技術(shù):
現(xiàn)代用打字輸入中英文單字,每個單字必須知道它的正確發(fā)音(或注音符號),必 須練習(xí)打字,極不方便,所以一般人均不會文字輸入。語音辨認及語音輸入文字是今后趨勢 及發(fā)展的目標(biāo),不用打字,發(fā)音不準(zhǔn),有重音及其它語言均可輸入文字。
發(fā)一個單音時,它的發(fā)音是用音波表示。音波是一種隨時間作非線性變化的系統(tǒng), 一個單音音波內(nèi)含有一種動態(tài)特性,也隨時間作非線性連續(xù)變化。相同單音發(fā)音時,有一連 串相同的動態(tài)特性,隨時間作非線性伸展及收縮,但相同的動態(tài)特性依時間排列秩序,但時 間不同。相同單音發(fā)音時,將相同的動態(tài)特性排列在同一時間位置上非常困難。更因相似 單音特多,造成辨認更難。
一個計算機化語言辨認系統(tǒng),首先要抽取聲波有關(guān)的語言信息,也即動態(tài)特性,過 濾和語言無關(guān)的雜音,如人的音色、音調(diào),說話時心理、生理及情緒和語音辨認無關(guān)先刪去。 然后再將相同單音的相同特征排列在相同的時間位置上。此一連串的特征用一等長系列特 征向量表示,稱為一個單音的特征模型。目前語音辨認系統(tǒng)要產(chǎn)生大小一致的特征模型太 復(fù)雜,且費時,因為相同單音的相同特征很難排列在同一時間位置上,尤其是英語,導(dǎo)致比 對辨認困難。
—般語音辨認方法有下列一連串3個主要工作抽取特征、特征正?;?特征模型 大小一致,且相同單音的相同特征排列在同一時間位置)、未知單音辨認。一個連續(xù)聲波的 常用特征有下列幾種能量(energy),零橫過點數(shù)(zero crossings),極值數(shù)目(extreme count),顛峰(formants),線性預(yù)估編碼倒頻譜(LPCC)及梅爾頻率倒頻譜(MFCC),其中線 性預(yù)估編碼倒頻譜(LPCC)及梅爾頻率倒頻譜(MFCC)是最有效的,并普遍使用。線性預(yù)估 編碼倒頻譜(LPCC)是代表一個連續(xù)音最可靠,穩(wěn)定又準(zhǔn)確的語言特征。它用線性回歸模 式代表連續(xù)音音波,以最小平方估計法計算回歸系數(shù),其估計值再轉(zhuǎn)換成倒頻譜,就成為線 性預(yù)估編碼倒頻譜(LPCC)。而梅爾頻率倒頻譜(MFCC)是將音波用傅氏轉(zhuǎn)換法轉(zhuǎn)換成頻率。再根據(jù)梅爾頻率比例去估計聽覺系統(tǒng)。根據(jù)學(xué)者S. B. Davis and P. Mermelstein于 1980 年出版在 IEEE Transactions on Acoustics, Speech Signal Processing, Vol. 28, No. 4 發(fā)表的論文 Comparison of parametric representations for monosyllabic word recognition in continuously spoken sentences 中用云力態(tài)時間扭曲法(DTW),梅爾頻率 倒頻譜(MFCC)特征比線性預(yù)估編碼倒頻譜(LPCC)特征辨認率要高。但經(jīng)過多次語音辨認 實驗(包含本人前發(fā)明),用貝氏分類法,線性預(yù)估編碼倒頻譜(LPCC)特征辨認率比梅爾頻 率倒頻譜(MFCC)特征要高,且省時。
至于語言辨認,已有很多方法采用。有動態(tài)時間扭曲法(dynamic time-warping), 向量量化法(vector quantization)及隱藏式馬可夫模式法(HMM)。如果相同的發(fā)音在 時間上的變化有差異,一面比對,一面將相同特征拉到同一時間位置。辨認率會很好,但將 相同特征拉到同一位置很困難并扭曲時間太長,不能應(yīng)用。向量量化法如辨認大量單音, 不但不準(zhǔn)確,且費時。最近隱藏式馬可夫模式法(HMM)辨認方法不錯,但方法繁雜,太多未 知參數(shù)需估計,計算估計值及辨認費時。以T.F.Li (黎自奮)于2003年出版在I^ttern Recognition,vol. 36 發(fā)表的論文 Speech recognition of mandarin monosyllables 中用 貝氏分類法,以相同資料庫,將各種長短不同的一系列LPCC向量壓縮成相同大小的特征模 型,辨認結(jié)果比 γ· κ. Chen,C. Y. Liu, G. H. Chiang,Μ. Τ. Lin 于 1990 年出版在 Proceedings of Telecommunication Symposium, Taiwan 發(fā)表的論文 The recognition of mandarin monosyllables based on the discrete hidden Markov model 中用隱藏式馬可夫模式法 HMM方法要好。但壓縮過程復(fù)雜費時,且很難將相同單音的相同特征壓縮到相同時間位置, 對于相似單音,很難辨認。至于語音輸入文字目前還沒有方法,因為目前計算機語音辨認不 是很好。
本發(fā)明語音辨認方法針對上述缺點,從學(xué)理方面,根據(jù)音波有一種語音特征,隨時 間作非線性變化,自然導(dǎo)出一套抽取語音特征方法。將一個單音(中英文單字)音波先正常 化再轉(zhuǎn)換成一個足以代表該單音的大小相等的特征模型,并且相同單音在它們特征模型內(nèi) 的相同時間位置有相同特征。不需要人為或?qū)嶒炚{(diào)節(jié)本發(fā)明內(nèi)的未知參數(shù)及門檻。用簡化 貝氏分類法,即可將單字所發(fā)的音的特征模型和m個未知單音(代表m類不同相似音)的 特征模型比對,不需要再壓縮,扭曲或?qū)ふ蚁嗤奶卣鱽肀葘ΑK员景l(fā)明語音辨認方法, 能快速完成特征抽取,特征正?;氨嬲J,并能正確快速找到所要的單字。發(fā)明內(nèi)容
本發(fā)明為了克服上述現(xiàn)有技術(shù)的缺陷,提供了一種使用簡單,不需樣本,不需注 音,不需打字,準(zhǔn)確率高的任何人都可勝任的語音辨認所有語言及用語音輸入單字的方法。
本發(fā)明的目的是提供一種語音辨認所有語言及用語音輸入單字的方法,包含以下 步驟
(1) 一個單字是英文,中文或其它文字,一個單字的發(fā)音叫單音,本方法有m個未 知(或已知)單音及一個常用單字資料庫,每個未知單音有樣本;
(2) 一個先前處理器(pre-processor)刪去不具語音音波的信號點(sampled points)或雜音;
(3) 一種單音音波正?;俺槿√卣鞯姆椒ㄓ肊個彈性框?qū)⒁舨ㄕ;?,并轉(zhuǎn)換成大小相等的線性預(yù)估編碼倒頻譜(LPCC)EXP特征的矩陣;
(4)求每個未知單音線性預(yù)估編碼倒頻譜(LPCC)樣本的平均值及變異數(shù),一個 EXP樣本的平均值及變異數(shù)矩陣代表一個未知單音,每個未知單音代表一類有相似音的常 用字,一共有m類;
(5) 一個發(fā)音清晰標(biāo)準(zhǔn)的發(fā)音人,對每一常用單字發(fā)音一次,如使用者發(fā)音不準(zhǔn), 或用其它方言及語言發(fā)音,則由使用者發(fā)音;
(6)每一常用單字發(fā)音的音波正?;俺槿√卣鞯姆椒▽⒁舨ㄕ;⑥D(zhuǎn)換成 一個EXP線性預(yù)估編碼倒頻譜(LPCC)矩陣;
(7) 一種簡化貝氏(Bayesian)分類法比較一個常用單字的EXP線性預(yù)估編碼 倒頻譜(LPCC)矩陣及每個未知單音的EXP樣本的平均值及變異數(shù)矩陣,用貝氏距離(相 似度)找和該常用字的發(fā)音最相似的未知單音,再將該常用單字放在該最相似的未知單音 所代表的類的常用字中;
(8)使用者對所要的單字發(fā)音,該單音轉(zhuǎn)換成一個EXP的線性預(yù)估編碼倒頻譜 (LPCC)矩陣;
(9)用簡化貝氏(Bayesian)分類法比較使用者所要單字的EXP線性預(yù)估編碼倒 頻譜(LPCC)矩陣及每個未知單音的EXP樣本的平均值及變異數(shù)矩陣,用貝氏距離(相似 度)找和所要單字發(fā)音最相似的F個未知單音;
(10)在最相似的F個未知單音所代表的F個類的常用字中,求所有常用字的EXP 線性預(yù)估編碼倒頻譜(LPCC)矩陣和所要單字的EXP線性預(yù)估編碼倒頻譜(LPCC)矩陣之 間的(絕對)距離(相似度)來排列F類所有的常用字,排列后,使用者所要的單字應(yīng)當(dāng)排 在最前面,或排列后,所有的常用字分成數(shù)等段,每等段常用字以字母(或筆劃數(shù))排列,也 即F類所有常用字依和所要單字發(fā)音的(絕對)距離(相似度)及常用字的字母(或筆劃 數(shù))排列成一個矩陣,使用者發(fā)音后,依所要單字的字母(或筆劃數(shù))在該F類所有常用字 的矩陣中由上向下找,很容易在矩陣中找到所要單字;
(11) 一種辨認句子及名稱的方法;
(12) 一種修正辨認不成功的單字及句子及名稱、及輸入不成功的單字、及加入新 單字的方法。
其中,步驟O)中刪去不具語音音波的信號點或雜音是計算一小時時段內(nèi)相鄰 兩信號點的距離總和和一般雜音相鄰兩信號點的距離總和,如前者小于后者則刪去該時 段。
其中,步驟(3)中包含一個單音音波正?;俺槿〈笮∫恢碌奶卣骶仃?,步驟如 下
(a) 一種均等分一個單音音波的信號點的方法,為了用線性變化的回歸模式密切 估計非線性變化的音波,將音波全長分成E個等時段,每時段形成一個彈性框,一個單音共 有E個等長彈性框,沒有濾波器(Filter),不重疊,可以自由伸縮涵蓋全長音波,不是固定 長度的漢明(Hamming)窗;
(b)每框內(nèi),用一隨時間作線性變化的回歸模式估計隨時間作非線性變化的音 波;
(c)用 Durbin' s 循環(huán)公式
權(quán)利要求
1.一種語音辨認所有語言及用語音輸入單字的方法,其特征在于,所述方法包括以下 步驟(1)一個單字是英文、中文或其它文字,一個單字的發(fā)音為單音,本方法具有m個未知 或已知單音及一個常用單字資料庫,每個未知單音有樣本;(2)一個先前處理器刪去不具語音音波的信號點或雜音;(3)一種單音音波正?;俺槿√卣鞯姆椒ǎ怯肊個彈性框?qū)⒁舨ㄕ;⑥D(zhuǎn)換成 大小相等的線性預(yù)估編碼倒頻譜EXP特征的矩陣;(4)求每個未知單音線性預(yù)估編碼倒頻譜樣本的平均值及變異數(shù),一個EXP樣本的平 均值及變異數(shù)矩陣代表一個未知單音,每個未知單音代表一類有相似音的常用字,一共有m 類;(5)一個發(fā)音清晰標(biāo)準(zhǔn)的發(fā)音人,對每一常用單字發(fā)音一次,如使用者發(fā)音不準(zhǔn),或用 其它方言及語言發(fā)音,則由使用者發(fā)音;(6)每一常用單字發(fā)音的音波正?;俺槿√卣鞯姆椒ǎ菍⒁舨ㄕ;⑥D(zhuǎn)換成一 個EXP線性預(yù)估編碼倒頻譜的矩陣;(7)一種簡化貝氏分類法,是比較一個常用單字的EXP線性預(yù)估編碼倒頻譜的矩陣及 每個未知單音的EXP樣本的平均值及變異數(shù)矩陣,用貝氏距離找和該常用字的發(fā)音最相 似的未知單音,再將該常用單字放在該最相似的未知單音所代表的類的常用字中;(8)使用者對所要的單字發(fā)音,該單音轉(zhuǎn)換成一個EXP的線性預(yù)估編碼倒頻譜的矩陣;(9)用簡化貝氏分類法比較使用者所要單字的EXP線性預(yù)估編碼倒頻譜的矩陣及每 個未知單音的EXP樣本的平均值及變異數(shù)矩陣,用貝氏距離找和所要單字發(fā)音最相似的F 個未知單音;(10)在最相似的F個未知單音所代表的F個類的常用字中,求所有常用字的EXP線性 預(yù)估編碼倒頻譜的矩陣和所要單字的EXP線性預(yù)估編碼倒頻譜的矩陣之間的距離來排列 F類所有的常用字,排列后,使用者所要的單字應(yīng)當(dāng)排在最前面,或排列后,所有的常用字分 成數(shù)等段,每等段常用字以字母或筆劃數(shù)排列,F(xiàn)類所有常用字依和所要單字發(fā)音的距離及 常用字的字母或筆劃數(shù)排列成一個矩陣,使用者發(fā)音后,依所要單字的字母或筆劃數(shù)在該F 類所有常用字的矩陣中由上向下找,很容易在矩陣中找到所要單字;(11)一種辨認句子及名稱的方法;(12)—種修正辨認不成功的單字及句子及名稱、及輸入不成功的單字、及加入新單字 的方法。
2.根據(jù)權(quán)利要求1所述的語音辨認所有語言及用語音輸入單字的方法,其特征在于, 所述步驟O)中刪去不具語音音波的信號點或雜音是計算一小時時段內(nèi)相鄰兩信號點的 距離總和以及一般雜音相鄰兩信號點的距離總和,如前者小于后者則刪去該時段。
3.根據(jù)權(quán)利要求1所述的語音辨認所有語言及用語音輸入單字的方法,其特征在于, 所述步驟C3)包含一個單音音波正常化及抽取大小一致的特征矩陣,步驟如下(a) 一種均等分一個單音音波的信號點的方法,為了用線性變化的回歸模式密切估計 非線性變化的音波,將音波全長分成E個等時段,每時段形成一個彈性框,一個單音共有 E個等長彈性框,沒有濾波器,不重疊,可以自由伸縮涵蓋全長音波,不是固定長度的漢明窗;(b)每個框內(nèi),用一隨時間作線性變化的回歸模式估計隨時間作非線性變化的音波;(c)用Durbin's循環(huán)公式N-I= + i>0M=OE0 = R(O)K =^(0-2^-^(/-7)]/^.,產(chǎn)1 )') = K , WE1=(I-^2)E1.,C^j=OiP, \<j<P求回歸系數(shù)最小平方估計值…,1 ^ j ^ P,叫做線性預(yù)估編碼的向量,再用α\ = αι+^)α^α\,\<i<P/=1 1= ΣP<ij=i—P 1轉(zhuǎn)換線性預(yù)估編碼的向量為穩(wěn)定的線性預(yù)估編碼倒頻譜的向量a' ,Ι^ ^Ρ;(d)用E個線性預(yù)估編碼倒頻譜向量表示一個單音。
4.根據(jù)權(quán)利要求1所述的語音辨認所有語言及用語音輸入單字的方法,其特征在于, 所述步驟(7)中包含一種簡化貝氏分類法比較一個常用單字發(fā)音的EXP線性預(yù)估編碼倒 頻譜的矩陣及每個未知單音的EXP樣本的平均值及變異數(shù)矩陣,找最相似的未知單音的 方法,其步驟如下(a)一個常用單字的發(fā)音的特征是用一個EXP線性預(yù)估編碼倒頻譜(LPCC)矩陣X = (Xj1I, j = 1,...,E,1 = 1,...,P,表示,為了快速辨認,EXP 個 LPCCixjJ 假定是 EXP 個 獨立隨機變量,有正常分配,如果該常用字的發(fā)音和m個未知單音的中一個未知單音Ci,i =l,...,m比對時,其中,m是所有未知單音的總數(shù),則{Xj的平均數(shù)及變異數(shù)(/V,σ。用 該未知單音的樣本平均值及變異數(shù)估計,那么X的條件密度函數(shù)是/(小,)=廣 σ ‘_ β ^J z^iJt _X= IXj1I是該常用字的發(fā)音的線性預(yù)估編碼倒頻譜,但(/v,^f)可用未知單音Ci的樣 本平均數(shù)及變異數(shù)估計;(b)簡化貝氏分類法是針對m個未知單音中找一個未知單音Ci最像此常用字的發(fā)音X, 一個未知單音Ci對該常用字的發(fā)音X相似度由下式中f(x|Ci)表示IiAci)=;μ V ITtGiji(C)為快速辨認,用對數(shù)化簡(b)中條件密度函數(shù)f(X I Ci),并刪去不必計算的常數(shù),得 貝氏距離,
5.根據(jù)權(quán)利要求1所述的語音辨認所有語言及用語音輸入單字的方法,其特征在于, 所述步驟(11)中包含一種辨認句子及名稱的方法,其步驟如下(a)對一個講話者的句子或名稱辨認,我們先建立一個句子及名稱資料庫,每個句子或 名稱內(nèi)的單字全部由常用單字資料庫所需要的單字組成;(b)將一個句子或名稱切割為D個單音,每單位時段計算相鄰兩信號點落差距離的總 和,如太小,該時段為雜音或靜音,沒有語音訊號的相鄰單位時段累積太多,比英文單字兩 音節(jié)之間時間還多,表示全是雜音或靜音,應(yīng)該是兩單字的分界線,就應(yīng)切割,一共切成D 個單音,每單音再轉(zhuǎn)成EXP線性預(yù)估編碼倒頻譜的矩陣;對每一個單音,用貝氏分類法在m 類中選擇最相似的F個未知單音,一句子或名稱以DXF最相似的未知單音表示,每個單字 發(fā)音的F個最相似的未知單音所代表的F個類內(nèi)的所有單字依和所要單字發(fā)音的距離排列 成一列,一共有D列F個相似的未知單音的單字會包含該句子或名稱,該句子或名稱所要的 單字應(yīng)當(dāng)排在最前面;(c)如果資料庫的選擇比對的句子或名稱和講話者的句子或名稱等長,那么將D個每 列相似的未知單音的單字和比對句子或名稱的D個已知單字依順序比對,看看D列不同的 相似未知單音的單字有沒有比對句子或名稱內(nèi)的已知單字;如每列相似的未知單音的單字 內(nèi)都含一個比對句子或名稱內(nèi)的已知單字,辨認正確單字是D個,則該比對的句子或名稱 就是講話者的句子或名稱;(d)如果資料庫比對句子和名稱內(nèi)單字是D-I或D+1或在(c)的正確單字不是D個, 本發(fā)明則用3列窗口篩選;在比對句子或名稱第i個已知單字,用D列中第i-l,i,i+l列F 個相似的未知單音的單字比對第i個已知單字,計算D列有多少比對句子或名稱內(nèi)的已知 單字,再除以總數(shù)D得到該比對句子或名稱的機率,在資料庫選擇一個機率最大的句子或 名稱為講話者的發(fā)音句子或名稱。
6.根據(jù)權(quán)利要求1所述的語音辨認所有語言及用語音輸入單字的方法,其特征在于, 所述步驟(1 中包含一種修正辨認不成功的單字及句子及名稱、及輸入不成功的單字、及 加入新單字的方法,步驟如下(a)如果使用者找不到所要的單字,發(fā)音不準(zhǔn),發(fā)錯音或用其它語言發(fā)音,則該單字不 在F個最相似的未知單音所代表的F類的常用字內(nèi),一定在其它類的常用字群中或不在所 有m個資料庫內(nèi),使用者發(fā)所要的單字音后,用貝氏距離找最相似的未知單音,將所要的單 字放在該最相似的未知單音所代表的類的常用字群中,以后使用者發(fā)同樣單音,所要的單 字就會出現(xiàn)在F個最相似的未知單音所代表的類中;(b)如果所要的單字不在所有m類中,則發(fā)該所要單字音后,將該新單字加到最相似的 未知單音所代表的類的常用字群中;(c)一個單字能發(fā)標(biāo)準(zhǔn)音、不標(biāo)準(zhǔn)音、錯音或用其它語言發(fā)音的多種不同音,將該單字 分別放在不同的未知單音的類中,使用者對同樣單字能發(fā)任何音;(d)如果句子或名稱單字不能辨認成功,將該句子講一遍,本發(fā)明將該句子或名稱分成 D個單字,本發(fā)明將每個單字用貝氏分類法分到它的最相似的未知單音的類的單字中,再辨 認該句子或名稱會成功;(e)本發(fā)明僅將辨認或輸入不成功的單字重新放在它最相似的未知單音的類中,并未 改變?nèi)魏挝粗獑我舻奶卣鞯钠骄导白儺悢?shù),因此本發(fā)明辨認方法穩(wěn)定;而且僅從固定少 數(shù)m = 500類的未知單音中辨認F個最相似的未知單音,本發(fā)明能很快辨認各種語言的單 字及句子及輸入大量單字,是本發(fā)明最重要的功能。
全文摘要
本發(fā)明提供了一種語音辨認所有語言及用語音輸入單字的方法,本發(fā)明先用一群m個未知或已知不同單音代表m個不同類,將常用單字發(fā)音一次,每個單字的發(fā)音轉(zhuǎn)換成一個線性預(yù)估編碼倒頻譜矩陣,再用貝氏或距離分類法將常用字分到m類中的一類,使用者發(fā)單字音后,用貝氏或距離分類法在m個未知單音找F個最相似的未知單音,再在F個相似的未知單音所代表的F個類內(nèi),將所有單字依和所要單字發(fā)音的相似度及字母(或筆劃數(shù))排列;當(dāng)使用者發(fā)音后,很快能找到所要的字。本發(fā)明的方法簡單、不需樣本、不需注音、不需打字、任何人都可勝任、發(fā)音不標(biāo)準(zhǔn)或發(fā)錯音的字也可輸入、速度快、準(zhǔn)確率高。
文檔編號G06F3/16GK102034474SQ20091017710
公開日2011年4月27日 申請日期2009年9月25日 優(yōu)先權(quán)日2009年9月25日
發(fā)明者廖麗娟, 李臺珍, 黎世宏, 黎世聰, 黎自奮 申請人:廖麗娟, 李臺珍, 黎世宏, 黎世聰, 黎自奮