1. Tổng quan về mạng Nơ ron sâụ
3.4.3. Tạo mô hình ngôn ngữ
Sử dụng dòng lệnh sau để tạo mô hình ngôn ngữ, với đầu vào …, đầu ra là mô hình dữ liệu được lưu trong thư mục /lang_prep/local/lm
$ local/create_LMs.sh $WORK/local $WORK/local/train/trans.txt \ $WORK/local/test/trans.txt $WORK/local/lm "$LMs"
3.4.4.Tạo các tập tin cho lang_prep/local/dict và lang_prep/local/lang
(Thư mục 5.1.2 và 5.1.3 trong cây thư mục hình 3.6)
Các tập tin trong thư mục lang_prep/local/dict chứa các thông tin chi tiết về các tập tin âm thanh, các bản ghi âm lời nói và thông tin về người nóị Các tập tin trong thư mục lang_prep/local/dict được tạo ra bởi dòng lệnh:
$ local/prepare_cs_transcription.sh $WORK/local $WORK/local/dict || exit 1 $ local/create_phone_lists.sh $WORK/local/dict || exit 1
1. Thư mục lang_prep/local/dict chứa các tập tin sau: text.txt
wav.scp utt2spk spk2utt
73
a) Text
Tập tin này chứa các cách phát âm theo lời nói của văn bản. Tập tin này có định dạng: utterance_id WORD1 WORD2 WORD3 WORD4 ...
Ví dụ: 01-ds0007 Ở NGƯỜI BỊ HỘI CHỨNG ĂN KHI NGỦ PHẦN NÃO PHẢI VẪN THỨC VÀ SAU ĐÓ LÀ CẢ CÁC DẠNG HOẠT ĐỘNG THỂ CHẤT
Khi tạo ra tập tin text này, bộ từ vựng (lexicon) cũng cần đảm bảo chỉ chứa các từ có trong dữ liệu, không có các âm vị không liên quan mà đang huấn luyện.
b) Wav.scp
- Wav.scp chứa thông tin vị trí (đường dẫn) đến các tập tin âm thanh định dạng wav. Tập tin wav.scp có dạng: file_id /path/filẹ
Ví dụ:
01-ds0000 /home/thanh/kaldi-trunk/egs/VS/s5/data/train/01-ds0000.wav 01-ds0001 /home/thanh/kaldi-trunk/egs/VS/s5/data/train/01-ds0001.wav 01-ds0002 /home/thanh/kaldi-trunk/egs/VS/s5/data/train/01-ds0002.wav
c) utt2spk
- utt2spk chứa các ánh xạ của mỗi một lời nói tương ứng với người nóị Tập tin utt2spk có dạng: utt_id spk utt_id = utterance ID spk = speaker ID Ví dụ: 01-ds0000 01 02-kd0001 02 03-ox0002 03 d) spk2utt
spk2utt là một tập tin chứa ánh xạ từ người nói tới lời nói tương ứng. Ví dụ: 01 01-ds0000
74
Thư mục /lang_prep/local/lang là thư mục chứa dữ liệu ngôn ngữ cụ thể ví dụ như tập từ vựng (lexicon) chỉ chứa các từ và cách phát âm của chúng có mặt trong dữ liệu ta thực hiện. Thư mục này chứa:
- Lexicon.txt - nonsilence_phones.txt - optional_silencẹtxt - silence_phones.txt - extra_questions.txt (optional) a) Lexicon.txt
- Lexicon.txt chứa bộ từ vựng của ngôn ngữ đang thực hiện. được tạo thành từ đầu vào là tập tin cs_transcriptions.txt
- lexicon.txt có định dạng: <word> <phone1> <phone2> ... Các từ vựng được liệt kê mỗi từ một dòng riêng.
Ví dụ: AI a i AN a n ANH a n h BA b a BAN b a n BAO b a o BAY b a y
(Nếu muốn sử dụng xác suất phát âm, thay vì tạo ra tập tin lexicon.txt, thì tạo tập tin lexiconp.txt mà có chữa xác suất ở trường thứ hai).
b) nonsilence_phones.txt
Tập tin này chứa một danh sách của tất cả các âm vị không chứa khoảng lặng. Tập tin được tạo bằng cách chỉnh sửa tập tin phones.txt, các âm vị giống nhau được để trên cùng một dòng.
75
lence_phones.txt chứa mô hình ‘SIL’ (silence) và ‘oov’ (out of vocabulary) optional_silencẹtxt sẽ chỉ chứa mô hình ‘SIL’. Tập tin này được tạo ra với lệnh sau:
echo –e 'SIL'\\n'oov' > silence_phones.txt
d) optional_silencẹtxt
optional_silencẹtxt đơn giản chỉ chứa mô hình ‘SIL’. Sử dụng dòng lệnh sau để tạo tập tin.
echo 'SIL' > optional_silencẹtxt
e) extra_questions.txt (optional)
Kịch bản Kaldi sẽ tạo một tập tin cơ sở extra_questions.txt cho ta, nhưng trong lang_prep/lang/phones. Tập tin này “asks questions” về thông tin theo ngữ cảnh của âm vị bằng cách chia âm vị thành 2 phần khác nhaụ Một thuật toán sẽ xác định liệu nó có hữu ích cho mô hình trong một bối cảnh cụ thể. Các extra_questions.txt chuẩn sẽ chứa các “questions” phổ biến nhất, ví dụ: liệu âm vị là từ khởi tạo hay từ kết thúc. Nếu ta có câu hỏi mà không thuộc tập tin extra_questions.txt chuẩn, chúng cần phải được thêm vào tập tin nàỵ