Chương 1. TỔNG QUAN VỀ NHẬN DẠNG TIẾNG NÓI 1.1 Nhận dạng Nhận dạng của loài người là một quá trình hoàn hảo, đó là sự quan sát đối tượng cần nhận dạng, ghi nhận lại những đặc trưng của đối tượng, phân lớp đối tượng và có sử dụng khả năng phán đoán suy luận để phân biệt đối tượng đó với đối tượng khác (trong một tập gần như vô hạn đối tượng). Trong khi đó, nhận dạng tự động – nhận dạng bằng công cụ máy vi tính chỉ đơn giản là quá trình phân biệt tín hiệu này với tín hiệu khác (trong một tập hữu hạn các tín hiệu), quá trình này được thực hiện bằng cách thực hiện các bước tổng quát sau (như trong hình 1.1 Sơ đồ nhận dạng tổng quát - Thu nhận tín hiệu và trích đặc trưng: thu nhận tín hiệu cần nhận dạng, khử nhiễu, lọc tín hiệu (tiền xử lý) và rút ra các đặc trưng của tín hiệu - Học mẫu: phân lớp các nhóm vector đặc trưng của từng nhóm tín hiệu (bằng các thuật giải Heristic, bằng cách sử dụng mạng Neural, bằng các thuật toán K-means, Batchelor- Wilkins, ……). Quá trình này tạo ra các lớp tín hiệu, mỗi lớp đặc trưng cho từng nhóm tín hiệu.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 18 - Nhận dạng, so khớp mẫu: tìm mối liên hệ giữa tín hiệu cần nhận dạng và các lớp tín hiệu được tạo ra ở bước trước (bằng cách thông qua quy tắc người láng giềng gần nhất chẳng hạn). Nếu như tín hiệu đó so khớp nhất (và mức độ so khớp thỏa mãn một ngưỡng nào đó) ứng với một lớp tín hiệu nào thì hệ thống nhận dạng xác định tín hiệu đó thuộc vào nhóm tín hiệu đó với một tỉ lệ nhất định gọi là độ chính xác của hệ thống nhận dạng (tỉ lệ này dĩ nhiên là càng cao càng tốt).2 Nhận dạng tiếng nói 1.1 Xử lý âm thanh Khi âm thanh được máy vi tính hỗ trợ thì nhu cầu xử lý âm thanh đã xuất hiện. Các nhu cầu này đã tạo ra nhiều lĩnh vực ứng dụng trong thực tế. Chẳng hạn như: tổng hợp âm thanh (synthesis), nén âm thanh (compression), nhận dạng người nói (speaker recognition), nhận dạng tiếng nói (speech recognition)… Các lĩnh vực ứng dụng khác nhau của xử lý tiếng nói được thể hiện qua hình 1.
Xử lý âm thanh đóng một vai trò quan trọng trong quá trình nhận dạng tiếng nói, nó cần trong việc lọc nhiễu tín hiệu, biến đổi tín hiệu, rút trích vector đặc trưng,… Hình 1.2: Các lĩnh vực trong xử lý tiếng nói LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 Phân loại nhận dạng tiếng nói 1.1 Nhận dạng từ liên tục và nhận dạng từ cách biệt Một hệ nhận dạng tiếng nói có thể là một trong hai dạng: nhận dạng liên tục và nhận dạng từng từ. Nhận dạng liên tục tức là nhận dạng tiếng nói được phát liên tục trong một chuỗi tín hiệu, chẳng hạn như một câu nói, một mệnh lệnh hoặc một đoạn văn được đọc bởi người dùng. Các hệ thống loại này rất phức tạp, nó phức tạp ở chỗ các từ được phát liên tục khó xử lý kịp (nếu cần thời gian thực), hoặc khó tách ra nếu như người nói liên tục không có khoảng nghỉ (thông thường rất hay xảy ra trong thực tế). Kết quả tách từ ảnh hưởng rất lớn đến các bước sau, cần xử lý thật tốt trong quá trình này.
Trái lại, đối với mô hình nhận dạng từng từ, mỗi từ cần nhận dạng được phát âm một cách rời rạc, có các khoảng nghỉ trước và sau khi phát âm một từ. Mô hình loại này dĩ nhiên đơn giản hơn mô hình nhận dạng liên tục, đồng thời cũng có những ứng dụng thực tiễn như trong các hệ thống điều khiển bằng lời nói, quay số bằng giọng nói…, với độ chính xác khá cao, tuy nhiên khó áp dụng rộng rãi đối với mô hình trên.3: Ranh giới giữa “cô” và “ấy” không rõ ràng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 Nhận dạng phụ thuộc người nói và độc lập người nói Đối với nhận dạng phụ thuộc người nói thì mỗi một hệ nhận dạng chỉ phục vụ được cho một người, và nó sẽ không hiểu người khác nói gì nếu như chưa được huấn luyện lại từ đầu. Do đó, hệ thống nhận dạng người nói khó được chấp nhận rộng rãi vì không phải ai cũng đủ khả năng kiến thức và nhất là kiên nhẫn để huấn luyện hệ thống. Đặc biệt là hệ thống loại này không thể ứng dụng ở nơi công cộng.
Ngược lại, hệ thống nhận dạng độc lập người nói thì lý tưởng hơn, ứng dụng rộng rãi hơn, đáp ứng được hầu hết các yêu cầu đề ra. Nhưng không may là hệ thống lý tưởng như vậy gặp một số vấn đề, nhất là độ chính xác của hệ thống. Trong thực tế, mỗi người có một giọng nói khác nhau, thậm chí ngay cùng một người cũng có giọng nói khác nhau ở những thời điểm khác nhau. Điều này ảnh hưởng rất lớn đến việc nhận dạng, nó làm giảm độ chính xác của hệ thống nhận dạng xuống nhiều lần.
Do đó để khắc phục khuyết điểm này, hệ thống nhận dạng độc lập người nói cần được thiết kế phức tạp hơn, đòi hỏi lượng dữ liệu huấn luyện lớn hơn nhiều lần (dữ liệu được thu từ nhiều giọng khác nhau của nhiều người). Nhưng điều này cũng không cải thiện được bao nhiêu chất lượng nhận dạng. Do đó, trong thực tế có một cách giải quyết là bán độc lập người nói. Phương pháp này thực hiện bằng cách thu mẫu một số lượng lớn các giọng nói khác biệt nhau.
Khi sử dụng, hệ thống sẽ được điều chỉnh cho phù hợp với giọng của người dùng, bằng cách nó học thêm một vài câu có chứa các từ cần thiết (người dùng trước khi sử dụng hệ thống cần phải qua một quá trình ngắn huấn luyện hệ thống). Nhận dạng độc lập người nói khó hơn rất nhiều so với nhận dạng phụ thuộc người nói. Cùng một từ, một người, dù có cố gắng phát âm cho thật giống đi nữa thì cũng có sự khác biệt. Đối với bộ não con người, một hệ thống hoàn hảo, thì sự khác biệt đó có thể được bỏ qua do ngữ cảnh, và do có phần xử lý làm mờ đi của não.
Nhưng đối với máy tính thì rất khó xây dựng được một mô hình giải quyết cho tất cả các trường hợp khác biệt đó. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.4: Người nói khác nhau sẽ phát âm khác nhau H Hình 1.5: Mô hình nhận dạng bán độc lập người nói 1.3 Hệ thống nhận dạng tiếng nói tự động Nhận dạng tiếng nói tự động ASR có nghĩa là chuyển đổi tự động tiếng nói thành chữ viết hoặc thành một trong các chức năng của thiết bị. Một hệ thống nhận dạng tiếng nói tự động gồm có các thành phần sau: - Khối tiền xử lý: Quá trình này giải quyết các vấn đề dò tìm điểm cuối (phân biệt trong chuỗi âm thu được đâu là tiếng nói đâu là độ ồn nền), lọc, khử nhiễu và LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 22 nâng cao chất lượng tiếng nói. - Khối rút trích đặc trưng tiếng nói: biến đổi tín hiệu âm thanh thành chuỗi các vector đặc trưng.
- Khối phân lớp và nhận dạng: Thực chất đây là quá trình nhận dạng dựa trên mô hình âm thanh, từ điển phát âm và mô hình ngôn ngữ của hệ thống. Mô hình ngôn ngữ ở đây thực chất chỉ biểu diển một ngữ pháp nào đó, nó có thể ứng với một ngôn ngữ cụ thể hoặc đơn giản chỉ gói gọn trong phạm vi ứng dụng của hệ thống, điều này góp phần giảm thiểu phạm vi nhận dạng của tiếng đó trong một vài từ chứ không phải toàn bộ từ vựng.6: Các thành phần cơ bản của hệ thống ASR - Khối giải mã: Quá trình giải mã có thể chỉ đơn giản là xuất ra chuỗi văn bản nhận dạng được hoặc phân tích chuỗi nhận được ứng với công việc gì và thực hiện công việc đó. Ứng dụng: - Điều khiển bằng tiếng nói (khoảng 30 từ): Nhận dạng tên người, chữ số của hệ thống quay số bằng giọng nói trên điện thoại di động, điều khiển thiết bị điện tử,… - Trong viễn thông (khoảng 2000 từ): Tự động điền mẫu đơn trong hệ thống xử lý thông tin, tổng đài điện thoại, … - Từ điển (khoảng 64k từ): Chuyển đổi thư thoại (bộ từ vựng lớn), thư ký LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 23 điện tử,… 1.4 Lý thuyết nhận dạng tiếng nói Nhận dạng tiếng nói là kỹ thuật nhận ra các thành phần lời nói của con người. Quá trình này có thể được thực hiện từ việc thu vào tín hiệu tiếng nói từ micro, và kết thúc bằng từ đã được nhận dạng được hệ thống xuất ra.
Những bước của quá trình trên sẽ được đề cập ở phần sau. Việc nghiên cứu nhận dạng tiếng nói đã được bắt đầu từ cuối thập niên 40, trong đó sự phát triển nhanh chóng của công nghệ máy tính đã đóng góp rất nhiều vào sự phát triển của nhận dạng tiếng nói. Ngày nay nhận dạng tiếng nói đã có mặt trong công nghiệp và đời sống ở một số lĩnh vực. Trong công nghiệp, khi tay và mắt của con người đã được tận dụng triệt để, thì việc điều khiển bằng tiếng nói có một thuận lợi rất lớn.
Những ứng dụng khác của nhận dạng tiếng nói như hệ thống nhận đặt phòng tự động qua điện thoại, bằng cách này khách hàng cảm thấy thuận lợi hơn so với việc nhấn các nút của điện thoại. Hơn nữa, nhận dạng tiếng nói còn có nhiều ứng dụng khác như hệ thống chính tả, các đồ chơi trẻ em, trò chơi game,… Một cách lý tưởng, một chương trình nhận dạng sẽ có thể nhận dạng được các từ khác nhau của bất kỳ người nào trong bất kỳ môi trường nào. Nhưng trong thực tế, khả năng của hệ thống phụ thuộc vào nhiều yếu tố khác nhau. Bộ từ vựng, đa người dùng, nhận dạng liên tục (phức tạp hơn nhiều so với nhận dạng từng từ) là các yếu tố gây khó khăn, phức tạp cho việc nhận dạng tiếng nói.
Tương tự như vậy đối với độ ồn nền.1 Rút trích vector đặc trưng Ngày nay, việc xử lý tín hiệu tiếng nói hầu hết được thực hiện trên miền số. Tín hiệu số được thu bằng cách lấy mẫu theo một tần số nhất định, đó là việc đo tín hiệu theo một chu kỳ thời gian. Theo lý thuyết, bất cứ một tín hiệu có băng tần giới hạn nào cũng có thể tái tạo lại một cách hoàn chỉnh nếu như tần số lấy mẫu FS ít nhất là gấp đôi tần số tối đa của tín hiệu (định lý Nyquist). Chất lượng của tín hiệu LUAN VAN CHAT LUONG download : add luanvanchat@agmail.