MỞ ĐẦU Ngay khi máy tính ra đời con ngƣời đã mơ ƣớc máy tính có thể nói chuyện với mình. Yêu cầu đơn giản nhất là máy có thể xác định đƣợc từ ngữ mà chúng ta nói với máy. Đó là mục tiêu của ngành nhận dạng tiếng nói. Nhận dạng tiếng nói đóng vai trò quan trọng trong giao tiếp giữa ngƣời và máy.
Nó giúp máy móc hiểu và thực hiện các hiệu lệnh của con ngƣời. Hiện nay trên thế giới, lĩnh vực nhận dạng tiếng nói đã đạt đƣợc nhiều tiến bộ vƣợt bậc. Đã có nhiều công trình nghiên cứu về lĩnh vực nhận dạng tiếng nói (Speech recognition) trên cơ sở lý thuyết các hệ thống thông minh nhân tạo, nhiều kết quả đã trở thành sản phẩm thƣơng mại nhƣ ViaVoice, Dragon., các hệ thống bảo mật thông qua nhận dạng tiếng nói, các hệ quay số điện thoại bằng giọng nói. Triển khai những công trình nghiên cứu và đƣa vào thực tế ứng dụng vấn đề này là một việc làm hết sức có ý nghĩa đặc biệt trong giai đoạn công nghiệp hoá hiện đại hoá hiện nay của nƣớc nhà.
Nhận dạng tiếng nói là một quá trình nhận dạng mẫu, với mục đích là phân lớp (classify) thông tin đầu vào là tín hiệu tiếng nói thành một dãy tuần tự các mẫu đã đƣợc học trƣớc đó và lƣu trữ trong bộ nhớ. Các mẫu là các đơn vị nhận dạng, chúng có thể là các từ, hoặc các âm vị. Nếu các mẫu này là bất biến và không thay đổi thì công việc nhận dạng tiếng nói trở nên đơn giản bằng cách so sánh dữ liệu tiếng nói cần nhận dạng với các mẫu đã đƣợc học và lƣu trữ trong bộ nhớ. Khó khăn cơ bản của nhận dạng tiếng nói đó là tiếng nói luôn biến đổi theo thời gian và có sự khác biệt lớn giữa tiếng nói của những ngƣời nói khác nhau, tốc độ nói, ngữ cảnh và môi trƣờng âm học khác nhau.
Xác định những thông tin biến thiên nào của tiếng nói là có ích và những thông tin nào là không có ích đối với nhận dạng tiếng nói là rất quan trọng. Đây là một nhiệm vụ rất khó khăn mà ngay cả với các kỹ thuật xác suất LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 8 thống kê mạnh cũng khó khăn trong việc tổng quát hoá từ các mẫu tiếng nói những biến thiên quan trọng cần thiết trong nhận dạng tiếng nói. Các nghiên cứu về nhận dạng tiếng nói dựa trên ba nguyên tắc cơ bản [1]: Tín hiệu tiếng nói đƣợc biểu diễn chính xác bởi các biên độ phổ trong một khung thời gian ngắn (short-term amplitude spectrum). Nhờ vậy ta có thể trích ra các đặc điểm tiếng nói từ những khoảng thời gian ngắn và dùng các đặc điểm này làm dữ liệu để nhận dạng tiếng nói.
Nội dung của tiếng nói đƣợc biểu diễn dƣới dạng chữ viết, là một dãy các ký hiệu ngữ âm. Do đó ý nghĩa của một phát âm đƣợc bảo toàn khi chúng ta phiên âm phát âm thành dãy các ký hiệu ngữ âm. Nhận dạng tiếng nói là một quá trình nhận thức. Thông tin về ngữ nghĩa (semantics) và suy đoán (pragmatics) có giá trị trong quá trình nhận dạng tiếng nói, nhất là khi thông tin về âm học là không rõ ràng.
Lĩnh vực nghiên cứu của nhận dạng tiếng nói là khá rộng liên quan đến nhiều ngành khác nhau, nhƣ xử lý tín hiệu số (digital signal proccessing), vật lý hay âm học (acoustic), nhận dạng mẫu, lý thuyết thông tin và khoa học máy tính (information and computer science theory), ngôn ngữ học (linguistics), sinh lý học (physiology), tâm lý học ứng dụng (applied psychology). Các hệ thống nhận dạng tiếng nói có thể đƣợc phân chia thành hai loại khác nhau: hệ thống nhận dạng từ rời rạc và hệ thống nhận dạng từ liên tục. Trong hệ thống nhận dạng tiếng nói liên tục, ngƣời ta lại phân biệt hệ thống nhận dạng có kích thƣớc từ điển nhỏ và hệ thống nhận dạng với kích thƣớc từ điển trung bình hoặc lớn. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Ý tƣởng về xây dựng các hệ thống nhận dạng tiếng nói đã có từ những năm 50 của thế kỷ 20 và đến nay đã đạt đƣợc nhiều kết quả đáng kể.
Có 3 hƣớng tiếp cận chính cho nhận dạng tiếng nói [8]: Tiếp cận Âm học: Hƣớng tiếp cận này dựa vào các đặc điểm âm học đƣợc rút ra từ phổ âm thanh. Tuy nhiên kết quả của hƣớng tiếp cận này còn thấp vì trong thực tế, các đặc trƣng âm học có sự biến động rất lớn. Hơn nữa phƣơng pháp này đòi hỏi tri thức rất đầy đủ về âm học (Vốn tri thức âm học hiện nay chƣa thể đáp ứng). Tiếp cận Nhận dạng mẫu thống kê: Sử dụng các phƣơng pháp máy học dựa trên thống kê để học và rút ra mẫu tham khảo từ lƣợng dữ liệu lớn.
Hƣớng này đang đƣợc sử dụng nhiều, chủ yếu là dựa vào Mô hình Markov ẩn (HMM). Tiếp cận Trí tuệ nhân tạo: là hƣớng kết hợp của cả hai hƣớng trên. Phƣơng pháp này kết hợp đƣợc cả tri thức của chuyên gia và phƣơng pháp mẫu thống kê. Đây sẽ là hƣớng tiếp cận tƣơng lai của nhận dạng tiếng nói.
Việc nhận dạng tiếng nói gặp một số khó khăn sau: Trong môi trƣờng sinh hoạt hàng ngày, chất lƣợng tiếng nói biến động rất lớn do chịu ảnh hƣởng của các yếu tố ngoại cảnh, tâm và sinh lý ngƣời nói: một câu của cùng một ngƣời nói khi thu vào máy sẽ khác nhau nếu nói ở hai tâm trạng khác nhau (lúc vui nói khác, lúc giận nói khác,…), sức khoẻ khác nhau (lúc khoẻ nói khác, lúc bệnh nói khác), tốc độ nói khác nhau (nói chậm thì rõ hơn nói nhanh), môi trƣờng xung quanh khác nhau (môi trƣờng có tiêng ồn thì âm thu vào sẽ bị nhiễu), v.v… Và còn nhiều yếu tố khác nữa tác động lên chất LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 lƣợng của lời nói nhƣ thiết bị thu không tốt, tín hiệu bị nhiễu điện,… Do đó, việc nhận dạng trở nên rất khó khăn. Trong nhận dạng tiếng nói theo hƣớng nhận dạng từng âm vị, một khó khăn chúng ta gặp phải là: các âm vị liền nhau trong chuỗi tiếng nói không có vách ngăn rõ ràng (2 âm vị sát nhau có một phần giao nhau, khó xác định đƣợc phần giao nhau thuộc âm vị trƣớc hay âm vị sau). Ngay cả đối với con ngƣời, tách âm vị từ một âm tiết (xác định vị trí bắt đầu và vị trí kết thúc của âm vị đó trên sóng âm của âm tiết) cũng không phải là công việc đơn giản. Hiện nay, hầu hết các hƣớng tiếp cận để nhận dạng âm vị là nhận dạng theo học mẫu thống kê.
Thông thƣờng để học mẫu ngƣời ta cung cấp cho chƣơng trình học một nguồn dữ liệu có nhiều mẫu đã đƣợc phân loại thành nhiều lớp và có gán nhãn (nhãn cho biết mỗi mẫu thuộc lớp nào). Nguồn dữ liệu này phải đƣợc phân lớp và gán nhãn chính xác hoàn toàn để máy học. Tuy nhiên do không thể tách âm vị một cách chính xác, nguồn dữ liệu âm vị đƣa vào khó đạt đƣợc mức độ chính xác, kết quả là việc huấn luyện giảm hiệu suất, làm cho hiệu suất của chƣơng trình nhận dạng cũng giảm theo. Chúng tôi xin nêu ra một hƣớng giải quyết để tránh việc gán nhãn âm vị không chính xác: thay vì đánh nhãn âm vị, chúng ta sẽ đánh nhãn âm tiết, đồng thời cho biết các âm vị cấu thành âm tiết đó.
Nhƣ vậy, dữ liệu mẫu cung cấp cho quá trình học là các âm tiết. Thuật toán học đƣợc sử dụng để tách âm vị là thuật toán huấn luyện nhúng (Embedded training). Kết quả thu đƣợc là các mô hình HMM cho từng âm vị. Do mỗi dãy âm vị đƣợc chọn tƣơng đƣơng với một âm tiết, công việc đánh nhãn âm vị trên sóng âm thực chất là không có (chỉ đánh nhãn trên âm tiết, vốn đƣợc thực hiện dễ dàng).
Vì vậy, có thể xem dữ liệu đƣa vào trong quá trình huấn luyện là dữ liệu không LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 11 gán nhãn và phƣơng pháp nhận dạng này đƣợc xem là nhận dạng âm vị tự động. Công việc gán nhãn âm vị bằng tay rất vất vả và mất nhiều thời gian. Ngoài ra, hiện nay có rất ít kho dữ liệu đã đƣợc gán nhãn âm vị. Vì vậy, hƣớng tiếp cận nhận dạng âm vị tự động, vốn hiệu quả hơn, tỏ ra là hƣớng tiếp cận đúng đắn.
Tuy nhiên, huấn luyện trên dữ liệu không gán nhãn cũng có những khó khăn: đòi hỏi khối lƣợng dữ liệu lớn hơn nhiều so với huấn luyện trên dữ liệu có gán nhãn, đồng thời quá trình huấn luyện cũng lâu hơn. Với những ƣu thế vƣợt trội nhƣ trên đã nêu, hƣớng tiếp cận nhận dạng âm vị tự động hứa hẹn tạo ra những mô hình nhận dạng tiếng nói với độ chính xác cao. Đó cũng chính là hƣớng nghiên cứu mà tôi chọn lựa cho luận văn thạc sĩ của mình. Trong bản luận văn này, chúng tôi muốn chứng minh hai điều: Nếu có đầy đủ dữ liệu tiếng nói (không gán nhãn), có thể nhận dạng đƣợc số lƣợng lớn các âm tiết với độ chính xác tƣơng đối cao theo hƣớng tiếp cận nhận dạng âm vị tự động.
Có thể nhận dạng đƣợc tiếng nói liên tục với tốc độ trung bình. Luận văn đƣợc tổ chức nhƣ sau: Chƣơng 1 : Mô hình HMM và ứng dụng trong nhận dạng Giới thiệu mô hình HMM và sự lựa chọn mô hình HMM để nhận dạng tiếng nói. Chƣơng 2 : Tiền xử lý tín hiệu tiếng nói Chƣơng này sẽ giới thiệu về tiền xử lý tiếng nói và một số phƣơng pháp trích đặc trƣng đƣợc sử dụng trong nhận dạng tiếng nói. Chƣơng 3 : Thuật toán huấn luyện nhúng (Embedded training) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 12 Giới thiệu thuật toán huấn luyện nhúng.
Đây là quá trình xây dựng mô hình HMM tự động cho các âm vị từ kho dữ liệu không gán nhãn âm vị. Chƣơng 4 : Cài đặt thuật toán - Giới thiệu phần mềm từ điển tiếng nói. Kết luận LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 13 CHƢƠNG 1. MÔ HÌNH HMM VÀ ỨNG DỤNG TRONG NHẬN DẠNG TIẾNG NÓI 1 Giới thiệu Đầu thế kỷ XX, Andrei Andreyevich Markov (14/6/1856 – 20/7/1922) – nhà Toán học và Vật lý nổi tiếng ngƣời Nga đã đƣa ra một mô hình toán học để mô tả chuyển động của các phân tử chất lỏng trong một bình kín.