Tạo Model

Một phần của tài liệu Nhận dạng tiếng nói việt nam từ vựng lớn liên tục (Trang 61)

- Mở đầu

3.3.3 Tạo Model

Để tạo mô hình cho hệ thống chương trình dùng cho nền tảng Sphinx-4, ta thực hiện các bước sau:

Bước 1: Tạo thư mục sphinx-4/models/VT

Bước 2: Trong thư mục VT tạo cấu trúc cây thư mục như sau:

cd_continuous_8gau/means

cd_continuous_8gau/mixture_weights cd_continuous_8gau/variances

cd_continuous_8gau/transition_matrices

Chép các tập tin sau vào thư mục vừa tạo.

dict/ VT.dic dict/ VT.filler

etc/VT_8gau_13dCep_16k_40mel_130Hz_6800Hz.4000.mdef etc/VT_8gau_13dCep_16k_40mel_130Hz_6800Hz.ci.mdef

Các tập tin trong thư mục cd_continuous_8gau là các tập tin trong là kết quả của quá trình huấn luyện.

Hai tập tin trong thư mục dict là hai tập tin VT.dic và VT.filler đã được chuẩn bị khi chuẩn bị dữ liệu.

Thư mục etc sử dụng hai file trong VT/model_architecture/ là kết quả của quá trình huấn luyện.

Đổi tên các tập tin cho giống với cây thư mục ở trên.

Trong thư mục sphinx-4/models/VT tạo tập tin model.props với nội dung:

modelClass = edu.cmu.sphinx.model.acoustic.VT_8gau_13dCep_16k_40mel_130Hz_6 800Hz.Model modelLoader = edu.cmu.sphinx.model.acoustic.VT_8gau_13dCep_16k_40mel_130Hz_6 800Hz.ModelLoader isBinary = true featureType = 1s_c_d_dd vectorLength = 39 sparseForm = false numberFftPoints = 512 numberFilters = 40 gaussians = 8 minimumFrequency = 130 maximumFrequency = 6800 sampleRate = 16000 dataLocation = cd_continuous_8gau modelDefinition = etc/TEST_8gau_13dCep_16k_40mel_130Hz_6800Hz.ci.mdef

Trong thư mục sphinx-4/models/VT/etc tạo tập tin variables.def có nội dung:

set exptname = test set vector_length = 13

set dictionary = $base_dir/lists/test.dic set fillerdict = $base_dir/lists/test.filler

set statesperhmm = 3 set skipstate = no

set gaussiansperstate = 8 set feature = 1s_c_d_dd set n_tied_states = 4000 set agc = none

set cmn = current set varnorm = no

Bước 3: Chỉnh sửa tập tin build.xml trong sphinx-4:

Chú ý thêm các tag tương ứng ở các vị trí thích hợp trong tập tin xml, có thể sửa name và value của thẻ có sẵn nếu không muốn build cái có trước.

Thêm các thuộc tính:

<property name="test_name" value =

"VT_8gau_13dCep_16k_40mel_130Hz_6800Hz"/>

<property name="VT_data_dir" value="models/acoustic/VT"/>

Tìm thẻ target có tên create_all_model_classes thêm vào:

<antcall target="create_my_model_classes">

<param name="my_model_name" value="${VT_name}"/> </antcall>

Tìm thẻ target có tên delete_all_model_classes thêm vào:

<antcall target="delete_my_model_classes">

<param name="my_model_name" value="${VT_name}"/> </antcall>

<antcall target="create_my_model">

<param name="my_model_data_dir" value="${VT_data_dir}"/> <param name="my_model_name" value="${VT_name}"/> </antcall>

Bước 4: Rebuild

chuyển sang chế độ dòng lệnh Cmd và chuyển đến thư mục sphinx-4 rồi thực hiện lệnh:

ant

Chú ý: Máy phải được cấu hình biến môi trường cho ant trước đó.

Bước 5: Trước khi tạo mô hình sử dụng trong sphinx-4 Sửa file cấu hình:

<component name="VT"

type="edu.cmu.sphinx.model.acoustic.VT_8gau_13dCep_16k_40mel_13 0Hz_6800Hz.Model">

<property name="loader" value="sphinx3Loader"/> <property name="unitManager" value="unitManager"/> </component>

<component name="sphinx3Loader"

Type="edu.cmu.sphinx.model.acoustic.VT_8gau_13dCep_16k_40mel_1 30Hz_6800Hz.ModelLoader">

<property name="logMath" value="logMath"/>

<property name="unitManager" value="unitManager"/> </component>

type="edu.cmu.sphinx.linguist.dictionary.FullDictionary"> <property name="dictionaryPath" value="resource:/edu.cmu.sphinx.model.acoustic.VT_8gau_13dCep_1 6k_40mel_130Hz_6800Hz.Model!/edu/cmu/sphinx/model/acoustic/VT _8gau_13dCep_16k_40mel_130Hz_6800Hz/dict/VT.dic"/> ... </component>

Một phần của tài liệu Nhận dạng tiếng nói việt nam từ vựng lớn liên tục (Trang 61)

Tải bản đầy đủ (PDF)

(121 trang)