Khối trích trọn đặc trưng tiếng nói

Một phần của tài liệu Nghiên cứu hệ thống tổng hợp tiếng nói theo phương pháp học sâu (Trang 35)

Khối trích chọn đặc trưng tiếng nói (vocoder) có chức năng phân tích âm thanh thành các đặc trưng âm học, được sử dụng để huấn luyện mô hình mạng nơ ron âm học. Hệ thống tổng hợp tiếng nói tiếng Việt sử dụng phần mềm WORLD vocoder [16]. Các đặc trưng tiếng nói mà WORLD vocoder trích chọn được bao gồm: Đường bao phổ tín hiệu (Spectral Envelope), tín hiệu kích thích không tuần hoàn (Aperiodic Energy) và tuần số cơ bản F0.

Hình 3.5 Mô hình WORLD vocoder [16]

Đường bao phổ tín hiệu là đặc trưng cho độ to của giọng nói, được ước lượng bằng công cụ CheapTrick [20]. Đường bao phổ tín hiệu được mô tả như hình sau:

34

Hình 3.6 Đặc trưng Spectral Envelop của tín hiệu tiếng nói [19]

Đặc trưng bao phổ tín hiệu được chuyển đổi thành hệ số Mel (Mel coefficients - MC) theo các bước như sau:

• Bước 1: Biến đổi tín hiệu tiếng nói thành âm phổ (spectrum) bằng phép biến đổi Fast

Fourier Transform.

• Bước 2: Sử dụng bộ lọc lấy được đường bao phổ (spectral envelop) của tín hiệu.

• Bước 3: Sử dụng phép biến đổi Inverse Fast Fourier Transform, trích xuất được các

hệ số Mel từ đường bao phổ.

Tần số cơ bản F0 đặc trưng cho độ to của giọng nói, được lấy mẫu và logragit để chuyển đổi thành log F0 bằng công cụ DIO. Tần số cơ bản của âm thanh như hình sau:

Hình 3.7 Tần số F0 của tín hiệu tiếng nói [19]

35

• Sử dụng bộ lọc thông thấp với các tần số cắt khác nhau để lọc tín hiệu, nếu tín hiệu

có chứa thành phần tần số cơ bản thì sẽ có dạng hình Sin với chu kỳ T0. Do chưa biết F0 nên sử dụng bộ lọc với tần số cắt khác nhau.

• Tìm các ứng viên cho tần số cơ bản F0 và độ tin cậy của tần số được trích ra.

• Chọn ra ứng viên có độ tin cậy cao nhất là tần số cơ bản F0.

Tín hiệu kích thích không tuần hoàn đặc trưng cho độ dài và độ mạnh của giọng nói, được trích xuất bằng công cụ PLATINUM [22].

Hình 3.8 Đặc trưng Aperiodic Energy của tín hiệu tiếng nói [19]

Tín hiệu tiếng nói được trích xuất thành các đặc trưng: Hệ số Mel, tần số cơ bản F0, tín hiệu kích thích không tuần hoàn. Gộp 3 đặc trưng thành một và biểu diễn thành véc tơ đặc trưng âm học [17]:

Audio raw

Extracted acoustic features: MC, LF0, BAP

Composed acoustic features: cmp

make features make cmp

Hình 3.9 Trích xuất đặc trưng âm thanh

Các véc tơ đặc trưng âm học được vào mô hình âm học, cùng với đặc trưng ngôn ngữ từ khối Label Aligner để huấn luyện thành mô hình âm học là mạng nơ ron học sâu có 6 lớp ẩn.

36

3.2. Pha kiểm thử

3.2.1. Khối trích trọn đặc trưng ngôn ngữ

Trong pha tổng hợp, khối trích chọn đặc trưng ngôn ngữ có chức năng trích xuất đặc trưng ngôn ngữ của văn bản cần tạo ra tiếng nói. Đặc trưng ngôn ngữ là các nhãn chứa thông tin về âm vị, được biểu diễn thành các véc tơ đặc trưng ngôn ngữ. Tuy nhiên, đặc trưng ngôn ngữ chưa được gán thời gian bắt đầu và thời gian kết thúc cho âm vị. (adsbygoogle = window.adsbygoogle || []).push({});

3.2.2. Mô hình thời gian

Véc tơ từ khối trích chọn đặc trưng ngôn ngữ được đưa vào mô hình thời gian. Dựa vào mô hình được sinh ra trong pha huấn luyện, âm vị được ước lượng thời gian bắt đầu và thời gian kết thúc của trạng thái khi qua mô hình thời gian.

Mô hình thời gian là mạng nơ ron học sâu có đặc điểm như sau:

• Đầu vào là véc tơ 778 chiều chứa các đặc trưng ngôn ngữ của từng âm vị. Với mỗi

câu trong tập dữ liệu, số lượng véc tơ đầu vào sẽ là số âm vị có trong câu.

• Có 6 lớp ẩn, mỗi lớp có 1024 neutron và sử dụng hàm TANH [21] là hàm kích hoạt.

• Đầu ra là véc tơ 5 có chiều chứa thông tin ước lượng khoảng thời gian xuất hiện của

từng trạng thái trong âm vị. Số lượng véc tơ đầu ra bằng số âm vị có trong câu. Cấu trúc mô hình thời gian như sau:

TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 Linguistic Features Input Layer Output Layer H id d e n L aye r 778 Dim 5 Dim Duration

37

Sau mô hình thời gian, đặc trưng ngôn ngữ của văn bản được gán thời gian bắt đầu và thời gian kết thúc cho các âm vị:

0 1550000 xx^xx-pau+s=aw@0_0/A:xx_0/B:xx-1@0-0&0-0/C:0+3/D:xx-0/E:xx+1/F:E-3/G:0-0/H:1=1@0=6/I:3_1/J:42+14-5[2] 1550000 1900000 xx^xx-pau+s=aw@0_0/A:xx_0/B:xx-1@0-0&0-0/C:0+3/D:xx-0/E:xx+1/F:E-3/G:0-0/H:1=1@0=6/I:3_1/J:42+14-5[3] 1900000 6000000 xx^xx-pau+s=aw@0_0/A:xx_0/B:xx-1@0-0&0-0/C:0+3/D:xx-0/E:xx+1/F:E-3/G:0-0/H:1=1@0=6/I:3_1/J:42+14-5[4] 6000000 9300000 xx^xx-pau+s=aw@0_0/A:xx_0/B:xx-1@0-0&0-0/C:0+3/D:xx-0/E:xx+1/F:E-3/G:0-0/H:1=1@0=6/I:3_1/J:42+14-5[5] 9300000 12900000 xx^xx-pau+s=aw@0_0/A:xx_0/B:xx-1@0-0&0-0/C:0+3/D:xx-0/E:xx+1/F:E-3/G:0-0/H:1=1@0=6/I:3_1/J:42+14-5[6] 12900000 13150000 xx^pau-s+aw=ngz@0_2/A:xx_1/B:0-3@0-0&0-0/C:0+1/D:xx-1/E:E+3/F:V-1/G:1-1/H:3=1@1=5/I:1_1/J:42+14-5[2] 13150000 13350000 xx^pau-s+aw=ngz@0_2/A:xx_1/B:0-3@0-0&0-0/C:0+1/D:xx-1/E:E+3/F:V-1/G:1-1/H:3=1@1=5/I:1_1/J:42+14-5[3] 13350000 13650000 xx^pau-s+aw=ngz@0_2/A:xx_1/B:0-3@0-0&0-0/C:0+1/D:xx-1/E:E+3/F:V-1/G:1-1/H:3=1@1=5/I:1_1/J:42+14-5[4] 13650000 13850000 xx^pau-s+aw=ngz@0_2/A:xx_1/B:0-3@0-0&0-0/C:0+1/D:xx-1/E:E+3/F:V-1/G:1-1/H:3=1@1=5/I:1_1/J:42+14-5[5] 13850000 14100000 xx^pau-s+aw=ngz@0_2/A:xx_1/B:0-3@0-0&0-0/C:0+1/D:xx-1/E:E+3/F:V-1/G:1-1/H:3=1@1=5/I:1_1/J:42+14-5[6] 3.2.3. Mô hình âm học

Mô hình âm học được tạo ra trong pha huấn luyện được sử dụng để dự đoán đặc trưng âm học. Đầu vào là trạng thái âm vị được gán nhãn thời gian sau mô hình thời gian, đầu ra là các đặc trưng âm học tương ứng theo khung thời gian 5ms.

Mô hình âm học là một mạng nơ ron học sâu với đặc điểm:

• Véc tơ đầu vào có 787 chiều, trong đó 778 chiều chứa đặc trưng ngôn ngữ của âm

vị và 9 chiều để đánh số thứ tự khung (mỗi âm vị được chia nhỏ thành nhiều khung thời gian có độ dài 5ms tương ứng với đặc trưng âm học của WORLD).

• Có 6 lớp ẩn, mỗi lớp có 1024 nơ ron và sử dụng hàm TANH là hàm kích hoạt.

• Đầu ra là véc tơ 186 chiều chứa các đặc trưng âm học được ước lượng bao gồm:

Đường bao phổ tín hiệu (SP), (tín hiệu kích thích) BAP, Logarit của tần số cơ bản F0 (log F0), deltas và deltas deltas của 3 đại lượng.

38 TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 TANH: 1024 Linguistic Features Input Layer Output Layer H id d en L aye r 778 Dim 180 9 Dim Frame Features 3 3 SP BAP F0

Hình 3.11 Cấu trúc mạng nơ ron mô hình âm học Acoutic

3.2.4. Khối tạo tiếng nói

Khối tạo tiếng nói là công cụ WORLD được sử dụng trong pha huấn luyện để tạo ra tiếng nói. Các đặc trưng âm học sinh ra từ mô hình âm học gồm: SP, BAP, F0. Khối tổng hợp tiếng nói sinh ra tín hiệu tiếng nói tương ứng với văn bản đầu vào.

Spectral Envelope Frequency F0 Aperiodicity Synthesiner Speech

39

CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ 4.1.Thực nghiệm

4.1.1. Môi trường thực nghiệm

Hệ thống tổng hợp tiếng nói theo phương pháp mạng nơ ron học sâu và hệ thống tổng hợp tiếng nói theo phương pháp tham số thống kê HMM được cài đặt trên máy tính ảo có cấu hình hạn chế như sau:

Thành phần Chỉ số

CPU 1.90 GHz Core i5 Intel (8 cores) (adsbygoogle = window.adsbygoogle || []).push({});

RAM 8GB

OS Ubuntu 16.04 LTS

Disk 120GB

Bảng 4.1 Cấu hình phần cứng máy chủ thử nghiệm

Phần mềm sử dụng cho hệ thống tổng hợp theo phương pháp mạng nơ ron học sâu:

STT Tên phần mềm Tác giả Nguồn

1 Python2.7 https://www.python.org/d ownload/releases/2.7/ 2 GCC 5.4 https://ftp.gnu.org/gnu/gc c/gcc-5.4.0/ 3 vita_ana Truong Do https://bitbucket.org/vaisv n/hts_for_vietnamese/src/ master/tools/textana/ 4 Merlin Toolkit

Centre for Speech

Technology Research

(CSTR), University of Edinburgh

https://github.com/CSTR- Edinburgh/merlin

5 WORLD Vocoder University of Yamanashi https://github.com/mmori

40

STT Tên phần mềm Tác giả Nguồn

6 Hidden Markov Model

Toolkit University of Cambridge http://htk.eng.cam.ac.uk/

Bảng 4.2 Các phần mềm sử dụng trong hệ thống

Trong đó:

• Python2.7 và GCC5.4 là môi trường chạy phần mềm Merlin và HMM.

• Vita_ana tương ứng với khối trích chọn đặc trưng ngôn ngữ, có chức năng trích chọn

đặc trưng ngôn ngữ từ văn bản.

• Hidden Markov Model Toolkit tương ứng với khối Label Aligned, có chức năng gán

thời gian bắt đầu và kết thúc cho nhãn của âm vị.

• Merlin Toolkit là mạng nơ ron học sâu của mô hình thời gian và mô hình âm học.

• WORLD vocoder có chức năng trích chọn đặc trưng âm thanh và tổng hợp lại tín

hiệu tiếng nói từ các đặc trưng âm học.

Hệ thống tổng hợp theo phương pháp tham số thống kê HMM sử dụng mã nguồn của VAIS [23].

4.1.2. Bộ dữ liệu sử dụng trong thực nghiệm

Để đánh giá hệ thống tổng hợp tiếng nói dựa trên mạng nơ ron học sâu, luận văn sử dụng bộ dữ liệu tiếng nói của VAIS và Trung tâm Không gian mạng Viettel như sau:

TÊN BỘ DỮ LIỆU SỐ LƯỢNG CÂU SỐ LƯỢNG TỪ TỔNG THỜI GIAN GIỚI TÍNH PHƯƠNG NGỮ Data500 500 7960 (1805 từ không lặp) 45 phút Nữ Miền Bắc Data1000 1000 14383 (2515 từ không lặp) 83 phút Nữ Miền Bắc Data3156 3156 47340 (5600 từ không lặp) 263 phút Nữ Miền Bắc Bảng 4.3 Bộ dữ liệu thử nghiệm (adsbygoogle = window.adsbygoogle || []).push({});

41

Bộ dữ liệu thử nghiệm đã được tiền xử lý như: Loại bỏ các âm thanh bị nhiễu, chuẩn

hóa âm thanh và nội dung văn bản, chuyển đổi số thành chữ, chuyển đổi từ viết tắt thành viết đầy đủ, chia nhỏ thành các câu có độ dài từ 15 đến 20 từ.

4.1.3. Mô hình huấn luyện

Trước khi đưa vào huấn luyện, bộ dữ liệu tiếng nói được chia thành 3 tập: Tập huấn luyện (training set), tập kiểm định (validation set) và tập kiểm tra (test set) với tỷ lệ là 90%:5%:5%. Trong đó:

• Tập dữ liệu tập huấn luyện được sử dụng để tạo ra mạng nơ ron học sâu cho mô hình

thời gian và mô hình âm học trong pha huấn luyện.

• Tập dữ liệu kiểm định được sử dụng để tinh chỉnh hệ số θ, là hệ số liên kết giữa các

nút nơ ron trong mạng nơ ron học sâu để được kết quả gần với giá trị đầu vào của tập kiểm định nhất. Tập dữ liệu kiểm định được sử dụng để tối ưu mô hình mạng nơ ron để cho ra kết quả tốt nhất.

• Tập kiểm tra được sử dụng để đánh giá độ chính xác của mô hình mạng nơ ron học

sâu sinh ra. Đây là bước đánh giá độ đo của mô hình.

Mô hình thời gian và mô hình âm học được tối ưu bằng thuật toán Stochastic Gradient Descent [19]. Trong đó có thể điều chỉnh các tham số sau:

• Learning Rate: 0.002, là tốc độ điều chỉnh hệ số θ của mạng nơ ron để có được mô

hình tối ưu nhất. Giá trị learning rate kiểm soát tốc độ thay đổi hệ số θ để phù hợp với bài toán. Giá trị learning rate cao giúp mạng nơ ron được huấn luyện nhanh hơn do cần ít lần tịch tiến để về điểm tối ưu, nhưng có thể làm giảm độ chính xác do không thể tiến về điểm tối ưu.

• Batch size: 256, là số mẫu đồng thời được đưa vào huấn luyện mô hình. Đối với máy

chủ có có bộ nhớ ít, phải giảm số mẫu đưa vào đồng thời để tránh bị tràn bộ nhớ.

• Espoch: 25, là số lần đưa toàn bộ dữ liệu vào huấn luyện mô hình hay chính là số

vòng lặp huấn luyện mô hình. Trong quá trình thực nghiệm, có thể giảm số vòng lặp Espoch nếu kết quả tinh chỉnh mô hình mạng nơ ron không có sự thay đổi lớn giữa các vòng lặp.

4.1.4. Tạo ra tiếng nói tiếng Việt từ mô hình mạng nơ ron học sâu

Quá trình tạo ra tiếng nói tiếng Việt trên hệ thống tổng hợp tiếng nói theo phương pháp mạng nơ ron học sâu gồm các bước như sau:

42

4.1.4.1. Pha huấn luyện

Thiết lập tập dữ liệu: Tập dữ liệu gồm 1000 mẫu (mỗi mẫu là cặp audio và text) được chia thành 3 tập con ngẫu nhiên: 900 mẫu cho tập training, 50 mẫu cho tập validation, 50 mẫu cho tập test.

Trích chọn đặc trưng ngôn ngữ: Sử dụng phần mềm vita_ana để trích chọn các đặc trưng ngôn ngữ của tập dữ liệu, các đặc trưng ngôn ngữ được biểu diễn dưới dạng nhãn theo quy chuẩn của HTS [14].

Trích chọn đặc trưng âm học: Sử dụng công cụ WORLD vocoder để trích chọn các đặc trưng âm học. Đặc trưng âm học được dùng để gán thời gian xuất hiện cho đặc trưng ngôn ngữ, và đồng thời được sử dụng để huấn luyện mô hình âm học. • Gán nhãn thời gian cho đặc trưng ngôn ngữ: Sử dụng Hidden Markov Model

Toolkit để gán thời gian cho âm vị. Đầu vào là các đặc trưng ngôn ngữ và đặc trưng âm học, đầu ra là các đặc trưng ngôn ngữ của âm vị đã được gán thời gian.

Huấn luyện mạng nơ ro cho mô hình thời gian: Đặc trưng ngôn ngữ đã được gán thời gian được biểu diễn thành các véc tơ đặc trưng ngôn ngữ theo bộ câu hỏi HTS được thiết kế riêng cho tiếng Việt. Các véc tơ đặc trưng được đưa vào huấn luyện để tạo ra mạng nơ ron học sâu cho mô hình thời gian. Mô hình thời gian được sử dụng để dự đoán thời gian cho các âm vị trong pha tổng hợp.

Huấn luyện mạng nơ ron cho mô hình âm học: Véc tơ đặc trưng ngôn ngữ và véc tơ đặc trưng âm học được đưa vào huấn luyện để tạo ra mạng nơ ron học sâu cho mô hình âm học. Mô hình âm học được sử dụng để dự đoán đặc trưng âm học tương ứng với đặc trưng âm vị trong pha tổng hợp.

4.1.4.2. Pha tổng hợp

Chuẩn hóa văn bản: Văn bản chuyển thành tiếng nói cần được chuẩn hóa, ví dụ: Chuẩn hóa từ viết tắt thành từ viết đầy đủ, chuẩn hóa số thành chữ, ngày tháng dạng số thành dạng chữ… (adsbygoogle = window.adsbygoogle || []).push({});

Trích chọn đặc trưng ngôn ngữ: Văn bản chuẩn hóa được trích chọn ra đặc trưng ngôn ngữ bằng phần mềm vita_ana, biểu diễn thành dạng véc tơ ngôn ngữ đặc trưng ngôn ngữ nhờ bộ câu hỏi HTS.

Gán nhãn thời gian cho đặc trưng ngôn ngữ: Véc tơ đặc trưng ngôn ngữ được đưa vào mạng nơ ron học sâu của mô hình thời gian. Sau mô hình thời gian, véc tơ đặc trưng ngôn ngữ được gán thêm thông tin thời gian xuất hiện của âm vị. Mô hình thời gian là mạng nơ ron truyền thằng 6 lớp ẩn, véc tơ đầu vào là đặc trưng ngôn ngữ có 778 chiều, véc tơ đầu ra thời gian xuất hiện của đặc trưng ngôn ngữ có 5 chiều.

43

Dự đoán đặc trưng âm học: Sau khi gán nhãn thời gian, véc tơ đặc trưng ngôn ngữ được đưa vào mạng nơ ron học sâu của mô hình âm học. Sau mô hình âm học, các đặc trưng âm học tương ứng đặc trưng ngôn ngữ được sinh ra. Mô hình âm học là mạng nơ ron truyền thẳng 6 lớp ẩn, véc tơ đầu vào là đặc trưng ngôn ngữ đã được chia nhỏ thành khung 5ms có 787 chiều (778 chiều đặc trưng ngôn ngữ và 9 chiều mới để xác định các khung 5ms), véc tơ đầu ra là đặc trưng âm học: BAP, SP, F0. • Tổng hợp tiếng nói: Các đặc trưng âm học được vào phần mềm WORLD vocoder,

tại đây tín hiệu tiếng nói tiếng Việt được tổng hợp ra tương ứng với văn bản đầu vào.

4.2.Đánh giá kết quả

4.2.1. Phương pháp đánh giá

Tiếng nói tổng hợp được đánh giá bằng phương pháp so sánh điểm MOS (Mean Opinion Score), là điểm trung bình theo cảm nhận của người nghe. Phương pháp đánh giá như sau:

• Mời 10 người tham gia đánh giá và cho điểm chất lượng.

• Tiêu chí cho điểm chất lượng dựa vào độ tự nhiên và độ nghe dễ hiểu của giọng nói

Một phần của tài liệu Nghiên cứu hệ thống tổng hợp tiếng nói theo phương pháp học sâu (Trang 35)