Chương 1 NHẬN DẠNG GIỌNG NÓI 1. Giói thiệu Nhận dạng giọng nói (speech recogntion) là một tác vụ khá quan trọng trong việc phát triển các công nghệ liên quan đến trí tuệ nhân tạo. Các hệ thống robot, các hệ thống ứng dụng trí tuệ nhân tạo luôn cố gắng thực hiện các tác vụ của bộ não sinh học. Ví dụ các mô hình thị giác máy tính (computer vision) và học sâu (deep learning) cho phép thực hiện các tác vụ như nhận dạng hình ảnh và suy luận.
Các tác vụ nhận dạng tiếng nói và chuyển tiếng nói sang văn bản cho phép bắt chước khả năng nghe và phân tích của bộ não sinh học. So với các lĩnh vực khác như thị giác máy tính, nhận dạng phân loại hình ảnh, xử lý ngôn ngữ tự nhiên thì nhận dạng tiếng nói có độ phức tạp cao hơn do đặc tính của tiếng nói phụ thuộc vào các yêu tố như tuổi tác, giới tính, sức khỏe, và cảm tâm trạng người nói. Hơn nữa tiếng nói luôn bị ảnh hưởng nhiều bởi nhiễu và tạp âm của môi trường xung quanh. Do đó, để các mô hình nhận dạng giọng nói có độ chính xác cao, các mô hình này cần được huấn luyện với tập dữ liệu khá đầy đủ và thời gian huấn luyện khá dài.
Mô hình nhận dạng giọng nói hay chuyển đổi gọng nói sang văn bản được mô tả như hình 1.1 Mô hình âm học Acoustic models Trích đặc trưng Giải mã Văn bản Feature extraction Decoder Mô hình ngôn ngữ Language models Hình 1.1: Mô hình một hệ thống chuyển đổi lời nói sang văn bản Một hệ thống chuyển đổi lời nói sang văn bản bao gồm trích rút đặc trưng của tín hiệu lời nói và bộ giải mã. Tín hiệu âm thanh trong miền thời gian được biểu diễn bởi mức âm lượng hay năng lượng theo thời gian được xử lý để trích ra các đặc trưng của lời nói. Thông thường, các tín hiệu sẽ được chuyển đổi qua miền tần số để phục vụ cho quá 4 Luan van trình xử lý và trích rút đặc trưng. Một trong những phương pháp trích đặc trưng của lời nói được sử dụng phổ biến là sử dụng các hệ số phổ tần số của ngôn ngữ, Mel-Frequence Cepstral Coefficient (sau đây gọi tắt là MFCC).
Bộ giải mã sử dụng mô hình âm học và mô hình ngôn ngữ để tạo ra ngõ ra văn bản tương ứng từ các đặc trưng của tín hiệu lời nói. Mô hình âm học thể hiện mối quan hệ giữa các tín hiệu lời nói và các âm vị. Mô hình âm học giúp cho bộ giải mã xác định các âm vị trong tín hiệu lời nói. Các âm vị được ghép lại với nhau nhờ các mô hình ngôn ngữ.
Một số mô hình truyền thống được sử dụng cho bộ giải mã như mô hình Gaussian (Gaussian Model), mô hình Markov ẩn (Hidden Markov Model). Hiện nay các mạng học sâu có thể được sử dụng hiệu quả cho các bộ giải mã trong mô hình chuyển đổi lời nói sang văn bản. Các mạng học sâu được thiết kế để thực hiện một phần hoặc cả mô hình ngôn ngữ và mô hình ngữ âm trong bộ giải mã của hệ thống chuyển đổi lời nói sang văn bản 1. Trích rút đặc trưng tín hiệu lời nói MFCC (Mel- Frequency Cepstral Coefficient) là kỹ thuật được sử dụng phổ biến để trích rút đặc trưng của các tín hiệu lời nói trong các hệ thống nhận dạng giọng nói hoặc chuyển giọng nói thành văn bản.
MFCC là một quá trình xử lý và chuyển đổi tín hiệu lời nói từ miền thời gian sang miền tần số để thu được các giá trị đặc trưng của lời nói. Mục đích của MFCC là rút trích được các thông số tốt nhất diễn tả cho các tín hiệu âm vị. MFCC được thực hiện quá trình rút trích đặc trưng thông qua một số bước xử lý được mô tả trong hình 1.2 Pre- Framming Windowing Emphasis DFT Mel Spectrum Mel Spectrum Delta Energy and Discrete Cosine Mel filter Output Spectrum Transform Bank Hình 1.2: Sơ đồi khối của quá trình tính MFCC của lời nói Bước đầu tiên là đưa các tín hiệu qua các bộ lọc để khuếch đại các tín hiệu có tần số cao (Pre-emphasis). Các bộ lọc có tác dụng cân bằng phổ của tín hiệu bởi vì tần số cao 5 Luan van thường có mức năng lượng thấp hơn so với các tần số khác trong phổ của tín hiệu lời nói.
Mặt khác, các bộ lọc còn có tác dụng cải thiện các hệ số của tín hiệu trên nhiễu (Signal- to-Noise Ratio). Các tín hiệu được đưa qua bộ lọc với phương trình sau: 𝑌[𝑛] = 𝑥 [𝑛] − 𝛼𝑋[𝑛 − 1] (1.1) Trong đó x[n], y[n] là các tín hiệu rời rạc của tín hiệu lời nói. α là hệ số tiền khuếch đại. Tiếp theo các tín hiệu được phân thành các đoạn nhỏ với thời gian cho mỗi đoạn từ 20 đến 40 ms.
Áp dụng cửa sổ hóa các đoạn nhỏ sử dụng cửa sổ Hamming để làm giảm sự không liên tục của tín hiệu ở điểm bắt đầu và kết thúc của các đoạn. Quá trình cửa sổ hóa sử dụng cửa sổ Hamming được minh họa trong phương trình 6.46𝑐𝑜𝑠 ( ) ;0 < 𝑛 ≤ 𝑁 − 1 𝑁−1 Trong đó N là số mẫu trong mỗi đoạn. Các tín hiệu trong miền thời gian được chuyển sang miền tần số sử dụng phép biến đổi Fourier. Kết quả của phép biến đổi ta thu được phổ năng lượng của tín hiệu.
Các tần số trong phổ năng lượng của quá trình chuyển đổi Fourier rất rộng, trong khi đó đặc điểm tần số của lời nói là tập trung ở dãy tần số thấp (dưới 1Khz và không tuyến tính). Một trong những giải pháp chia năng lượng trong phổ năng lượng của tín hiệu lời nói là sử dụng bộ lọc Mel.3: Các bộ lọc trong thang Mel Tín hiệu được đưa qua các bộ lọc với dãy tần khác nhau. Tại vị trí tần số thấp, chúng ta dùng các bộ lọc với dải tần số hẹp hơn vì tín hiệu lời nói tập trung nhiều ở tần số thấp. Ngược lại ở dải tần số cao, tín hiệu lời nói tập trung ít nên chúng ta có thể sử dụng các bộ lọc với dãy tần rộng hơn.
Các bộ lọc với các dải tần không tuyến tính và trùng lặp nhau 6 Luan van như trong hình 6.16 được gọi là các bộ lọc trong thang Mel. Việc chuyển các tần số sang thang tần số Mel được thực hiện bởi công thức sau: 𝐹 (𝑀𝑒𝑙) = [2595 ∗ 𝑙𝑜𝑔10[1 + 𝑓]700 (1.3) Bước cuối cùng là đi tính mức năng lượng trong dải tần số mới, sử dụng phép biến đổi Cosin và tính năng lượng để thu được các hệ số MFCC 1. Các mô hình nhận dạng giọng nói Các hệ thống nhận dạng gióng nói thường được thiết kế với 2 khối cơ bản bao gồm khối tách đặc trưng (feature extraction) và khối giải mã (decoder). Mặc dù một số hệ thống nhận dạng tiếng nói hiện đại có khả năng nhận dạng giọng nói thô mà không dựa trên các đặc trưng tách ra, tuy nhiên, sử dụng các đặc trưng thay cho việc sử dụng dữ liệu thô cho đến thời điểm hiện nay vẫn có nhiều ưu điểm.
Bộ giải mã sử dụng 2 mô hình cơ bản là mô hình âm học (acoustic model) và mô hình ngôn ngữ (language model). Một hệ thống nhận dạng giọng nói có các thành phần được mô tả trong hình 1.4 Speech Feature Recognized Decoder extraction words Acoustic Language model model Adaptation Hình 1. Sơ đồi khối hệ thống nhận dạng giọng nói [9] Tín hiệu âm thanh nhận được từ thiết bị đầu vào như microphone được đưa qua các khối xử lý tín hiệu và trích rút đặc trưng. Quá trình xử lý tín hiệu được trình bày ở phần trước.
Quá trình xử lý tín hiệu được thực hiện đơn giản hay phức tạp tuỳ thuộc vào mỗi hệ thống. Các đặc trưng được trích rút và đưa đến khối giải mã để thu được các chuỗi ký tự hoặc các chuỗi từ tương ứng với tín hiệu âm thanh nhận được. 2 mô hình quan trọng trong bộ giải mã là mô hình âm học (acoustic model) và mô hình ngôn ngữ (language). Một mô hình kênh – nguồn cho hệ thống nhận dạng tiếng nói được minh hoạ trong hình 1.
7 Luan van Hình 1. Mô hình kên truyền thông bằng giọng nói [10] Để mô hình toán cho hệ thống nhận dạng tiếng nói, chúng ta giả định hệ thống truyền nhận tiếng nói được minh hoạ bằng sơ đồ khối trong hình 1.5, người nói đưa ra quyết định chuỗi từ nối tiếp cho câu nói, W và chuỗi từ này được chuyển sang dạng âm thanh thông qua hệ thống tạo âm (speech generator). Tín hiệu âm hay dạng sóng âm được tiếp nhận ở đầu thu của thiết bị nhận, tại đây tín hiệu được xử lý và trích rút các đặc trưng biểu diễn cho tín hiệu âm thanh nhận được. Các đặc trưng của tín hiệu âm thanh, X, được đưa đến bộ giải mã âm tiếng nói (speech decoder) để tạo ra các chuỗi ̂.
Trường hợp lý tưởng hệ thống nhận dạng ký tự hoặc từ tương ứng, được ký hiệu là 𝑊 khôi phục tín hiệu âm thành chuỗi ký tự hoặc từ trùng vơi chuỗi ký tự hoặc từ của nguồn ̂ = 𝑊. phát, 𝑊 Mộ hệ thống nhận dạng tiếng nói thực tế thường bao gồm các thành phần chính như khối xử lý tín hiêu và trích rút đặc trưng, mô hình âm học và mô hình ngôn ngữ như được giơi thiệu ở hình số 1. Mô hình âm học bao gồm biểu diễn của âm học, ngữ âm, sự biến đổi của âm do môi trường, và có thể tồn tại sự khác biệt của giới tính và ngữ điệu của những người nói. Mô hình ngôn ngữ biểu diễn mối liên hệ giữa các từ nối tiếp để tạo ra ngữ nghĩa của câu hoặc cụm từ.
Ngữ nghĩa và chức năng liên quan mà người nói mong muốn cũng có thể được thể hiện trong mô hình ngôn ngữ. Như vậy có thể hiểu đơn giản là mô hình âm học cho phép nhận dạng các âm riêng lẽ thông qua việc giải mã các âm thành các ký tự hoặc các từ. Mô hình ngôn ngữ cho phép chuyển các từ hoặc các ký tự nhận dạng được thành các cụm từ hoặc các câu có nghĩa. Trong lĩnh vực nhận dạng tiếng nói tồn tại rất nhiều rũi ro làm cho quá trình nhận dạng không chính xác.
Đó là các yếu tố liên quan đến đặc tính của người nói, phong cách nói và tốc độ nói, các từ không rõ nghĩa, tên riêng, nhiễu môi trường, các thay đổi về giọng điệu. Một hệ thống nhận dạng tiếng nói tốt phải đảm bảo hạn chế ảnh hưởng của các yếu tố trên. Các yếu tố của giọng nói phải được xử lý trong mô hình âm học và mô hình ngôn ngữ. 8 Luan van Trong hình 1.