Bài viết Phương pháp sử dụng dữ liệu băng hẹp để cải thiện mô hình nhận dạng tiếng nói băng rộng trình bày việc xây dựng dữ liệu băng hẹp để nâng cao chất lượng của mô hình nhận dạng tiếng nói băng rộng. Các thử nghiệm khác nhau đã chỉ ra rằng, sử dụng thêm dữ liệu băng hẹp luôn mang lại sự cải thiện cho mô hình băng rộng.
Trang 1PHƯƠNG PHÁP SỬ DỤNG DỮ LIỆU BĂNG HẸP ĐỂ CẢI THIỆN
MÔ HÌNH NHẬN DẠNG TIẾNG NÓI BĂNG RỘNG
Đỗ Văn Hải, Phạm Thanh Bình, Nguyễn Thị Phương Thảo
Trường Đại học Thủy lợi
1 MỞ ĐẦU
Trong hệ thống nhận dạng tiếng nói tín
hiệu được ghi âm thường được lấy mẫu ở tần
số 16kHz (tín hiệu băng rộng) dùng trong các
ứng dụng ghi âm thông thường Tuy nhiên
trong hệ thống điện thoại, tần số lấy mẫu chỉ
là 8kHz (tín hiệu băng hẹp) Thông thường
hai loại dữ liệu này được sử dụng độc lập
nhau để huấn luyện ra hai loại mô hình nhận
dạng tiếng nói riêng biệt
Hình 1 miêu tả tín hiệu của một file tiếng
nói băng rộng có tần số lấy mẫu 16kHz
(fmax = 8kHz ở dưới) và vẫn nguồn âm thanh
đó nhưng lấy mẫu ở 8kHz (hình trên) Ta
thấy rằng với tín hiệu có tần số lấy mẫu 8kHz
thì toàn bộ phổ (spectrum) tín hiệu từ 4kHz
đến 8kHz bị mất
Hình 1 Spectrogram của tín hiệu tiếng nói
băng hẹp ở trên (tần số lấy mẫu 8kHz)
và băng rộng ở dưới
Trong nghiên cứu này, chúng tôi đề xuất phương pháp có thể tận dụng dữ liệu băng hẹp để nâng cao chất lượng nhận dạng cho
mô hình băng rộng Có thể chất lượng của tín hiệu băng hẹp không bằng dữ liệu dữ liệu băng rộng tuy nhiên với số lượng lớn và loại
dữ liệu khác biệt, ta vẫn hi vọng dữ liệu băng hẹp sẽ bổ sung thêm thông tin để vào để tăng cường chất lượng mô hình băng rộng
2 PHƯƠNG PHÁP TIẾP CẬN Một vấn đề đặt ra là làm sao có thể sử dụng dữ liệu băng rộng với dữ liệu băng hẹp khi mà toàn bộ phổ thông tin tiếng nói từ 4-8kHz của tín hiệu băng hẹp bị mất hết Hình 1 Xuất phát từ ý tưởng các bộ khử nhiễu (denoiser) được phát triển gần đây khi ta đưa đầu vào là tín hiệu tiếng nói có nhiễu đầu ra sẽ
là tín hiệu tiếng nói sạch [1], chúng ta có thể xây dựng một bộ tái tạo (reconstructor) từ tín hiệu băng hẹp lên tín hiệu băng rộng sử dụng
cơ chế tương tự với các denoiser
Trong nghiên cứu này, chúng tôi sử dụng đầu vào của bộ tái tạo sẽ là tín hiệu băng hẹp đầu ra sẽ là tín hiệu băng rộng được tái tạo lại
từ tín hiệu băng hẹp Để huấn luyện “việc tái tạo” này ta thực hiện quy trình huấn luyện sử dụng mô hình mạng nơ ron nhân tạo như Hình 2 Bộ dữ liệu được sử dụng là bộ dữ liệu băng rộng (16kHz) mà không cần có bất
cứ nhãn (label) gì Dữ liệu này được chuyển thành dữ liệu băng hẹp bằng cách giảm tần số lấy mẫu từ 16kHz xuống 8kHz (down sample) để làm đầu vào huấn luyện cho bộ tái tạo Đầu ra của bộ tái tạo là tín hiệu băng rộng ban đầu Với cách huấn luyện này, bộ
Trang 2tái tạo sẽ học được bổ sung những phổ tín
hiệu bị cắt trong tín hiệu băng hẹp
Hình 2 Quá trình huấn luyện cho bộ tái tạo
Tuy nhiên khi áp dụng mô hình này để tái
tạo tín hiệu băng rộng áp dụng vào nhận dạng
tiếng nói thì kết quả không tốt Một trong
những nguyên nhân có thể là việc tái tạo tín
hiệu băng rộng đã gây méo (distortion) so với
tín hiệu băng rộng gốc Do vậy để giảm sự
méo này ta thay vì tái tạo toàn bộ phổ tín hiệu
băng rộng như trên Hình 2, ta đề xuất phương
pháp thực hiện ở miền tần số thay vì ở miền
thời gian như sau:
Bóc tách tín hiệu băng rộng thành hai
thành phần riêng biệt 0-4kHz và 4-8kHz
Đầu ra của mạng nơ ron trên Hình 2 là
phổ tín hiệu 4-8kHz thay vì 0-8kHz như cách
tiếp cận trước
Tái tạo phần phổ từ 4-8k từ tín hiệu băng
hẹp dùng mạng nơ ron
Sau đó kết hợp 2 phần phổ tín hiệu lại
tức là: từ 0-4kHz lấy từ tín hiệu băng hẹp gốc
(by pass) và phần phổ 4-8kHz được tái tạo
nhờ mạng nơ ron trên Hình 2
Do đó với cách tiếp cận này ta đã làm
giảm méo được tín hiệu tái tạo, ta chỉ tái tạo
phần phổ bị mất thay vì tái tạo toàn bộ phổ
tín hiệu
3 THỬ NGHIỆM
3.1 Thử nghiệm với tập dữ liệu huấn
luyện nhỏ
Trước hết ta thử nghiệm mô hình nhận
dạng với dữ liệu nhỏ
Mô hình 1: mô hình huấn luyện chỉ dùng
10.000 câu huấn luyện băng rộng
Mô hình 2: dùng 10.000 câu huấn luyện
băng rộng kết hợp với 10.000 câu huấn luyện
băng hẹp được tái tạo như trong phần 2
Mô hình 3: mô hình huấn luyện dùng 20.000 câu huấn luyện băng rộng
Bảng 1 Sai số từ của các mô hình khác nhau
Mô
WER (%)
2 Băng rộng 10.000 câu + băng hẹp 10.000 câu
32,08
Tất cả các mô hình được huấn luyện sử dụng kiến trúc TDNN-LSTM kết hợp với mô hình ngôn ngữ 4-gram [2] với công cụ được
sử dụng là Kaldi [3]
Kết quả thử nghiệm với bộ thử nghiệm băng rộng độc lập được trình bày ở Bảng 1 Chúng tôi sử dụng chỉ số sai số từ (WER - Word Error Rate1) để đánh giá chất lượng hệ thống nhận dạng Kết quả so sánh
mô hình 1 và 2, ta thấy rằng bằng việc sử dụng thêm dữ liệu băng hẹp như phương pháp đề xuất đã làm giảm sai số từ 36,23% xuống con 32,08% Chú ý rằng mô hình 2 cho kết quả tiệm cận với mô hình 3 tức mô hình sử dụng toàn bộ 20.000 câu dữ liệu băng rộng để huấn luyện
3.2 Thử nghiệm với tập dữ liệu lớn và lượng dữ liệu tái tạo khác nhau
Như phần 3.1 đã chỉ ra phương pháp đề xuất cho hiệu quả cao với tập dữ liệu huấn luyện nhỏ (10.000 đến 20.000 câu) Tuy nhiên trong các hệ thống nhận dạng tiếng nói thực tế, người ta sử dụng hàng trăm nghìn đến hàng triệu câu dữ liệu huấn luyện Trong phần này chúng ta sẽ nghiên cứu thử nghiệm với tập dữ liệu lớn hơn nhiều lần để đánh giá
độ hiệu quả của phương pháp đề xuất trong thực tế Ngoài ra ta sẽ xem xét ảnh hưởng của
mô hình khi sử dụng dữ liệu băng hẹp được tái tạo khác nhau
1 https://en.wikipedia.org/wiki/Word_error_rate
Trang 3 Mô hình yt310k: sử dụng 310.000 câu
băng rộng để huấn luyện Dữ liệu này được
lấy từ Youtube
Mô hình yt310k+ipcc150k: sử dụng
310.000 câu băng rộng để huấn luyện kết hợp
với 150.000 câu huấn luyện băng hẹp được
tái tạo như trong phần 2 Dữ liệu băng hẹp
được lấy từ tổng đài thoại (ipcc) Tương tự
mô hình yt310k+ipcc310k, yt310k+ipcc460k
là mô hình khi kết hợp với 310.000 và
460.000 câu băng hẹp vào tập huấn luyện
Kết quả thử nghiệm với bốn mô hình trên
sáu tập kiểm thử khác nhau được trình bày
trên Hình 3 Trục tung là sai số từ WER(%)
Hình 3 Sai số từ (%) của của 4 mô hình với
các bộ thử nghiệm khác nhau
Ta có thể thấy rằng việc bổ sung dữ liệu
băng hẹp (ipcc) làm giảm sai số đi đáng kể (3
cột sau so với cột đầu tiên) Trong đó việc bổ
sung 310.000 câu băng hẹp làm giảm sai số
đi tương đối so với chỉ bổ sung 150.000 câu
Tuy nhiên nếu ta tiếp tục bổ sung dữ liệu
băng hẹp lên thành 460.000 câu thì sai số có
giảm tuy nhiên mức độ nhỏ hơn Điều này
cũng hợp lý bởi vì mô hình chính là băng
rộng và các tập thử nghiệm cũng là băng rộng
chứ không phải băng hẹp nên dữ liệu băng
hẹp được thêm vào dữ liệu huấn luyện mang
mục đích là bổ sung thông tin còn thiếu hụt trong dữ liệu băng rộng chứ không thể thay thế dữ liệu băng rộng được Tỷ lệ trộn dữ liệu băng rộng và băng hẹp hợp lý là 1:1 sẽ đảm bảo được chất lượng nhận dạng cũng như thời gian huấn luyện mô hình
4 KẾT LUẬN Trong nghiên cứu này, chúng tôi đã xây dựng được một phương pháp nhằm tận dụng
dữ liệu băng hẹp để nâng cao chất lượng của
mô hình nhận dạng tiếng nói băng rộng Các thử nghiệm khác nhau đã chỉ ra rằng, sử dụng thêm dữ liệu băng hẹp luôn mang lại sự cải thiện cho mô hình băng rộng Qua nghiên cứu này, ta cũng thấy rằng, mặc dù dữ liệu băng hẹp về mặt băng thông ít hơn so với dữ liệu băng rộng, tuy nhiên về mặt đặc thù dữ liệu thì dữ liệu băng hẹp được thu thập từ các cuộc trò chuyện qua điện thoại, đây là loại dữ liệu chưa từng xuất hiện trong tập dữ liệu băng rộng như từ Youtube, ghi âm,… Do đó, việc bổ sung dữ liệu băng hẹp vào dữ liệu băng rộng giúp tăng độ đa dạng của dữ liệu huấn luyện lên rất nhiều
5 TÀI LIỆU THAM KHẢO
[1] Yu, Cheng, et al "Speech enhancement based on denoising autoencoder with
Language Processing 28 (2020): 2756-2769 [2] Povey, D., Hadian, H., Ghahremani, P., Li, K., & Khudanpur, S (2018, April) A time-restricted self-attention layer for ASR In
2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp 5874-5878) IEEE
[3] Povey, Daniel, et al "The Kaldi speech recognition toolkit." IEEE 2011 workshop
on automatic speech recognition and understanding No CONF IEEE Signal Processing Society, 2011