HTK. Introduction  數據準備 step1 : the Task Grammar step2 : the Dictionary step3 : Recording the Data step4 : Creating the Transcription Files step5 : Coding.

Slides:



Advertisements
Similar presentations
FCU, Department of ECE, IC Design Research Lab. TEL: # 4945 Pre-SIm , Post-Sim.
Advertisements

1 生物計算期末作業 暨南大學資訊工程系 2003/05/13. 2 compare f1 f2  只比較兩個檔案 f1 與 f2 ,比完後將結果輸出。 compare directory  以兩兩比對的方式,比對一個目錄下所有檔案的相 似程度。  將相似度很高的檔案做成報表輸出,報表中至少要.
布林代數的應用--- 全及項(最小項)和全或項(最大項)展開式
第七章 抽樣與抽樣分配 蒐集統計資料最常見的方式是抽查。這 牽涉到兩個問題: 抽出的樣本是否具有代表性?是否能反應出母體的特徵?
:Word Morphing ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10508:word morphing 解題者:楊家豪 解題日期: 2006 年 5 月 21 日 題意: 第一行給你兩個正整數, 第一個代表下面會出現幾個字串,
1 Q10276: Hanoi Tower Troubles Again! 星級 : ★★★ 題組: Online-judge.uva.es PROBLEM SET Volume CII 題號: Q10276: Hanoi Tower Troubles Again! 解題者:薛祖淵 解題日期: 2006.
Reference, primitive, call by XXX 必也正名乎 誌謝 : 部份文字取於前輩 TAHO 的文章.
如何將數字變成可用之資訊 現代化資料處理與應用概念. 如何將數字變成可用之資訊 人最容易接受的訊息是圖像化資訊。 在一堆數字中,要進行比較分析,一般會使用表格形 式計算與分析。 所以一般我們會將數字依關聯性, 轉換成表格計算與分析。 此表格一般稱試算表或稱表格。 再將結果轉換為圖表,進行比較與分析。
指導教授:陳淑媛 學生:李宗叡 李卿輔.  利用下列三種方法 (Edge Detection 、 Local Binary Pattern 、 Structured Local Edge Pattern) 來判斷是否為場景變換,以方便使用者來 找出所要的片段。
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 參 實驗法.
五小專案 黃詩晴 章乃云. 目錄 計算機 智慧盤 拼圖 記憶大挑戰 數學題庫 心得 參考文獻.
亂數產生器安全性評估 之統計測試 SEC HW7 姓名:翁玉芬 學號:
: OPENING DOORS ? 題組: Problem Set Archive with Online Judge 題號: 10606: OPENING DOORS 解題者:侯沛彣 解題日期: 2006 年 6 月 11 日 題意: - 某間學校有 N 個學生,每個學生都有自己的衣物櫃.
: ShellSort ★★☆☆☆ 題組: Problem D 題號: 10152: ShellSort 解題者:林一帆 解題日期: 2006 年 4 月 10 日 題意:烏龜王國的烏龜總是一隻一隻疊在一起。唯一改變烏龜位置 的方法為:一隻烏龜爬出他原來的位置,然後往上爬到最上方。給 你一堆烏龜原來排列的順序,以及我們想要的烏龜的排列順序,你.
STAT0_sampling Random Sampling  母體: Finite population & Infinity population  由一大小為 N 的有限母體中抽出一樣本數為 n 的樣 本,若每一樣本被抽出的機率是一樣的,這樣本稱 為隨機樣本 (random sample)
第 4 章 迴歸的同步推論與其他主題.
1. 假設以下的敘述為一未提供 “ 捷徑計算 ” 能力的程式段,試用程 式設計的技巧,使此敘述經此改 寫的動作後,具有與 “ 捷徑計算 ” 之 處理方法相同之處理模式。 if and then E1 else E2 endif.
MATLAB 程式設計 第 11 章 多維陣列 多維陣列的定義 在 MATLAB 的資料型態中,向量可視為 一維陣列,矩陣可視二維陣列,對於維 度 (Dimensions) 超過 1 的陣列則均可視 為「多維陣列」 (Multidimesional Arrays , 簡稱 N-D Arrays)
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
Monte Carlo Simulation Part.2 Metropolis Algorithm Dept. Phys. Tunghai Univ. Numerical Methods C. T. Shih.
JAVA 程式設計與資料結構 第十章 GUI Introdution III. File Chooser  File Chooser 是一個選擇檔案的圖形介面, 無論我們是要存檔還是要開啟檔案,使 用這個物件都會讓我們覺得容易且舒適。
南投縣社區大學 Excel 實務應用入門 講師 : 林泉成
第 1 章 PC 的基本構造. 本章提要 PC 系統簡介 80x86 系列 CPU 及其暫存器群 記憶體: Memory 80x86 的分節式記憶體管理 80x86 的 I/O 結構 學習組合語言的基本工具.
Chapter 13 塑模靜態觀點:物件圖 Static View : Object Diagram.
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
24-6 設定開始與結束場景中的 程式 最後我們要替這個遊戲收個尾, 幫它把開始 的等待畫面跟結束畫面處理一下。
: The largest Clique ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11324: The largest Clique 解題者:李重儀 解題日期: 2008 年 11 月 24 日 題意: 簡單來說,給你一個 directed.
第三部分:研究設計 ( 二): 研究工具的信效度 與研究效度 (第九章之第 306 頁 -308 頁;第四章)
最新計算機概論 第 5 章 系統程式. 5-1 系統程式的類型 作業系統 (OS) : 介於電腦硬體與 應用軟體之間的 程式,除了提供 執行應用軟體的 環境,還負責分 配系統資源。
3-3 使用幾何繪圖工具 Flash 的幾何繪圖工具包括線段工具 (Line Tool) 、橢圓形工具 (Oval Tool) 、多邊星形 工具 (Rectangle Tool) 3 種。這些工具畫出 來的幾何圖形包括了筆畫線條和填色區域, 將它們適當地組合加上有技巧地變形與配 色, 不但比鉛筆工具簡單,
Chapter 20 塑模動態觀點:狀態圖 Statechart Diagram. 學習目標  說明狀態圖的目的  定義狀態圖的基本記號  展示狀態圖的建構  定義活動、內部事件及遞延事件的狀態 圖記號.
圖層的操作與管理 圖層的作用就如同一張張透明的賽璐璐片, 你可以將動畫中的每項物件, 放置在不同圖 層中, 圖層交疊就形成完整的畫面。在各圖 層中的物件, 做任何的移動或變化, 都不會 相互干擾, 所以當你編輯一個物件時, 只要 在物件所在的圖層進行操作, 將可大幅降低 製作過程的複雜度與難度。
: Happy Number ★ ? 題組: Problem Set Archive with Online Judge 題號: 10591: Happy Number 解題者:陳瀅文 解題日期: 2006 年 6 月 6 日 題意:判斷一個正整數 N 是否為 Happy Number.
Chapter 2 Getting Started Insertion Sort: 能有效率地排序小數字的演算法 範例 :
: Ahoy, Pirates! ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11402: Ahoy, Pirates! 解題者:李重儀 解題日期: 2008 年 8 月 26 日 題意:有一個海盜島有 N 個海盜,他們的編號 (id)
: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.
:Nuts for nuts..Nuts for nuts.. ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 10944:Nuts for nuts.. 解題者:楊家豪 解題日期: 2006 年 2 月 題意: 給定兩個正整數 x,y.
從此處輸入帳號密碼登入到管理頁面. 點選進到檔案管理 點選「上傳檔案」上傳資料 點選瀏覽選擇電腦裡的檔案 可選擇公開或不公開 為平台上的資料夾 此處為檔案分類,可顯示在展示頁面上,若要參加 MY EG 競賽,做品一律上傳到 “ 98 MY EG Contest ” 點選此處確定上傳檔案.
資料結構實習-一 參數傳遞.
6-2 認識元件庫與內建元件庫 Flash 的元件庫分兩種, 一種是每個動畫專 屬的元件庫 (Library) ;另一種則是內建元 件庫 (Common Libraries), 兩者皆可透過 『視窗』功能表來開啟, 以下即為您說明。
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2008.
: Beautiful Numbers ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11472: Beautiful Numbers 解題者:邱經達 解題日期: 2011 年 5 月 5 日 題意: 若一個 N 進位的數用到該.
Section 4.2 Probability Models 機率模式. 由實驗看機率 實驗前先列出所有可能的實驗結果。 – 擲銅板:正面或反面。 – 擲骰子: 1~6 點。 – 擲骰子兩顆: (1,1),(1,2),(1,3),… 等 36 種。 決定每一個可能的實驗結果發生機率。 – 實驗後所有的實驗結果整理得到。
Analyzing Case Study Evidence
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
Linguistics phonetic symbols. 先下載 IPA 字型檔案,執行安裝。 由於這個程式的字型目錄設定錯誤, 所以等重新開機時就會發現字型消失。 所以必須根據以下步驟來讓 Windows 加入 IPA 字型。
Structural Equation Modeling Chapter 6 CFA 根據每個因素有多重指標,以減少 測量誤差並可建立問卷的構念效度 驗證性因素分析.
Learning Method in Multilingual Speech Recognition Author : Hui Lin, Li Deng, Jasha Droppo Professor: 陳嘉平 Reporter: 許峰閤.
Chapter 10 m-way 搜尋樹與B-Tree
概念性產品企劃書 呂學儒 李政翰.
Probability Distribution 機率分配 汪群超 12/12. 目的:產生具均等分配的數值 (Data) ,並以 『直方圖』的功能計算出數值在不同範圍內出現 的頻率,及繪製數值的分配圖,以反應出該 機率分配的特性。
1/17 A Study on Separation between Acoustic Models and Its Application Author : Yu Tsao, Jinyu Li, Chin-Hui Lee Professor : 陳嘉平 Reporter : 許峰閤.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2009.
5 重複迴圈 5.1 增減運算符號 增量運算符號 減量運算符號
Teacher : Ing-Jer Huang TA : Chien-Hung Chen 2015/6/30 Course Embedded Systems : Principles and Implementations Weekly Preview Question CH7.1~CH /12/26.
:Commandos ★★★☆☆ 題組: Contest Archive with Online Judge 題號: 11463: Commandos 解題者:李重儀 解題日期: 2008 年 8 月 11 日 題意: 題目會給你一個敵營區內總共的建築物數,以及建築物 之間可以互通的路有哪些,並給你起點的建築物和終點.
函式 Function 東海大學物理系‧資訊教育 施奇廷. 函式簡介 當程式越來越大、越複雜時,程式的維護、 除錯會變得更困難,此時必須引入函式來 簡化程式或將程式分段,將程式重複的部 分改寫為函式,將程式「模組化」 這種作法有下列優點:節省程式發展的時 間、邏輯容易瞭解、程式容易除錯、可分 工合作完成程式.
-Artificial Neural Network- Matlab操作介紹 -以類神經網路BPN Model為例
NVivo 7在文件分析應用.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2010.
Microsoft Excel.
語音辨認概論 A Tutorial Example of Using HTK 96/10/18 老師 : 廖元甫 演講者 : 蔡明峰.
: Finding Paths in Grid ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11486: Finding Paths in Grid 解題者:李重儀 解題日期: 2008 年 10 月 14 日 題意:給一個 7 個 column.
著作權所有 © 旗標出版股份有限公司 第 14 章 製作信封、標籤. 本章提要 製作單一信封 製作單一郵寄標籤.
幼兒行為觀察與記錄 第八章 事件取樣法.
1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2009.
第 1 章 PC 的基本構造. 本章提要 PC 系統簡介 80x86 系列 CPU 及其暫存器群 記憶體: Memory 80x86 的分節式記憶體管理 80x86 的 I/O 結構 學習組合語言的基本工具.
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
Presentation transcript:

HTK

Introduction  數據準備 step1 : the Task Grammar step2 : the Dictionary step3 : Recording the Data step4 : Creating the Transcription Files step5 : Coding the Data  建立單聲道的 HMM 模型 step6 : Creating Flat Start Monophone step7 : Fixing the Silence Models step8 : Realigning the Training Data  建立聯繫狀態的三音素 HMM 模型 step9 : Making Triphones from Monophones step10 : Making Tied-State Triphones  辨別器評估 step11 : Recognising the Test Data

數據準備  需要錄製訓練數據和測試數據。為進行校 準,還需要數據的標注文本。這裡用任務 語法 (task grammar) 產生真值文本 (ground truth) 。為了處理訓練數據,需 要定義一個語音集合和一個字典用以涵蓋 訓練和測試數據中涉及的單詞。

Step 1 the Task Grammar

 任務語法以包含變數的正則運算式形式定義,存儲 在檔 gram 裡:

上面的語法是高層表 示,必須通過 HParse 轉成 HTK 可用的底層 表示。

底層表示存於檔 wdnet 中: HParse gram wdnet

Step 2 the Dictionary

 利用 BEEP 語音字典,除去其中的重音符,並在 每個發音後加入 sp ( short pause, 小停頓)。 如果有啞音標志,就用 MP 命令把 sil 和 sp 合併成 sil 。這些處理命令放在 global.ded 編輯腳本中:

 執行 HDMan 生成與任務相關的發音詞典 dict1 : HDMan -m -w.\lists\wlist -n.\lists\monophones1 -l dlog.\dict\dict1.\dict\beep.\dict\names  上面的 names 檔是手工製作的專有人名的發音, 檔 wlist 是出現在任務語法中的所有單詞的有序列 表,檔 monophones1 是用到的音素的列表, dlog 為參數文件。

 這裡應該手工修改 dict1 ,為 SENT-END 和 SENT- START 加上無輸出標誌。

 為了避免在 dlog 裡出現 wanning ,那就在 names 和 beep 同一目錄下分別建立同名 的編輯腳本,內容為空即可。

Step 3 Recording the Data

 錄製語音資料 HSGen 工具可以生成符合 task grammar 的句子, 用來指導錄音 (sentence prompts) : HSGen -l -n 140 wdnet.\dict\dict1>.\labels\trainprompts HSGen -l -n 15 wdnet.\dict\dict1>.\labels\testprompts 根據上述指令檔,錄製相應的 140 個訓練用語音 資料檔案和 15 個測試用語音資料檔案。

Step 4 Creating the Transcription Files

 標注資料,得到真值檔 Perl 腳本 prompts2mlf 可以把錄音文本截成單詞級真值 檔。例如: perl.\scripts\prompts2mlf.\labels\trainwords.mlf.\labels\trainpr ompts perl.\scripts\prompts2mlf.\labels\testwords.mlf.\labels\testpro mpts 標注編輯器 HLEd 可把 word level MLF 轉成 phone level MLF : HLEd -l * -d.\dict\dict1 -i.\labels\phones0.mlf mkphones0.led.\labels\trainwords.mlf 編輯腳本 mkphones0.led 的內容如下:

EX 命令表示按照字典 dict1 進行展開, IS 表 示在每個話語的前後插入標誌, DE 一行表 示 phones0.mlf 中單詞間不用 sp 隔開。

step5 : Coding the Data HCopy: 數據文件格式的轉換

 HCopy -T 1 -C config/config1 -S codetr.scp  求 MFCC 的參數,需要 config1 和 codetr.scp ,求完的參數放在 一個資料夾裡面。  config1 : 配置文件需要設置轉換參數。  codetr.scp : 指定訓練及輸出輸入的文件列表,將左邊的語音數 據取特徵並存入右邊的文件中 。

Config1 and codetr.scp codetr.scp : codetr/clean/FAC_13A.08 train/FAC_13A.mfc codetr/clean/FAC_ A.08 train/FAC_ A.mfc codetr/clean/FAC_172A.08 train/FAC_172A.mfc  訓練文件就會存在 train.scp 中。

step6 : Creating Flat Start Monophone 用到的音素列表 ( 包括 sil) 原始模型 proto Config1 And Train.scp 產生新的 proto 、 si and vFloors..(1) HCompV : 統計訓練數據的均值與方差 HERest : 對 HMM 模型進行訓練 (2)

(1)HCompV -T 1 -C config/config1 -f m -S train.scp -M hmm0 Proto/proto ………….. 產生 proto 。 HCompV -T 1 -C config/config1 -f m -S train.scp -M hmm0 Proto/sil ………………. 產生 sil 。 (2)HERest -C config/config1 -I /labels/phone0.mlf -t – S train.scp -H hmms/hmm0/macros -H hmms/hmm0/hmmdefs -M hmms/hmm1 /lists/monophones0 … hmm0->hmm1->hmm2->hmm3 。

proto

step7 : Fixing the Silence Models ( 修補 Silence 音素模型加入 sp) 加入 sp Form hmm3/macros and hmmdefs 加入 sp HHED : 升 mixture HERest : 對 HMM 模型進行訓練 (1) (2)

(1)HHEd -T 1 -H hmms/hmm4/macros – H hmms/hmm4/hmmdefs -M hmms/hmm5 sil.hed /lists/monophone ……… 用一個 mixture 逼近。 (2)HERest -C config/config1 -I /labels/phone1.mlf -t – S train.scp -H hmms/hmm5/macros -H hmms/hmm5/hmmdefs -M hmms/hmm6 /lists/monophones1 … hmm5->hmm6->hmm7 。 反覆的升 mixture 逼近與 HERest 訓練 hmm 模型 。

Step 8 - Realigning the Training Data

 確認 trainwords.mlf 中的路徑為 ” */S0???.lab ” , 修改 dict2 加入 silence sil 一項,另存為 dict3 , 執行 HVite 進行 Viterbi 校准。  重估兩次,識別率會比校準前有不小的提高,但 是再繼續重估兩次,識別結果不會再提高,所以 之後就要通過榜定狀態的三因素模型來進一步提 高識別效果 。

Introduction  數據準備  建立單聲道的 HMM 模型  建立聯繫狀態的三音素 HMM 模型 step9 : Making Triphones from Monophones step10 : Making Tied-State Triphones  辨別器評估

step9 : Making Triphones from Monophones

 HLEd -n triphones1 -l ’ * ’ -i wintri.mlf mktri.led aligned.mlf  For example  sil th ih s sp m ae n sp...  becomes  sil th+ih th-ih+s ih-s sp m+ae m-ae+n ae-n sp...  define sp and sil as word boundary symbols.

 HHEd -B -H hmm9/macros -H hmm9/hmmdefs -M hmm10 mktri.hed monophones1  mktri.hed

 HERest -B -C config -I wintri.mlf -t s stats \  -S train.scp -H hmm11/macros -H hmm11/hmmdefs – M hmm12 triphones1

Step 10 - Making Tied-State Triphones

Why making Tied-State Triphones  資料不夠那麼多的變數去使用 無法估計變數 增加複雜度跟容量的空間  聯繫狀態的變數使用量 3 * (39+39) * N before tying – 3 * (39+39) after tying

Decisions Tree and tree.hed scrip  一個件是否滿足可以區分出兩個類別, n 個條件可區分成 2 n 個類別。我們可根 據一序列 “ 條件是否滿足的問句 ” 來做分 類。  建構完善的決策樹 : 先找出可以做最大區分 的鄰音條件作為根節點問題,對每個問句 試作分類,將可分成最為內聚的兩類之問 句挑出作為此節點的問句。

Decisions Tree and tree.hed scrip  利用問句 (QS command) 列出所有可能 的條件,再從中挑選出較具區別力的條件 來做分類依據,形成所謂的決策樹。  For example QS "L_Class-Stop" {p-*,b-*,t-*,d-*,k- *,g-*} QS "R_Class-Stop" {*+p,*+b,*+t,*+d,*+k,*+g} QS "L_Nasal" {m-*,n-*,ng-*} QS "R_Nasal" {*+m,*+n,*+ng}

Decisions Tree

tree.hed

Tree.hed

 HHEd -B -H hmm12/macros -H hmm12/hmmdefs -M hmm13 \tree.hed triphones1 > log  HERest -B -C config -I wintri.mlf -t s stats \ -S train.scp -H hmm11/macros -H hmm14/hmmdefs -M hmm15 triphones1

3.4 Recogniser Evaluation step11 : Recognising the Test Data

 Dictionary 的用意在於告訴 HTK ,你想要 辨識出來的音是哪些,又這些音是由哪些 HMM 所組成。  WordNet 告知便是句子的文法結構。 - 簡單的 WordNet ,可用手動新增。 - 複雜的 WordNet ,用 HParse 指令。

 當 WordNet 跟 Dictionary 都準備妥當, 就可以使用 HVite 來辨識。  進行辨認 HVite -H hmm15/macros – H hmm15/hmmdefs -S test.scp \ -l ’ * ’ -i recout.mlf -w wdnet \ -p 0.0 -s 5.0 dict tiedlist

 分析辨認結果 HResults -I testref.mlf tiedlist recout.mlf ==========HTK Results Analysis ========== Date: Sun Oct 22 16:14: Ref : testrefs.mlf Rec : recout.mlf Overall Results SENT: %Correct=98.50 [H=197, S=3, N=200] WORD: %Corr=99.77, Acc=99.65 [H=853, D=1, S=1, I=1, N=855] =================================

 D:deletion errorD 為正解中有而未辨識出的音節  S:substitution errorS 為辨識錯誤的音節  I:insertion error 為正解中未有而辨識出的音節