1. Trang chủ
  2. » Luận Văn - Báo Cáo

Mô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nói (Luận văn thạc sĩ)

61 187 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 61
Dung lượng 1,7 MB

Nội dung

Mô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nóiMô hình Markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nói

Trang 1

NGUYỄN THỊ THU HUYỀN

MÔ HÌNH MARKOV ẨN VÀ ỨNG DỤNG

XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG NÓI

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2018

Trang 2

NGUYỄN THỊ THU HUYỀN

MÔ HÌNH MARKOV ẨN VÀ ỨNG DỤNG

XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG NÓI

Chuyên ngành: Khoa học máy tính

Mã số: 8480101

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS Vũ Vinh Quang

THÁI NGUYÊN - 2018

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan rằng đây là công trình nghiên cứu của tôi, có sự hỗ trợ từ Giáo viên hướng dẫn là TS Vũ Vinh Quang Các nội dung nghiên cứu và kết quả trong đề tài này là trung thực và chưa từng được ai công bố trong bất cứ công trình nghiên cứu nào trước đây Những số liệu trong các hình phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồn khác nhau có ghi trong phần tài liệu tham khảo Ngoài ra, đề tài còn sử dụng một số nhận xét, đánh giá cũng như số liệu của các tác giả, cơ quan tổ chức khác, và cũng được thể hiện trong phần tài liệu tham khảo

Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm trước Hội đồng, cũng như kết quả luận văn của mình

Trang 4

em hoàn thành luận văn

Thái nguyên, ngày … tháng … năm 2018

Tác giả

NGUYỄN THỊ THU HUYỀN

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

DANH MỤC CÁC HÌNH ẢNH v

DANH MỤC CÁC BẢNG BIỂU vi

DANH MỤC CÁC TỪ VIẾT TẮT vii

LỜI MỞ ĐẦU 1

CHƯƠNG 1 MỘT SỐ KIẾN THỨC CƠ BẢN VỀ NHẬN DẠNG TIẾNG NÓI 3 1.1 Khái niệm chung 3

1.1.1 Khái niệm nhận dạng tiếng nói 3

1.1.2 Phân loại nhận dạng tiếng nói 4

1.1.3 Hệ thống nhận dạng tiếng nói tự động 7

1.2 Các nghiên cứu hiện thời về nhận dạng tiếng nói 8

1.2.1 Các nghiên cứu về nhận dạng tiếng nói ở nước ngoài 8

1.2.2 Các nghiên cứu về nhận dạng tiếng nói tiếng Việt 9

1.3 Các hướng tiếp cận nhận dạng tiếng nói 10

1.4 Những khó khăn trong nhận dạng tiếng nói 11

1.5 Xử lý tiếng nói 13

1.5.1 Khái niệm xử lý tiếng nói 13

1.5.2 Kỹ thuật lấy mẫu tín hiệu 13

1.5.3 Cấu trúc bộ lọc tín hiệu 13

1.5.4 Kỹ thuật dò tìm điểm cuối 15

1.5.5 Kỹ thuật rút trích đặc trưng 16

1.5.6 Phương pháp tính hệ số MFCC 18

1.6 Sơ lược về ngôn ngữ tiếng Việt 23

1.6.1 Giới thiệu về âm tiết 23

1.6.2 Một số đặc điểm của âm tiết tiếng Việt 23

1.6.3 Lý thuyết về âm vị 25

CHƯƠNG 2 TỔNG QUAN VỀ MÔ HÌNH MẠNG MARKOV ẨN 27

Trang 6

2.1 Mô hình Markov ẩn 27

2.2 Các bài toán cơ bản của mô hình Markov ẩn 30

2.2.1 Bài toán 1 30

2.2.2 Bài toán 2 30

2.2.3 Bài toán 3 31

2.3 Các thuật toán cơ bản 31

2.3.1 Thuật toán tiến (forward) 31

2.3.2 Thuật toán lùi (Backward) 32

2.3.3 Các giải pháp giải quyết các bài toán cơ bản 32

2.4 So sánh các loại mô hình Markov ẩn 33

CHƯƠNG 3 XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG VIỆT 35

3.1 Tổng quan về HTK (HMM Tool Kit) 35

3.1.1 Giới thiệu hệ thống 35

3.1.2 Mô hình các cấu trúc tập tin cơ bản khai báo HMM và MFCC cho nhận dạng tiếng nói 36

3.1.3 Các bước xây dựng một mô hình nhận dạng tiếng nói sử dụng HTK 40

3.1.4 Một số Modul sử dụng trong quá trình xây dựng hệ thống nhận dạng tiếng nói tiếng việt trong bộ công cụ HTK 44

3.2 Xây dựng hệ thống nhận dạng chữ số Tiếng việt 47

3.2.1 Xây dựng cơ sở dữ liệu chữ số tiếng việt 47

3.2.2 Bảng phiên âm 10 chữ số tiếng Việt 47

3.2.3 Phương pháp xây dựng hệ thống nhận dạng chữ số tiếng việt 47

3.2.4 Các kết quả thực nghiệm 48

KẾT LUẬN 51

TÀI LIỆU THAM KHẢO 52

Trang 7

DANH MỤC CÁC HÌNH ẢNH

Hình 1.1: Quá trình phát âm sẽ khác nhau tùy theo người nói 6

Hình 1.2: Mô hình nhận dạng tiếng nói bán độc lập người nói 6

Hình 1.3: Cấu trúc cơ bản của hệ thống ASR 7

Hình 1.4: Cấu trúc hệ thống nhận dạng ngôn ngữ có thanh điệu 9

Hình 1.5 Ví dụ về lấy mẫu tín hiệu F(t) trên miền thời gian 13

Hình 1.6 Minh họa hoạt động của bộ lọc FIR 14

Hình 1.7 Minh họa hoạt động của bộ lọc IIR 15

Hình 1.8 Dò tìm điểm cuối dựa trên mức năng lượng 16

Hình 1.9 Sơ đồ rút trích vevtor đặc trưng tổng quát 17

Hình 1.10 Các bước xử lý tính hệ số MFCC 18

Hình 1.11 Sóng âm của chữ “ANH” trước khi làm phẳng (bên trái) và sau khi làm phẳng (Bên phải) 19

Hình 1.12 Phân đoạn tín hiệu tiếng nói thành các khung có sự chồng lấp 20

Hình 1.13 Cửa sổ Hamming 20

Hình 1.14 Cửa sổ Hanning 21

Hình 1.15 Cửa sổ hình chữ nhật 21

Hình 2.1: Minh họa mô hình Markov trong nhận dạng tiếng nói với 5 trạng thái và chèn sp 28

Hình 2.2: Mô hình Markov ẩn với sáu trạng thái 30

Hình 3.1: Minh họa sự giảm dần của năng lượng Error! Bookmark not defined Hình 3.2 Các Module và các chức năng trong HTK 35

Hình 3.3 Các công cụ và chức năng trong HTK 36

Hình 3.4 Phân bố các tham số trong một số vector đặc trưng của HTK 38

Hình 3.5 Các bước cơ bản xây dựng hệ thống nhận dạng tiếng nói 40

Hình 3.6: Mô hình HMM 42

Trang 8

DANH MỤC CÁC BẢNG BIỂU

Bảng 1.1: So sánh tỷ lệ lỗi nhận dạng của con người và máy tính trong một số hệ

thống nhận dạng 8 Bảng 3.1: Bảng phiên âm 10 chữ số tiếng Việt 47 Bảng 3.2 Kết quả thử nghiệm hệ thống nhận dạng với bộ từ điển có chèn sp và

không chèn sp 49 Bảng 3.3 Kết quả thử nghiệm hệ thống nhận dạng với dữ liệu test trùng với dữ liệu

huấn luyện 50

Trang 9

DANH MỤC CÁC TỪ VIẾT TẮT

AI Artificial intelligence Trí tuệ nhân tạo

DBMS Database Management System Hệ quản trị cơ sở dữ liệu

IR Information Retrieval Hệ thống tự động truy tìm

thông tin MIRS Multimedia Indexing & Retrieval

System

Hệ thống chỉ mục và truy tìm thông tin đa phương tiện

MMDBMS Multimedia Database

Management System

Hệ thống quản trị cơ sở dữ liệu

đa phương tiện MRI Magnetic Resonance Imaging

Trang 10

LỜI MỞ ĐẦU

Tiếng nói là một phương tiện giao tiếp cơ bản nhất của loài người, nó hình thành và phát triển cùng với quá trình tiến hóa của loài người Ngay từ khi hình thành tiếng nói đã thể hiện được sức mạnh như: Khả năng truyền đạt thông tin, tốc độ…

Ngày nay, nhờ sự phát triển mạnh mẽ của khoa học kỹ thuật, máy móc dần dần thay thế các lao động bằng tay chân Tuy nhiên để điều khiển máy móc, con người phải làm khá nhiều thao tác vừa tốn thời gian vừa phức tạp và cần phải được đào tạo Chính vì lẽ đó, nhận dạng tiếng nói sẽ đóng vai trò rất quan trọng trong giao tiếp giữa người và máy Nó giúp con người có thể điều khiển máy móc, thiết bị bằng giọng nói của mình đặc biệt là các thiết bị như: máy tính, điện thoại di động,

rô bốt…

Hiện nay, cùng với sự phát triển vượt bậc của ngành khoa học nhận dạng tiếng nói, những chiếc điện thoại quay số bằng giọng nói đã ra đời, máy tính cá nhân với phần mềm nhận dạng tiếng nói có thể trợ giúp cho những người khuyết tật về tay, chân hay khiếm thính Tuy vậy, những thành tựu trên lại là những nghiên cứu về nhận dạng tiếng nói ngôn ngữ nước ngoài Với tiếng Việt, số lượng các nghiên cứu còn khá ít và dường như ít được quan tâm Có thể nói rằng những nghiên cứu nhận dạng tiếng nói tiếng Việt chủ yếu tập trung vào nhận dạng từ rời rạc, hay hệ thống nhận dạng liên tục nhưng với kích thước nhỏ

Tuy nhiên, để ngành khoa học nhận dạng tiếng nói ở Việt Nam thực sự phát triển và đạt được những thành tựu to lớn để áp dụng vào thực tế thì lĩnh vực nhận dạng tiếng nói cần phát triển hơn nữa Chính vì vậy, việc nghiên cứu nhận dạng tiếng nói đặc biệt là nhận dạng tiếng nói tiếng Việt là rất cần thiết để xây dựng các

hệ thống nhận dạng, các ứng dụng nhận dạng tiếng nói thực sự hữu ích của riêng tiếng Việt

Đề tài này được xây dựng với mục đích tìm hiểu, nghiên cứu, so sánh và đánh giá các phương pháp, các hướng tiếp cận nhận dạng tiếng nói hiện nay trên thế giới như: Tiếp cận âm học, tiếp cận trí tuệ nhân tạo, nhận dạng mẫu thống kê (dựa vào

Trang 11

mô hình Markov ẩn (HMM), mạng Neural nhân tạo(ANN), hệ thống lai ghép giữa

mô hình Markov và mạng Neural (HMM/ANN) Trên cơ sở đó lựa chọn ra phương pháp thích hợp nhất để áp dụng xây dựng hệ thống nhận dạng tiếng nói tiếng Việt

Đề tài có kế thừa các kết quả nghiên cứu về nhận dạng tiếng nói ngôn ngữ nước ngoài và một số kết quả nghiên cứu trong nước để đưa ra những điểm chung,

và riêng của ngôn ngữ tiếng Việt với ngôn ngữ nước ngoài từ đó thiết kế, xây dựng

và mở rộng bộ từ điển tiếng Việt cho hệ thống nhận dạng tiếng Việt liên tục

Hiện nay, có hai hướng xây dựng hệ thống nhận dạng tiếng nói: 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 Có thể nói rằng để xây dựng hệ thống nhận dạng từ liên tục là rất khó khăn so với nhận dạng từ rời rạc Nhưng một

hệ thống nhận dạng từ liên tục lại có ý nghĩa thực tế hơn nhiều so với hệ thống nhận dạng từ rời rạc Chính vì yếu tố trên nên đề tài tập trung nghiên cứu xây dựng hệ thống nhận dạng tiếng Việt liên tục với hướng tiếp cận mẫu thống kê dựa vào mô hình Markov ẩn (HMM) Với giới hạn thời gian làm đồ án, việc xây dựng một hệ thống nhận dạng tiếng Việt liên tục với kích thước lớn là rất khó khăn vì vậy đề tài giới hạn nghiên cứu hệ thống nhận dạng tiếng nói tiếng Việt cho 10 chữ số

Trang 12

CHƯƠNG 1 MỘT SỐ KIẾN THỨC CƠ BẢN VỀ NHẬN DẠNG TIẾNG NÓI 1.1 Khái niệm chung

1.1.1 Khái niệm nhận dạng tiếng nói

Nhận dạng tiếng nói nhìn chung cũng là một quá trình nhận dạng mẫu, với mục đích là phân lớp tín hiệu tiếng nói (đầu vào) thành một dãy tuần tự các mẫu đã được học và lưu trữ trong bộ nhớ Các mẫu có thể là các từ hay các âm vị

Với đặc thù tiếng nói là một dạng tín hiệu biến thiên theo thời gian và có sự khác biệt giữa tiếng nói của những người khác nhau, tốc độ nói khác nhau hay ngữ cảnh và môi trường âm học khác nhau Thậm chí tiếng nói của cùng một người cũng không giống nhau: khi người đó khỏe thì tiếng nói của họ khác khi bị ốm Đó chính là khó khăn cơ bản nhất của nhận dạng tiếng nói Việc xác định những thông tin biến thiên nào là hữu ích và những thông tin nào là vô ích cho 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ả những kỹ thuật xác suất thống kê mạnh cũng không thể tổng quát hóa từ các mẫu tiếng nói những biến thiên nào là quan trọng và cần thiết cho nhận dạng tiếng nói

Nhìn chung hiện nay 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:

 Tín hiệu tiếng nói được biểu diễn chính xác bởi các giá trị phổ trong miền thời gian ngắn (short-term amplitude spectrum) Nhờ yếu tố này ta có thể cắt khung tiếng nói trong một khoảng thời gian nhất định để trích rút ra các đặc trưng làm dữ liệu để nhận dạng tiếng nói

 Nội dung của tiếng nói ở dạng văn bản 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 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 và suy đoán 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 không rõ ràng

Trang 13

Ngành khoa học nhận dạng tiếng nói là một trong những ngành có lĩnh vực nghiên cứu khá rộng Lĩnh vực nghiên cứu của nhận dạng tiếng nói có liên quan tới nhiều ngành khác nhau như:

 Ngôn ngữ học (linguistics): Như đã nói ở trên khi chúng ta phiên âm phát

âm thành các ký hiệu ngữ âm thì ý nghĩa của một phát âm không thay đổi Vậy sự hiểu biết về cấu trúc của ngôn ngữ, đặc biệt là ngữ âm và vai trò của chúng trong việc tạo ra tiếng nói là rất quan trọng khi chúng ta xây dựng hệ thống nhận dạng tiếng nói

 Sinh lý học (physiology) và tâm lý học ứng dụng (applied psychology): Kiến thức về cấu tạo bộ máy phát âm của con người, về quá trình sản sinh tiếng nói cũng như phân tích âm học và ngôn ngữ tại bộ não để con người hiểu được tiếng nói

 Xử lý tín hiệu số (digital signal processing): Các kỹ thuật xử lý tín hiệu số dùng phân tích tín hiệu tiếng nói nhằm trích rút ra đặc trưng của tiếng nói cho quá trình nhận dạng

 Âm học (acoustic): Nghiên cứu mối quan hệ giữa tín hiệu tiếng nói và cơ chế sinh lý học của bộ máy phát âm của con người

 Lý thuyết nhận dạng: Các thuật toán dùng để phân loại dữ liệu thành các tập mẫu dựa trên sơ sở tính toán khoảng cách giữa các đặc điểm của mẫu

 Lý thuyết thông tin và khoa học máy tính (information and computer theory): Các thuật toán dùng để tính toán mô hình tham số của các mô hình thống

kê, các thuật toán mã hóa và giải mã (lập trình động, thuật toán giải mã Viterbi) để quá trình nhận dạng tốt nhất

1.1.2 Phân loại nhận dạng tiếng nói

Nếu xét về độ dài các câu từ cần nhận dạng ta có thể phân thành nhận dạng từ liên tục và nhận dạng từ rời rạc Ngoài ra ta còn có thể phân loại theo sự phụ thuộc hay độc lập người nói

Trang 14

a Nhận dạng từ liên tục và nhận dạng từ rời rạc

Nhận dạng từ liên 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, như một câu nói hay một đoạn văn được đọc bởi người dùng Các hệ thống nhận dạng loại này rất phức tạp, nó phức tạp bởi lẽ quá trình xử lý tiếng nói liên tục là khó khăn hơn nhiều so với từng từ riêng lẻ Quá trình xử lý tiếng nói liên tục còn phụ thuộc vào việc người dùng nói nhanh hay chậm Nếu người dùng nói không có khoảng nghỉ thì việc tách từ là khó khăn Và chính kết quả của quá trình tách từ này có ảnh hưởng rất lớn tới các bước tiếp theo trong quá trình nhận dạng Trái lại, trong nhận dạng từ rời rạc thì các phát âm được nhận dạng chỉ bao gồm một từ, hay một nhóm nhỏ các từ mà ở đó có các khoảng nghỉ trước và sau khi phát âm mỗi từ Nhận dạng tiếng nói với các từ rời rạc thường được ứng dụng trong các chương trình dạng câu lệnh- điều khiển Quá trình nhận dạng tiếng nói với các

từ rời rạc là dễ hơn nhiều so với quá trình nhận dạng tiếng nói liên tục

b Nhận dạng phụ thuộc người nói và độc lập người nói

Một hệ thống nhận dạng tiếng nói phụ thuộc người nói là một hệ thống dường như chỉ phục vụ cho một người, nó sẽ không hiểu người khác nói gì nếu như không

có quá trình huấn luyện lại từ đầu Do đó nên hệ thống nhận dạng tiếng nói phụ thuộc người nói khó được chấp nhận rộng rãi bởi lẽ là quá tốn kém nếu bỏ ra kinh phí lớn chỉ để xây dựng hệ thống phục vụ cho một cá nhân, hay không phải ai cũng

có đủ khả năng kiến thức và sự kiên nhẫn để ngồi huấn luyện lại hệ thống Rõ ràng rằng hệ thống nhận dạng tiếng nói loại này khó được áp dụng vào thực tế nhất là nơi công cộng

Để khắc phục những nhược điểm trên thì hệ thống nhận dạng tiếng nói độc lập người nói là ưu việt hơn nhiều Hệ thống nhận dạng tiếng nói độc lập người nói là lý tưởng hơn, có ứng dụng rộng rãi hơn và đáp ứng được hầu hết các yêu cầu đề ra với một hệ thống nhận dạng tiếng nói Tuy nhiên, việc xây dựng một hệ thống nhận dạng độc lập người nói có độ chính xác cao cũng gặp không ít khó khăn

Trong thực tế mỗi vùng miền có một giọng nói khác nhau, mỗi người có một giọng nói khác nhau, thậm chí cùng một người giọng nói cũng khác nhau ở những

Trang 15

thời điểm khác nhau (Hình 1.2) Đó là yếu tố ảnh hưởng rất lớn đến mức độ chính xác trong nhận dạng tiếng nói Để khắc phục nhược đ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 với lượng dữ liệu huấn luyện lớn

và đa dạng hơn nhiều lần Nhưng làm được yêu cầu trên là khó và độ chính xác trong nhận dạng cũng chưa phải là tối ưu Do đó, trong thực tế để giải quyết chất lượng nhận dạng người ta thường kết hợp cả hai phương pháp trên và xây dựng hệ thống nhận dạng bán độc lập người nói Phương pháp này được thực hiện bằng cách thu một số lượng lớn các mẫu khác nhau để huấn luyện Khi sử dụng hệ thống sẽ điều chỉnh cho phù hợp với người nói bằng cách để người dùng trải qua một quá trình ngắn để huấn luyện hệ thống (ví dụ như phần mềm nhận dạng tiếng nói được tích hợp trong Office của Microsoft)

Hình 1.1: Quá trình phát âm sẽ khác nhau tùy theo người nói

Hình 1.2: Mô hình nhận dạng tiếng nói bán độc lập người nói

Trang 16

1.1.3 Hệ thống nhận dạng tiếng nói tự động

Hệ thống nhận dạng tiếng nói tự động (Automatic Speech Recognition –ASR) là hệ thống tự động chuyển đổi tiếng nói thành chữ viết hay thành một trong các chức năng của thiết bị Các thành phần của một hệ thống nhận dạng tiếng nói bao gồm:

Rút trích đặc trưng tiếng nói: Biến đổi tiếng nói (tín hiệu âm thanh) thành chuỗi các vector đặc trưng cho quá trình nhận dạng đồng thời thực hiện quá trình dò tìm điểm đầu cuối của tiếng nói và lọc nhiễu

 Phân lớp và nhận dạng: Đây thực chất là quá trình dựa vào mô hình âm thanh, từ điển phát âm và mô hình ngôn ngữ của hệ thống để nhận dạng

 Giải mã: Quá trình giải mã có thể đơn giản là quá trình xuất ra chuỗi văn bản cần nhận dạng từ tín hiệu âm thanh vào hoặc đó là một quá trình phân tích chuỗi nhận được ứng với việc thực hiện tác vụ nào đó

Hình 1.3: Cấu trúc cơ bản của hệ thống ASR

Hiện nay ASR có một số ứng dụng trong các lĩnh vực như: Điều khiển bằng tiếng nói (quay số điện thoại…), trong điện tử viễn thông (tổng đài điện thoại…)

Trang 17

1.2 Các nghiên cứu hiện thời về nhận dạng tiếng nói

1.2.1 Các nghiên cứu về nhận dạng tiếng nói ở nước ngoài

Nghiên cứu nhận dạng tiếng nói đã được bắt đầu từ cuối thập niên 40 của thế

kỉ 20, công nghệ nhận dạng tiếng nói đã có bước đi khá dài và cũng đã đạt một số thành tựu đáng kể Một số phần mềm nhận dạng tiếng nói đã có mặt trên thị trường như các phần mềm nhận dạng tiếng nói đọc chính tả của IBM, phần mềm nhận dạng nói thật hay nói dối, …Và đặc biệt là với ngôn ngữ tiếng Anh hiện nay đã tạo được

bộ cơ sở dữ liệu quý là: là bộ từ điển Beep và CSLU Trong lĩnh vực nghiên cứu các ứng dụng nhận dạng tiếng nói trong viễn thông thì Speech Works là hãng phần mềm khá nổi tiếng Hiện nay trên thế giới đã có nhiều trung tâm nghiên cứu về nhận dạng tiếng nói như: CSLU, Bell Labs, IBM Research Center, Microsoft Research… Nhìn chung môi trường thu âm tiếng nói có ảnh hưởng rất lớn đến độ chính xác của quá trình nhận dạng Ở Mỹ hệ thống nhận dạng các số của thẻ tín dụng ngân hàng được đọc bởi người bán hàng tại các hệ thống cửa hàng bán lẻ có độ chính xác là 98% trong khi cùng hệ thống này trong môi trường phòng thí nghiệm thì độ

chính xác lên tới 99,7% Theo một đánh giá của Barbara s (2001), Performance Automatic Speech Recognition via Enhanced Front-end Analysis and Acoustic Modeling [1] ta có bảng so sánh tỷ lệ lỗi nhận dạng của các hệ thống nhận

high-dạng tiếng Anh so với khả năng nhận high-dạng của con người như sau (bảng 1.1):

Bảng 1.1: So sánh tỷ lệ lỗi nhận dạng của con người và máy tính trong một số hệ

Qua bảng trên ta có thể thấy rằng tỷ lệ lỗi nhận dạng của con người là thấp hơn nhiều so với tỷ lệ lỗi nhận dạng bằng máy và tỷ lệ này càng được thể hiện rõ hơn trong môi trường nhiều nhiễu

Trang 18

Bên cạnh các hệ thống nhận dạng tiếng nói ngôn ngữ châu Âu thì các hệ thống nhận dạng tiếng nói cũng đã được nghiên cứu ở Trung Quốc, Nhật Bản, Thái Lan Nhìn chung, đã có nhiều nghiên cứu nhận dạng tiếng nói tiếng Trung đã được thực hiện, một số hệ thống nhận dạng tiếng trung kích thước lớn đã được xây dựng Còn với ngôn ngữ Thái Lan, các nghiên cứu chủ yếu ở mức độ nhận dạng từ rời rạc Tuy nhiên, với hệ thống nhận dạng từ liên tục thì hệ thống nhận dạng 10 chữ số Thái cũng đã đạt độ chính xác 96,89%

1.2.2 Các nghiên cứu về nhận dạng tiếng nói tiếng Việt

Nhận dạng tiếng nói tiếng Việt đi sau thế giới rất lâu và những kết quả đạt được còn rất hạn chế Cho tới thời điểm hiện nay, các nghiên cứu nhận dạng tiếng nói tiếng Việt còn rất ít và tập trung nhiều vào nghiên cứu nhận dạng từ rời rạc

Hệ thống nhận dạng tiếng nói tiếng Việt giống như hệ thống nhận dạng các ngôn ngữ có thanh điệu khác, bao gồm hai quá trình nhận dạng song song đó là: nhận dạng các từ không có thanh điệu và nhận dạng thanh điệu rồi tổng hợp để đưa

ra quyết định Hình 1.4 mô tả một hệ thống nhận dạng ngôn ngữ có thanh điệu nói chung và tiếng Việt nói riêng:

Hình 1.4: Cấu trúc hệ thống nhận dạng ngôn ngữ có thanh điệu

Nghiên cứu về nhận dạng tiếng Việt được thực hiện đầu tiên Nhóm nghiên cứu của PGS.TS Lương Chi Mai - Viện công nghệ thông tin Trong những đã qua Nhóm nghiên cứu đã đưa ra nhiều đề xuất và những kết quả quan trọng trong lĩnh vực nhận dạng tiếng nói tiếng Việt trên các bài báo khoa học như: “Về xử lý tiếng Việt trong công nghệ thông tin”,…

Ngoài ra, nghiên cứu của tiến sĩ Nguyễn Thành Phúc đã đưa ra hệ thống nhận dạng tiếng Việt với mạng Neural và đưa ra mô hình phiên âm tiếng Việt

Trang 19

Vào năm 2005, nhóm BK02 Đại học Bách khoa thành phố Hồ Chí Minh đã xây dựng chương trình nhận dạng tiếng nói tiếng việt với mã nguồn mở của Microsoft tuy nhiên kết quả còn nhiều hạn chế

Nhìn chung, những nghiên cứu về nhận dạng tiếng nói tiếng Việt còn rất ít và điều quan trọng nhất là chúng ta chưa có một bộ từ điển và bộ cơ sở dữ liệu tốt cho tiếng Việt

1.3 Các hướng tiếp cận nhận dạng tiếng nói

Nghiên cứu về nhận dạng tiếng nói được bắt đầu vào những năm 40 của thế kỉ

20 và đã đạt được những thành tựu đáng kể Các nghiên cứu nhận dạng tiếng nói dựa trên 3 hướng tiếp cận chính: Tiếp cận Âm học, tiếp cận Nhận dạng mẫu thống

kê (chủ yếu dựa trên mô hình Markov ẩn), tiếp cận Trí tuệ nhân tạo

Hướng tiếp cận Âm học: 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 hướng tiếp cận này đòi hỏi tri thức rất đầy đủ về âm học Chính vì các yếu tố trên nên hướng tiếp cận này ít được lựa chọn trong nghiên cứu nhận dạng tiếng nói

Hướ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ừ điển) từ lượng dữ liệu lớn Sau đó, các mẫu cần nhận dạng được rút trích đặc trưng và phân vào lớp mà xác suất mẫu cần nhận dạng thuộc vào lớp đó là lớn nhất Hướng này đang được sử dụng nhiều (chủ yếu là dựa vào mô hình Markov ẩn) và đã đạt được nhiều thành công như trong nhận dạng tiếng nói ngôn ngữ Tiếng Anh, tiếng Trung Quốc

Hướng tiếp cận Trí tuệ nhân tạo: Là sự kết hợp của cả hai hướng tiếp cận âm học và tiếp cận nhận dạng mẫu thống kê Hướng tiếp cận này kết hợp được cả tri thức của chuyên gia và phương pháp nhận dạng mẫu thống kê Tuy nhiên, hiện nay phương pháp này chưa được áp dụng nhiều trong nghiên cứu nhận dạng tiếng nói vì

nó đòi hỏi một tri thức rất lớn Đây sẽ là hướng tiếp cận trong tương lai của nhận dạng tiếng nói

Trang 20

Với mục đích nghiên cứu các phương pháp nhận dạng tiếng nói trên thế giới hiện nay để áp dụng vào bài toán nhận dạng tiếng nói ngôn ngữ tiếng Việt, phần tiếp theo của luận văn này sẽ đi sâu vào phân tích mô hình Markov ẩn để xây dựng

hệ thống nhận dạng tiếng nói ngôn ngữ tiếng Việt Mô hình Markov ẩn được lựa chọn bởi những lý do sau: Đây là mô hình được sử dụng rộng rãi trên thế giới trong lĩnh vực nhận dạng nói chung và nhận dạng tiếng nói nói riêng Với những thành quả đã đạt được trên thế giới trong lĩnh vực nhận dạng tiếng nói, chúng ta có thể thừa hưởng những thành quả này để áp dụng vào bài toán nhận dạng tiếng nói ngôn ngữ tiếng Việt nhất là hiện nay ở nước ta chưa có nhiều nghiên cứu về nhận dạng tiếng nói

1.4 Những khó khăn trong nhận dạng tiếng nói

Qua các nghiên cứu về nhận dạng tiếng nói ngôn ngữ nước ngoài và Việt Nam, ta có thể rút ra được những khó khăn cơ bản trong việc xây dựng một hệ thống nhận dạng tiếng nói như sau:

Điều kiện môi trường: Tiếng nói có chất lượng thấp (nhiều nhiễu,…) do môi

trường thu âm, do thiết bị thu âm… là vấn đề rất khó giải quyết triệt để cho các hệ thống nhận dạng tiếng nói Trong môi trường phòng thí nghiệm, kết quả nhận dạng

có độ chính xác cao hơn so với môi trường bên ngoài, đặc biệt là môi trường có nhiều nhiễu Theo Olivier S (1995), tỷ lệ lỗi của hệ thống nhận dạng tiếng nói với tiếng nói có tỉ số tín hiệu trên nhiễu SNR > 40dB (SNR-Signal ti Noise Ratio) thường tăng gấp nhiều lần (có thể lên tới 10 lần) so với tiếng nói có SNR>18dB

Sự phụ thuộc người nói: Như đã nói ở trên, hệ thống nhận dạng tiếng nói có

thể độc lập người nói (speaker independent) hoặc phụ thuộc người nói (speaker dependent) Để xây dựng một hệ thống nhận dạng độc lập người nói dành cho nhiều người là khó khăn hơn nhiều so với việc xây dựng hệ thống nhận dạng tiếng nói chỉ dành riêng cho từng người Sự khó khăn này là do mỗi vùng miền, mỗi người có một giọng nói khác nhau, ngay bản thân một người nói tiếng nói của họ cũng không giống nhau tại các thời điểm khác nhau Theo Tebelskis j.(1995), thì tỉ lệ lỗi nhận dạng của hệ thống nhận dạng tiếng nói độc lập người nói thường cao gấp 3 đến 5 lần so với hệ thống nhận dạng tiếng nói phụ thuộc người nói

Trang 21

Kích thước của từ điển nhận dạng: Kích thước bộ từ điển của hệ thống nhận

dạng càng lớn thì tỷ lệ hệ thống nhận dạng nhầm giữa các từ, các câu càng cao Đặc biệt, tiếng Việt là một ngôn ngữ rất phong phú về cách phát âm nên để xây dựng một bộ từ điển lớn cho hệ thống tiếng nói tiếng Việt gặp rất nhiều khó khăn

Sự biến đổi trong lời nói: Tốc độ của phát âm cũng ảnh hưởng tới độ chính

xác của hệ thống nhận dạng Với những từ được phát âm rời rạc thì việc xây dựng

hệ thống nhận dạng dễ dàng và có độ chính xác cao hơn so với những từ phát âm liên tục Con người có thể hiểu được những tiếng cười, tiếng ho, tiếng “à, ơ” trong lời nói, tuy nhiên đê máy hiểu được là vô cùng khó khăn

Nhìn chung độ chính xác của hệ thống nhận dạng tiếng nói được đánh giá trên

cơ sở mức từ và mức câu Để đánh giá độ chính xác của hệ thống nhận dạng ở mức

Trang 22

1.5 Xử lý tiếng nói

1.5.1 Khái niệm xử lý tiếng nói

Tín hiệu (signal) là các sự vật, hiện tượng có mang hoặc chứa một thông tin nào đó mà chúng ta có thể hiểu, được quy ước trước Hầu hết các tín hiệu trong thế giới thực đều ở dạng liên tục (tín hiệu tương tự), nó hết sức phức tạp, thiếu độ chính xác đối với máy tính Do đó, để máy tính có thể hiểu được các loại tín hiệu chúng ta thường phải số hóa các loại tín hiệu này

Tiếng nói cũng là một dạng tín hiệu tương tự, do đó để máy tính cũng như các thiết bị có thể hiểu tín hiệu tiếng nói chúng ta cũng cần phải số hóa nó

1.5.2 Kỹ thuật lấy mẫu tín hiệu

Hàm lấy mẫu là cầu nối giữa các hệ thống rời rạc và các hệ thống liên tục nó còn được gọi là: hàm Dirac delta, hàm sàng lọc,…

Đối với máy tính, có thể hiểu lấy mẫu đơn giản chỉ là việc cứ theo một chu kỳ thời gian (với tín hiệu tiếng nói) ta đo tín hiệu một lần Quá trình này sẽ tạo ra một chuỗi các số biểu diễn cho tín hiệu và có thể xử lý được bởi máy tính

Hình 1.5 Ví dụ về lấy mẫu tín hiệu F(t) trên miền thời gian

1.5.3 Cấu trúc bộ lọc tín hiệu

Trong xử lý tiếng nói bộ lọc có vai trò rất quan trọng, chúng được dùng với hai mục đích chính:

Trang 23

Tách các tín hiệu cần thiết: Các tín hiệu ban đầu thường chứa đựng các nhiễu

hoặc các tín hiệu không mong muốn khác, các nhiễu này làm giảm đáng kể chất lượng của tín hiệu Vì vậy, cần phải tách riêng các tín hiệu cần thiết và loại bỏ các tín hiệu nhiễu, dư thừa

Khôi phục các tín hiệu bị biến dạng: Có một số trường hợp vì một nguyên

nhân nào đó (thường là nguyên nhân liên quan tới các thiết bị) sẽ làm cho các tín hiệu vào bị méo mó Yếu tố này sẽ ảnh hưởng tới chất lượng nhận dạng vì vậy cần phải căn chỉnh lại để tăng chất lượng của tín hiệu số

Trong thực tế kỹ thuật, để xử lý tiếng nói người ta thường dùng hai bộ lọc tuyến tính sau:

a Bộ lọc đáp ứng xung hữu hạn (Finite Impulse Response –FIR)

Bộ lọc đáp ứng xung hữu hạn là hệ có tín hiệu ra chỉ phục thuộc vào tín hiệu vào nên hệ này còn được gọi là mạch không truy hồi hay mạch không đệ quy (non – recursive)

Bộ lọc đáp ứng xung hữu hạn có công thức như sau:

j

y nb X nb X n  b X n q   b X nj

Hình 1.6 Minh họa hoạt động của bộ lọc FIR

b Bộ lọc đáp ứng xung vô hạn (Infinite Impulse Response –IIR)

Với bộ lọc đáp ứng xung vô hạn, hệ xử lý có đáp ứng xung có độ dài vô hạn hay đáp ứng xung vô hạn Tín hiệu ra không chỉ phụ thuộc vào tín hiệu vào mà còn phụ thuộc vào chính quá khứ của tín hiệu ra, vì vậy chúng còn được gọi là các mạch

có truy hồi hay đệ qui

Trang 24

Bộ lọc đáp ứng xung vô hạn có công thức như sau:

Để dò tìm điểm cuối ta thực hiện qua ba bước sau, sau mỗi bước chất lượng của việc dò tìm điểm cuối sẽ được tốt hơn Việc dò tìm điểm cuối dựa trên mức năng lượng của tín hiệu được đặc trưng bằng:

Bước 1 Dò tìm thô: dựa trên kĩ thuật năng lượng ít chính xác nhất Nó tìm

một đoạn mà mức năng lượng cao hơn đoạn trước đó và cho một số khung là điểm bắt đầu (thường là 40 khung) trước khi gặp khung mức năng lượng cao hơn Và một

Trang 25

số lượng khung (khoảng 20 khung) khác qua (không cần kiểm tra bất kì khung nào) được cho là điểm cuối

Bước 2 Dò tìm tinh: Bước này sẽ kiểm tra mức năng lượng của tiếng nói, nó

sẽ lọc ra điểm đầu và điểm cuối bằng cách cho rằng mức năng lượng của tiếng nói cao hơn mức năng lượng của độ ồn nền ở một ngưỡng nào đó

Bước 3 Kỹ thuật VUS (Voice, Unvoice and Silence): Kỹ thuật này sẽ phân

loại các khung thành đoạn vô thanh, hữu thanh hay khoảng lặng Việc phân loại này dựa trên sự phân bố năng lượng trong khung, phổ bị biến dạng và sự phân loại khung trước đó Kỹ thuật này giúp loại bỏ những phần tín hiệu không phải của tiếng nói như: tiếng cười, tiếng thở hay âm thanh nền như tiếng xe cộ…

Hình 1.8 Dò tìm điểm cuối dựa trên mức năng lượng 1.5.5 Kỹ thuật rút trích đặc trưng

Đối với bất kì hệ thống nhận dạng nào (tiếng nói hay hình ảnh) việc rút trích đặc trưng là rất quan trọng Tín hiệu tiếng nói được thu vào vốn có kích thước lớn, vệc rút trích ra các vector đặc trưng cần thiết sẽ làm giảm số lượng dữ liệu trong quá trình huấn luyện và nhận dạng của hệ thống nhận dạng và tốc độ của hệ thống

sẽ được nâng cao Ngoài ra, việc rút trích đặc trưng còn làm rõ sự khác biệt giữa tiếng này với tiếng khác, làm mờ đi sự khác biệt của cùng một tiếng trong những lần phát âm khác nhau

Trang 26

Hình 1.9 Sơ đồ rút trích vevtor đặc trưng tổng quát

Các đặc trưng được trích ra phải thỏa mãn những điều kiện sau:

 Nhỏ hơn rất nhiều so với tín hiệu gốc

 Vẫn giữ lại những đặc điểm quan trọng của tín hiệu ban đầu

Có nhiều dạng đặc trưng của tín hiệu tiếng nói, có thể chia thành 3 nhóm như sau:

Nhóm 1: Đặc trưng được rút ra nhờ mô phỏng theo mô hình bộ máy phát âm

của con người Các đặc trưng này dựa vào phương pháp dự báo tuyến tính để rút ra đặc trưng Để rút trích ra đặc trưng dạng này ta thường dùng các phương pháp: LPC (Linear Predictive coding) hay PLP (Perceptional Linear Prediction)

Nhóm 2: Đặc trưng rút ra dựa trên khả năng cảm nhận âm thính giác của con

người Các đặc trưng của nhóm này sử dụng phương pháp phân tích Cepstral (sử dụng các phép biến đổi Fourier ngược của Logarit phổ năng lượng của một tín hiệu)

và phổ âm (Spectral) còn gọi là phương pháp dãy bộ lọc Để trích rút đặc trưng dạng này ta thường dùng phương pháp MFCC (Mel Frequency Cepstral Coeficients)

Trang 27

Nhóm 3: Dựa trên các đặc trưng về âm học như: cao độ, ngữ điệu,… Các đặc

trưng nhóm này ít được dùng cho nhận dạng âm tiết mà chủ yếu sử dụng cho nhận dạng tâm trạng người nói,…

Qua những phân tích trên ta có thể thấy các dạng đặc trưng ở nhóm 1 và nhóm

2 có nhiều ưu điểm hơn cho việc nhận dạng tiếng nói Điều này giải thích tại sao hai phương pháp MFCC và PLP lại được sử dụng rộng rãi trong các hệ thống nhận dạng tiếng nói hiện tại trên thế giới

Phần tiếp theo, sẽ giới thiệu phương pháp trích chọn đặc trưng MFCC

Trang 28

ít hơn nhiều so với những thành phần có tần số thấp, nhưng những vùng này lại lưu giữ một phần tín hiệu quan trọng của tiếng nói Để quá trình nhận dạng được tốt hơn, chúng ta sẽ tăng cường tín hiệu trong vùng có tần số cao, làm cân bằng tín hiệu giữa các vùng Người ta còn gọi quá trình này là làm phẳng tín hiệu tiếng nói Quá trình lọc tín hiệu tiếng nói được thực hiện như sau:

Với mỗi giá trị s(n) trong chuỗi dữ liệu đầu vào S ={ s1, s2, …,sk}, áp dụng phương trình sai phân:

S n   s na s n*   1

Trong đó:

={ , ,…, }: Là chuỗi tín hiệu đã được xử lý tương ứng với chuỗi đầu vào S ={ s1, s2, …,sk}

n: Xác định mẫu tín hiệu ở thời điểm n

a: Là hệ số làm nổi, a thường nằm trong đoạn [0.95; 0.97], hệ số a càng cao thì thành phần tín hiệu có tần số thấp bị loại đi càng nhiều

Hình 1.11 Sóng âm của chữ “ANH” trước khi làm phẳng (bên trái) và sau

khi làm phẳng (Bên phải)

b Tạo khung tín hiệu

Tín hiệu tiếng nói là loại tín hiệu luôn biến thiên theo thời gian, tuy nhiên trong khoảng thời gian 10-20ms, tín hiệu tiếng nói được coi là tương đối ổn định

Do đó tín hiệu tiếng nói thường được chia thành các khung kích thước 20-30ms với vùng chồng lên nhau là 10-15ms

Trang 29

Hình 1.12 Phân đoạn tín hiệu tiếng nói thành các khung có sự chồng lấp

c Lấy cửa sổ

Để giảm thiểu sự gián đoạn tín hiệu ở đầu và cuối của mỗi khung ta sẽ lấy cửa

sổ tín hiệu ứng với mỗi khung Một dãy tín hiệu con được lấy ra từ một tín hiệu dài hơn hoặc dài vô hạn x(n) gọi là một cửa sổ tín hiệu

Trong xử lý tiếng nói cũng như các tín hiệu số khác, các cửa sổ thường dùng được biểu diễn thông qua cửa sổ Hamming tổng quát:

Với cửa sổ Hamming tổng quát, tùy thuộc vào giá trị của α ta sẽ có các cửa sổ khác nhau:

 Với α= 0.54 ta có cửa sổ Hamming, đây là loại cửa sổ thường được dùng nhất trong việc lấy cửa sổ đối với tín hiệu tiếng nói

Hình 1.13 Cửa sổ Hamming

Trang 30

 Với α=0.5 ta có cửa sổ Hanning

Hình 1.14 Cửa sổ Hanning

 Với α=1 ta có cửa sổ hình chữ nhật

Hình 1.15 Cửa sổ hình chữ nhật

d DFT – Discete Fourier Transform

Tại bước này, với mỗi khung tín hiệu, biến đổi Fourier được áp dụng để chuyển về miền tần số Công việc tính toán được thực hiện bằng thuật toán FFT (Fast Fourier Trasform)

Ngày đăng: 12/10/2018, 14:15

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Barbara S, “High- Performance Automatic Speech Recognition via Enhanced Front-end Analysis and Acoustic Modeling”,Ph.D.Thesis, University of California, 2001 Sách, tạp chí
Tiêu đề: High- Performance Automatic Speech Recognition via Enhanced Front-end Analysis and Acoustic Modeling”
[2]. Hosom J.P, Cole R.A, and Cosi P, “ Improverment in Neural-Network Training and Search technique for continunous Digit recognition” Australia Journal of Intelligent information processing systems, vol.5,no.5, pp.227-284, 1998 Sách, tạp chí
Tiêu đề: Improverment in Neural-Network Training and Search technique for continunous Digit recognition”
[3]. Đặng Ngọc Đức, “Nghiên cứu ứng dụng mạng Neural và mô hình Markov ẩn vào trong nhận dạng tiếng Việt”, Luận án tiến sĩ toán học, Đại học Quốc Gia Hà Nội, 2004 Sách, tạp chí
Tiêu đề: Nghiên cứu ứng dụng mạng Neural và mô hình Markov ẩn vào trong nhận dạng tiếng Việt”
[4]. Đỗ Xuân Thọ, Lê Hữu Tĩnh, “Giáo trình tiếng Việt 2”, nhà xuất bản Giáo dục, 1997 Sách, tạp chí
Tiêu đề: “Giáo trình tiếng Việt 2”
Nhà XB: nhà xuất bản Giáo dục
[5]. Lương Chi Mai, Hồ Tú Bảo, “Về xử lý tiếng Việt trong công nghệ thông tin”, Báo cáo khoa học, Viện công nghệ thông tin Sách, tạp chí
Tiêu đề: Về xử lý tiếng Việt trong công nghệ thông tin”
[6]. Nguyễn Thành Phúc, “Một phương pháp nhận dạng lời Việt: áp dụng phương pháp kết hợp mạng Neural với mô hình Markov ẩn”, Luận án tiến sĩ Kỹ thuật, Đại học Bách khoa Hà Nội, 2000 Sách, tạp chí
Tiêu đề: Một phương pháp nhận dạng lời Việt: áp dụng phương pháp kết hợp mạng Neural với mô hình Markov ẩn”

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w