freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文-基于連續(xù)隱馬爾科夫模型的語音識別-資料下載頁

2024-11-07 20:57本頁面

【導讀】第一章語音知識基礎---------------------------------------------------------------6. 第一節(jié)語音識別的基本內(nèi)容-------------------------------------------6. 第二章HMM的理論基礎--------------------------------------------------------10. 第三章HMM算法實現(xiàn)的問題----------------------------------------------21. 第四章語音識別系統(tǒng)的設計---------------------------------------------------32. 第一節(jié)語音識別系統(tǒng)的開發(fā)環(huán)境-----------------------------------32. 計特征的動態(tài)特性。做語音識別的識別率是很高的,其中用到了HMM的三個算法。對話的夢想逐漸接近現(xiàn)實。人類的語言在人類的的智能組。意商是通過語言的方式有效的完成。作為人與人之間交流。算機交流的媒介。也是人機交互最重要的一步。之后,出現(xiàn)了諸多實用化的研究方向。

  

【正文】 denom = denom + sum(tmp(:))。 57 end (l).weight(j) = nom/denom。 end fprintf(39。\n39。) end 五、 HMM 參數(shù)的初始化 在進行 BaumWelch 迭代前,首先要對 HMM 的參數(shù)進行初始化。函數(shù) 就是完成這一工作的。初始化的過程中,首先將初始概率 賦值為只有第一個元素為 1,其他元素為 0 的數(shù)組,其長度為該 HMM 的狀態(tài)數(shù) N。接著將轉(zhuǎn)移概率賦值為如下形式的矩陣: 最后是對各狀態(tài)的混合高斯函數(shù)的均值、方差和權系數(shù)進行初始化。這里采用了按狀態(tài)對觀察序列的參數(shù)平均分段,然后將所有觀察序 列中屬于一個段的參數(shù)組成一個大的矩陣,調(diào)用 58 Voice Box 工具箱中的聚類函數(shù) kmeans,由聚類結果,計算得到各 pdf 的均值、方差和權系數(shù)。 function hmm = inithmm(samples, M) K = length(samples)。 %語音樣本 N = length(M)。 %狀態(tài)數(shù) = N。 = M。 % 初始概率矩陣 = zeros(N,1)。 (1) = 1。 % 轉(zhuǎn)移概 率矩陣 =zeros(N,N)。 for i=1:N1 (i,i) = 。 (i,i+1) = 。 end (N,N) = 1。 % 概率密度函數(shù)的初始聚類 59 %平均分段 for k = 1:K T = size(samples(k).data,1)。 samples(k).segment=floor([1:T/N:T T+1])。 end %對屬于每個狀態(tài)的向量進行 K 均值聚類,得 到連續(xù)混合正態(tài)分布 for i = 1:N %把相同聚類和相同狀態(tài)的向量組合到一個向量中 vector = []。 for k = 1:K seg1 = samples(k).segment(i)。 seg2 = samples(k).segment(i+1)1。 vector = [vector 。 samples(k).data(seg1:seg2,:)]。 end mix(i) = getmix(vector, M(i))。 end = mix。 function mix = getmix(vector, M) [mean esq nn] = kmeans(vector,M)。 60 % 計算每個聚類的標準差,對角陣,只保存對角線上的元素 for j = 1:M ind = find(j==nn)。 tmp = vector(ind,:)。 var(j,:) = std(tmp)。 end % 計算每個聚類中的元素數(shù),歸一化為各 pdf 的權重 weight = zeros(M,1)。 for j = 1:M weight(j) = sum(find(j==nn))。 end weight = weight/sum(weight)。 % 保存結果 = M。 = mean。 % M*SIZE = var.^2。 % M*SIZE = weight。 % M*1 六、訓練主程序 上面的函數(shù) 只是實現(xiàn)了一次迭代,實際應用中應該是多次迭代才能得到 結果,同時還應該給出一個結束迭代的 61 條件。本例中是計算所有觀察序列的輸出概率,對其進行累加,得到總和輸出概率。當此概率的相對變化小到一定數(shù)值的時候,結束迭代。另外,設定最大迭代次數(shù)為一個常數(shù),當?shù)螖?shù)超過此常數(shù)時,也停止迭代。下面是完整的訓練程序 : function [hmm, pout] = train(samples, M) %輸入: % samples – 樣本結構 % M 為每個狀態(tài)指定 pdf 個數(shù),如: [3 3 3 3] %202。228。179。246。: % hmm 訓練完成后的 hmm K = length(samples)。 % 計算語音參數(shù) disp(39。正在計算語音參數(shù) 39。)。 for k = 1:K if isfield(samples(k),39。data39。) amp。 ~isempty(samples(k).data) continue。 else samples(k).data = mfcc(samples(k).wave)。 end 62 end hmm = inithmm(samples, M)。 for loop = 1:40 fprintf(39。\n 第 %d 遍訓練 \n\n39。,loop) hmm = baum(hmm, samples)。 %計算輸出總概率 pout(loop)=0。 for k = 1:K pout(loop) = pout(loop) + viterbi(hmm, samples(k).data)。 end fprintf(39??偤洼敵龈怕?(log)=%d\n39。, pout(loop)) %比較兩個 HMM 距離 if loop1 if abs((pout(loop)pout(loop1))/pout(loop)) 5e3 fprintf(39。收斂 !\n39。)。 return end end 63 end disp(39。迭代 40 次仍不收斂 , 退出 39。)。 程序中,輸入?yún)?shù)有兩個,結構數(shù)組 samples 內(nèi)包含了觀察序列的信息,每個 samples(k)都包含兩個成員 samples(k).wave和 samples(k).data,分別為該觀察序列的原始語音和參數(shù)。其中成員 data 可以在調(diào)用之前計算,也可以由 train 程序內(nèi)計算。數(shù)組 M 包含了各狀態(tài)對應的高斯混合數(shù)。 七、測試程序 利用訓練函數(shù) 和識別函數(shù) ,就可以對觀察序列進行訓練和識別了。下面是一段訓練程序的腳本文件。 for i=1:11 sample=[]。 for k=1:10 file=sprintf(39。c:\\Program Files\\MATLAB71\\work\\cdhmm\\samples1\\%d\\%39。,i,k)。 disp(file)。 samplesz{i}{k}=wavread(file)。 sample(k).wave=samplesz{i}{k}。 sample(k).data=[]。 64 end hmm{i}=train(sample,[3 3 3 3])。 end save(39。hmm239。, 39。hmm39。)。 識別 結果 hmm 為一個 cell 數(shù) 組,每個元素為一個 hmm 結構,下面一段識別程序。首先用函數(shù) wavread 將其讀入,再用函數(shù) vad 進行端點檢測,計算出 MFCC 參數(shù)后,交由識別函數(shù) 計算得到其對數(shù)形式的輸出概率,最后用 max 函數(shù)找到識別結果。 下面是識別程序 的代碼: re=zeros(1,11)。 for i=1:11 for k=1:10 fname = sprintf(39。c:\\Program Files\\MATLAB71\\work\\cdhmm\\samples1\\%d\\%39。,i,k)。 % disp(fname)。 x = wavread(fname)。 [x1 x2] =Evad(x)。 m = mfcc(x)。 m = m(x12:x22,:)。 for j=1:11 pout(j)=viterbi(hmm{j}, m)。 end 65 [d,n] = max(pout)。 % fprintf(39。第 %d180。識別為類型 %d\n39。,i,n) fprintf(39。 詞 匯 類 別 : 186。%d。 第 %d 識 別 為 類型 %d\n39。,i,k,n) if i==n re(i)=re(i)+1。 end end end rate=sum(re)/66。 fprintf(39。系統(tǒng)識別率: %d\n39。,rate)。 第 三節(jié) 實驗結果 本語音識別系統(tǒng)所用的語音庫是十個足球術語的語音,它們分別為鏟球、沖撞、點球、防守、紅牌、加速、進球、起動、手球、暫停。 一、訓練結果 第一次: 正在計算語音參數(shù) 第 1 遍訓練 66 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估 轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 第 2 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 收斂 ! 67 第二次 : 正在計算語音參數(shù) 第 1 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 第 2 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 68 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 收斂 ! 第三次: 正在計算語音參數(shù) 第 1 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 第 2 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 69 重估轉(zhuǎn)移概率矩陣 A... 重估混合高 斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 收斂 ! 第四次: 正在計算語音參數(shù) 第 1 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 70 第 2 遍訓練 計算 樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 總和輸出概率 (log)=+004 收斂 ! 第五次: 正在計算語音參數(shù) 第 1 遍訓練 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù) ... 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 71 4,1 4,2 4,3 總和輸出概率 (log)=+004 第 2 遍訓練 計算樣本參數(shù) ... 1 2 3 4 5 6 7 8 9 10 重估轉(zhuǎn)移概率矩陣 A... 重估混合高斯的參數(shù)
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1