Song, em vẫn lựa chọn đề tài này vì các ứng dụng chuyển đổi tiếng nói tiếng Việt sang văn bản còn khá khiêm tốn, đặc biệt là ở trên các thiết bị di động thông minh...17 Trong đề tài này
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN ĐẠI HỌC MỞ HÀ NỘI
LUẬN VĂN THẠC SỸ
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
NHẬN DẠNG VÀ CHUYỂN ĐỔI
TIẾNG NÓI TIẾNG VIỆT SANG VĂN BẢN
HOÀNG MINH SƠN
HÀ NỘI - 2015
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN ĐẠI HỌC MỞ HÀ NỘI
LUẬN VĂN THẠC SỸ
NHẬN DẠNG VÀ CHUYỂN ĐỔI
TIẾNG NÓI TIẾNG VIỆT SANG VĂN BẢN
HOÀNG MINH SƠN
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
MÃ SỐ: 60480201
NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS NGUYỄN QUANG HOAN
HÀ NỘI - 2015
Trang 3LỜI CAM ĐOAN
Em xin cam đoan đây là công trình nghiên cứu của em và chưa được công bốtrong bất cứ công trình nào và chưa được đăng trong bất kỳ tài liệu, tạp chí, hội nghịnào khác Những kết quả nghiên cứu trong luận văn là trung thực
Hà Nội, tháng 11 năm 2015
TÁC GIẢ LUẬN VĂN
Hoàng Minh Sơn
Trang 4LỜI CẢM ƠN
Trước hết, em xin gửi lời cảm ơn sâu sắc đến PGS.TS Nguyễn Quang Hoan,người đã giúp đỡ em rất nhiều về kiến thức cũng như tài liệu kỹ thuật phục vụ chocông tác nghiên cứu
Em xin chân thành cảm ơn các thầy, cô là giảng viên đã giảng dạy tại ViệnĐại học Mở - Hà Nội đã tạo điều kiện giúp đỡ em hoàn thành đề tài tốt nghiệp, cảm
ơn tất cả bạn bè đã nhiệt tình giúp đỡ, động viên và góp ý cho luận văn, đề tài này
Mặc dù đã rất nỗ lực và cố gắng để hoàn thành luận văn tốt nghiệp nàynhưng chắc chắn không thể tránh khỏi những sai sót Vì vậy, em rất mong được sựchỉ bảo của thầy, cô để luận văn này được hoàn thiện hơn
Hà Nội, tháng 12 năm 2015
TÁC GIẢ LUẬN VĂN
Hoàng Minh Sơn
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
Phụ lục viii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT ix
ix
DANH SÁCH BẢNG x
DANH SÁCH HÌNH VẼ xi
MỞ ĐẦU 1
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ NHẬN DẠNG TIẾNG NÓI, TIẾNG NÓI TIẾNG VIỆT 2
1.1 Giới thiệu một số ứng dụng nhận dạng tiếng nói trong và ngoài nước 2
1.1.1 Các ứng dụng nhận dạng tiếng nói trên thế giới 2
1.1.2 Các nghiên cứu nhận dạng tiếng nói trong nước 4
1.2 Giới thiệu về hệ thống nhận dạng tiếng nói 6
1.3 Giới thiệu về tiếng nói, tiếng Việt 7
Tiếng nói là một loại sóng âm, khi nói, tiếng nói được truyền đi mang theo thông tin dưới dạng các dao động cùng phương truyền đến tai người nhận Mức độ truyền tin của tiếng nói được xem là nhanh nhất trong các khả năng tự nhiên của con người [5] 7
1.3.1 Các đặc trưng của tiếng nói 7
1.3.2 Quá trình phát âm và bộ máy phát âm 9
1.3.3 Một số đặc điểm khi tìm hiểu về tiếng nói 10
1.4 Ngữ âm tiếng Việt 11
1.4.1 Khái niệm ngữ âm tiếng Việt 11
1.4.2 Cấu trúc âm tiết 11
1.4.2.1 Cấu trúc âm tiết năm thành phần 11
1.4.2.2 Cấu trúc âm tiết ba thành phần 12
1.4.2.3 Thanh điệu 14
Bằng 16
Trắc 16
Cao 16
Ngang 16
Trang 6Ngã 16
Thấp 17
Huyền 17
Hỏi 17
Nặng 17
17
1.5 Lý do chọn đề tài và bài toán nhận dạng 17
Hiện nay, trên thế giới và cả ở trong nước có rất nhiều đề tài về vấn đề nhận dạng, chuyển đổi tiếng nói sang văn bản Hầu hết, các đề tài đó đã đưa ra được rất nhiều ứng dụng được đánh giá rất cao Song, em vẫn lựa chọn đề tài này vì các ứng dụng chuyển đổi tiếng nói tiếng Việt sang văn bản còn khá khiêm tốn, đặc biệt là ở trên các thiết bị di động thông minh 17
Trong đề tài này, em đã áp dụng, tận dụng mã nguồn mở và hệ thống nhận dạng công nghệ điện toán đám mây của Google để thiết kế, xây dựng chương trình ứng dụng sử dụng trên hệ điều hành Android nhằm đáp ứng được nhu cầu sử dụng thiết bị di động thông minh, bắt kịp thời đại hiện đại hoá hiện nay 17
1.6 Kết luận chương 1 17
CHƯƠNG 2: PHÂN TÍCH DỮ LIỆU TIẾNG NÓI 18
2.1 Cấu trúc tập tin âm thanh 18
2.2 Các kỹ thuật tiền xử lý tiếng nói 23
2.2.1 Các đơn vị cơ bản tiếng nói 23
2.2.2 Phương pháp trích chọn đặc trưng LPC 25
Trong đó: 26
Đệ qui: Với p = 2,3,…,P 26
Tính hệ số Kp 26
Tính các hệ số dự báo bậc p: 26
Tính sai số bình phương trung bình bậc p: 26
Quay lại bước 1, thay p bằng p+1 nếu 26
Kết thúc: 26
2.2.2.2 Hàm hiệu biên độ trung bình 26
Hàm hiệu biên độ trung bình là hiệu biên độ của tín hiệu với chính nó dời đi p mẫu 26
Trang 7Nếu x(n) là tín hiệu tuần hoàn với chu kỳ T (mẫu) thì AMDF sẽ đạt cực tiểu nếu tín hiệu
bị dời đi một đoạn đúng bằng T mẫu 27
Nhận dạng giọng của người có tần số cơ bản từ 80Hz (tương ứng với số mẫu là n1=Fs / 80) đến 200Hz (tương ứng n2=Fs/200, Fs là tần số lấy mẫu) 27
Tính AMDF của tín hiệu với độ dời thay đổi từ n2 đến n1 Giả sử AMDF đạt cực tiểu ứng với độ dời P0 (mẫu) Đó chính là chu kỳ của tín hiệu (hoặc gần với chu kỳ của tín hiệu nhất), và tần số cơ bản của tín hiệu là F0=Fs/P0 Giá trị này chính là đặc trưng của tín hiệu về mặt thanh điệu 27
Do tiếng nói là tín hiệu không dừng nên cứ mỗi 30ms phải tính lại các giá trị mới Tất cả các giá trị tính được sẽ là đặc trưng của một từ và được dùng để huấn luyện mạng nơron 27
2.2.2.3 Giải thuật trích đặc trưng bằng LPC 27
Bước 1: Lọc nhiễu, sử dụng bộ lọc có hàm truyền: 27
với tần số cắt dưới là 300 Hz để lọc nhiễu tần số thấp do micro gây ra 27
Bước 2: Pre-emphasis, sử dụng bộ lọc có đáp ứng xung: 27
Bước 3: Tách điểm đầu và cuối của một từ dùng hàm năng lượng thời gian ngắn: 27
Bước 4: Phân đoạn thành các khung (khung này khác với các khung trong giai đoạn tìm điểm đầu điểm cuối), mỗi khung có N mẫu, độ chồng lấp M mẫu: 27
Bước 5: Cửa sổ hóa Hàm cửa sổ thông dụng nhất là cửa sổ Hamming được định nghĩa như sau: 28
Bước 6: Xác định các hệ số dự báo tuyến tính dùng thuật toán Levinson-Durbin 28
Bước 7: Chuyển các hệ số dự báo tuyến tính thành các hệ số Cepstral 28
Và 28
Các hệ số Cepstral này có độ tập trung cao hơn và đáng tin cậy so với các hệ số dự báo tuyến tính Thông thường chọn Q =3/2P 28
Bước 8: Chuyển sang Cepstral có trọng số: 28
Bước 9: Tính đạo hàm Cepstral 28
Với µ là hằng số chuẩn và (2K+1) là số lượng khung cần tính K= 3 là giá trị thích hợp để tính đạo hàm cấp một Vectơ đặc trưng của tín hiệu gồm Q hệ số Cepstral và Q hệ số đạo hàm Cepstral 28
2.2.2.4 Trích chu kỳ cơ bản bằng AMDF 28
Trang 8Bước 1, bước 2 và bước 3 giống như phương pháp LPC Đối với bộ lọc nhiễu, sử dụng
bộ lọc thông cao có tần số cắt là 60Hz do tần số cơ bản của người từ 80Hz đến 200Hz
28
Bước 4: Tín hiệu sẽ được xén bớt nhằm làm nổi rõ chu kỳ cơ bản: 29
Trong đó giá trị C khoảng 1/3 biên độ cực đại của tín hiệu 29
Bước 5: Tín hiệu sau khi xén được đưa đến hàm lấy hiệu biên độ trung bình: 29
Trong đó: N là độ dài khung và p được lấy trong khoảng pitch tương ứng với tần số cơ bản 80-200Hz Chọn P0 có d cực tiểu, đó chính là chu kỳ pitch và tần số cơ bản là Fs/P0 Đối với các khung có d(P0) > 0.7 dmax(p) được phân loại là khung vô thanh và gán F0 = 0 29
Bước 6: Sau khi đã xác định F0 của toàn bộ âm tiết, cần phải xử lý các khung có F0 = 0 Nếu các khung là vô thanh ở đầu hay ở cuối âm tiết, thay các khung đó bằng F0 của khung hữu thanh kế cận Nếu các khung vô thanh ở giữa âm tiết thì thay F0 của khung đó bằng trung bình của hai khung hữu thanh ở hai bên 29
Bước 7: Đường nét F0 được làm trơn bằng bộ lọc trung bình có trọng số với đáp ứng xung h=[0.1 0.2 0.4 0.2 0.1] 29
Bước 8: Do số ngõ vào của mạng nơron là cố định nên cần chuẩn hóa kích thước F0, nên cũng phải chuẩn hóa độ lớn của F0 và chuyển qua thang log: 29
với i = 0,1, …, L-1 29
max và min là giá trị cực đại và cực tiểu của F0 lấy trên toàn bộ dữ liệu, ∆ là số dương để tránh log0 29
Bước 9: Lấy L giá trị đạo hàm của logF0, ghép L giá trị logF0 với L giá trị đạo hàm thành vectơ đặc trưng 29
2.3 Kết luận chương 2 29
CHƯƠNG 3: CẤU TRÚC VÀ CÁC LUẬT HỌC MẠNG NƠRON 31
3.1 Khái niệm mạng nơron nhân tạo 31
Trong mỗi lớp mạng lại có nhiều mạng với các tên gọi và đặc trưng khác nhau, thể hiện một kiểu phân loại điển hình các mạng nơron (hình 3.1) 32
3.2 Cấu trúc nơron nhân tạo 32
3.3 Các luật học của mạng nơron 34
3.3.1 Học tham số 34
3.3.2 Học cấu trúc 36
3.5 Kết luận chương 3 44
Trang 9CHƯƠNG 4: THIẾT KẾ CHƯƠNG TRÌNH NHẬN DẠNG VÀ CHUYỂN
ĐỔI TIẾNG NÓI 46
4.1 Mô tả cấu trúc ứng dụng 46
4.1.1 Hoạt động 46
4.1.2 Dịch vụ 49
4.1.3 Bộ thu nhận 51
4.1.4 Trình cung cấp nội dung 52
4.2 Mô tả dữ liệu 53
4.3 Mô tả minh hoạ một mạng nơron nhận dạng tiếng nói 54
4.4 Sơ đồ quá trình hoạt động của ứng dụng 54
4.5 Quá trình thực hiện chương trình ứng dụng 55
4.6 Lưu đồ thuật toán chương trình 56
Ứng dụng sử dụng công nghệ điện toán đám mây lấy cơ sở dữ liệu từ máy chủ Google để nhận dạng tiếng nói 56
4.7 Mô phỏng ứng dụng trên máy tính 57
4.7.1 Mô phỏng ứng dụng với đoạn văn bản có một câu 57
4.7.2 Mô phỏng ứng dụng với đoạn văn bản có ít nhất hai câu 59
4.7.3 Mô phỏng trong môi trường kín, yên tĩnh 61
4.7.4 Thử nghiệm với kết quả đầu ra có gợi ý chữ gần đúng 61
4.7.5 Thử nghiệm ứng dụng với một kết quả đầu ra bằng tiếng Anh 61
4.7.6 Thử nghiệm ứng dụng với đoạn văn bản có một câu trong n lần 62
4.8 Hướng dẫn sử dụng chương trình 64
64
65
Bước 4: Ghi âm tiếng nói 66
66
Giao diện kết quả thực hiện chương trình nhận dạng tiếng nói và chuyển sang văn bản với lựa chọn là 3 kết quả gợi ý đầu ra (Hình 4.27) 67
Khi chọn kết quả là n, ứng dụng đưa ra n lần kết quả khác nhau, kết quả đầu tiên luôn chính xác, các kết quả tiếp theo là những gợi ý để người sử dụng có thêm lựa chọn 67
67
4.9 Kết luận chương 4 68
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 69 Mặc dù cơ bản hoàn thành việc áp dụng, tích hợp các công cụ có sẵn để xây dựng thành công hệ thống nhận dạng và chuyển đổi tiếng nói tiếng Việt sang
Trang 10văn bản hoạt động trên hệ điều hành Android cũng như thiết bị di động thông minh nhờ tích hợp công nghệ điện toán đám mây của Google Nhưng trong tương lai, em sẽ tiếp tục thực hiện việc nghiên cứu về mạng nơron nhằm nâng cao trình độ hiểu biết để xây dựng một hệ thống nhận dạng tiếng nói, giọng nói, âm thanh… có khả năng tương tự như công nghệ của Google 69 Ngoài ra, em cũng sẽ phát triển đề tài đang nghiên cứu nhằm xây dựng được
hệ thống có khả năng phân tích, nhận dạng tiếng động âm thanh qua điện thoại phục vụ công tác điều tra truy tìm kẻ bắt cóc con tin để có thể áp dụng trong lực lượng vũ trang hay những ứng dụng thiết thực trong cuộc sống như tương tác, thông dịch các ngôn ngữ hoạt động cùng lúc trên nhiều thiết bị, ghi lại được các bài giảng, báo cáo, thuyết trình, phỏng vấn… thành văn bản 70 TÀI LIỆU THAM KHẢO 71 Phụ lục
Trang 11DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
AMDF Average Magnitude Difference
ANN Artificial Neural Network Mạng nơron nhân tạo
API Application Programming Interface Giao diện lập trình ứng dụngAVI Audio Video Interleave Định dạng tập tin hình ảnh
CNTT Information Technology Công nghệ thông tin
GA Genetic Algorithms Giải thuật di truyền
GSM Global System for Mobile
SDK Software Development Kit Bộ phát triển phần mềm
Trang 12DANH SÁCH BẢNG
Bảng 1.1: Cấu trúc âm tiết 5 thành phần 12
Bảng 1.2: Cấu trúc âm tiết 3 thành phần 13
Bảng 1.3: Tổ hợp âm giữa 13
Bảng 1.4: Phân loại thanh điệu trong tiếng Việt 16
Bảng 2.1: Bảng thông tin về định dạng âm thanh 21
Bảng 2.2: Bảng thông tin về dữ liệu 22
Bảng 3.1: Các hàm truyền H(s) thường dùng 33
Bảng 3.2: Một số hàm phi tuyến thường dùng trong mô hình nơron 33
Trang 13DANH SÁCH HÌNH VẼ
Hình 1.1: Ứng dụng “Windows Speech Recognition” 2
Hình 1.2: Ứng dụng “Voice-To-Text” trên Facebook Messenger 3
Hình 1.3: Ứng dụng tích hợp Web Speech API Demonstration 4
Hình 1.4: Sơ đồ phân loại hình thức nhận dạng tiếng nói 7
Hình 1.5: Đồ thị tín hiệu tiếng nói trong thời gian dài 8
Hình 1.6: Đồ thị tín hiệu tiếng nói trong thời gian ngắn 8
Hình 1.7: Thanh điệu trong tiếng Việt 14
19 Hình 2.1: Sơ đồ mô tả cấu trúc các trường thông tin của Wave 19
Hình 2.2: Mô tả cấu trúc các trường dữ liệu Wave 23
Hình 3.1: Phân loại mạng nơron nhân tạo 31
Hình 3.2 Mô hình nơron nhân tạo 32
Hình 3.3: Sơ đồ khối luật học giám sát của mạng nơron 35
36 Hình 3.4: Sơ đồ khối luật học không giám sát của mạng nơron 36
Hình 3.5: Sơ đồ khối luật học củng cố của mạng nơron 36
Hình 3.6: Mạng Perceptron một lớp đơn 37
Hình 3.7: Cấu trúc mạng Hopfield rời rạc 39
Hình 3.8: Cấu trúc mạng Back Propagation 41
Hình 4.1: Biểu đồ Hoạt động 48
Hình 4.2: Biểu đồ Dịch vụ 50
Hình 4.3: Biểu đồ Bộ thu nhận 52
Hình 4.4: Sơ đồ Trình cung cấp nội dung 53
Hình 4.5: Minh họa mô tả dữ liệu của một máy chủ Google 53
Hình 4.6: Deep Neural Network 54
Hình 4.7: Quá trình hoạt động của Ứng dụng Nhận dạng 54
và chuyển đổi tiếng nói sang văn bản 54
Trang 14Hình 4.8: Lưu đồ thuật toán chương trình nhận dạng và chuyển đổi tiếng nói tiếng
Việt sang văn bản 56
Hình 4.9: Kết quả đoạn văn bản có một câu 57
thử nghiệm với giọng nữ giới 57
Hình 4.10: Kết quả đoạn văn bản có một câu 57
thử nghiệm với giọng nam giới 57
Hình 4.11: Kết quả đoạn văn bản có một câu 58
thử nghiệm với em bé 58
Hình 4.12: Kết quả đoạn văn bản có một câu 58
thử nghiệm với người già 58
Hình 4.13: Kết quả đoạn văn bản có một câu 59
thử nghiệm với ít nhất hai người cùng nói 59
Hình 4.14: Kết quả đoạn văn bản có ít nhất hai câu 59
thử nghiệm với giọng nữ giới 59
Hình 4.15: Kết quả đoạn văn bản có ít nhất hai câu 60
thử nghiệm với giọng nam giới 60
Hình 4.16: Kết quả đoạn văn bản có ít nhất hai câu 60
thử nghiệm với em bé 60
Hình 4.17: Kết quả đoạn văn bản có một câu thử nghiệm với người già 61
Hình 4.18: Kết quả thực nghiệm với kết quả đầu ra 62
là câu có nhiều chữ bằng tiếng Anh 62
Hình 4.19: Kết quả thử nghiệm lần 1 62
Hình 4.20: Kết quả thử nghiệm lần 2 63
Hình 4.21: Kết quả thử nghiệm lần 3 63
Hình 4.22: Kết quả thử nghiệm lần 4 63
Hình 4.23: Kết quả thử nghiệm lần n 63
Bước 2: Khởi chạy ứng dụng 64 Người dùng bấm vào biểu tượng ứng dụng nhận dạng và chuyển đổi tiếng nói
tiếng Việt sang văn bản có tên là s2t (hình 4.24) trên màn hình điện
Trang 15thoại thông minh, ứng dụng s2t sẽ được khởi chạy và đưa ra giao
diện chương trình chính (hình 4.25) 64
Hình 4.24: Biểu tượng Ứng dụng Nhận dạng và chuyển đổi tiếng nói tiếng Việt sang văn bản 64
Bước 3: Sử dụng ứng dụng 65
Để chuyển đổi tiếng nói tiếng Việt sang thành một đoạn văn bản, người dùng chỉ cần bấm vào nút “Bấm để nói” Chương trình sẽ gọi giao diện thực hiện nhận dạng tiếng nói (hình 4.25) 65
Hình 4.25: Giao diện Chương trình chính 65
Hình 4.26: Giao diện thực hiện nhận dạng tiếng nói 66
trên phương thức Google API 66
Hình 4.27: Giao diện Kết quả thực hiện chương trình 67
chuyển đổi tiếng nói sang văn bản 67
Trang 16MỞ ĐẦU
Ngày nay, các thiết bị di động đã và đang phát triển mạnh mẽ Tương lai,các thiết bị di động cùng công nghệ điện toán đám mây sẽ là một phần tất yếu củacuộc sống Điện thoại, máy tính bảng, đồng hồ thông minh… đều mang lại trảinghiệm mới cho người sử dụng Các ứng dụng về nhận dạng tiếng nói đang được
sử dụng nhiều trên các thiết bị này Tuy nhiên, các ứng dụng nói trên dành chongười Việt còn khá ít, đa phần là các ứng dụng hỗ trợ sử dụng tiếng nước ngoài
Mặt khác, độ phức tạp trong việc nhận dạng và chuyển đổi tiếng nói cũngcần được đề cập tới như môi trường nhiễu, tạp âm và ngôn ngữ đa dạng, giọng nóitừng vùng miền… gây ảnh hưởng nhiều tới việc nhận dạng tiếng nói cũng đã phầnnào khiến các ứng dụng này dành cho người Việt còn hạn chế
Chính vì thế, em đã nghiên cứu và chọn ra phương pháp phân tích, xử lýtiếng nói tích hợp công nghệ điện toán đám mây của Google để thực hiện, thiết kếnên chương trình Nhận dạng và chuyển đổi tiếng nói tiếng Việt sang văn bản sửdụng được trên thiết bị di động thông minh Chương trình ứng dụng có khả năng:
- Nhận dạng và chuyển đổi tiếng nói tiếng Việt sang văn bản
- Hoạt động được trên một số thiết bị di động thông minh
Luận văn này gồm 4 chương nội dung:
Chương 1: Tổng quan về nhận dạng tiếng nói, tiếng nói tiếng Việt
Chương 2: Phân tích dữ liệu tiếng nói
Chương 3: Cấu trúc và các luật học mạng nơron nhân tạo
Chương 4: Thiết kế chương trình nhận dạng và chuyển đổi tiếng nói tiếngViệt sang văn bản
Kết luận và hướng phát triển của đề tài
Trang 17CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ NHẬN DẠNG
TIẾNG NÓI, TIẾNG NÓI TIẾNG VIỆT 1.1 Giới thiệu một số ứng dụng nhận dạng tiếng nói trong và ngoài nước
Nhận dạng tiếng nói là một quá trình phức tạp Tín hiệu tiếng nói phát ra làtương tự Qua quá trình lấy mẫu, lượng tử hoá và mã hoá để thu được tín hiệu số,các mẫu tín hiệu này được trích chọn đặc trưng Những đặc trưng này sẽ là đầu vàocủa quá trình nhận dạng Hệ thống nhận dạng sẽ đưa ra kết quả nhận dạng
Một số yếu tố khó khăn cho bài toán nhận dạng tiếng nói:
- Khi phát âm, người nói nhanh, chậm khác nhau
- Các từ được nói thường dài ngắn khác nhau
- Một người cùng nói một từ nhưng ở nhiều lần phát âm là khác nhau và kếtquả phân tích khác nhau
- Mỗi người có giọng nói riêng được thể hiện thông qua độ cao, độ lớn, cường
độ của âm và âm sắc Yếu tố nhiễu của môi trường, thiết bị thu… cũng ảnh hưởngkhông nhỏ tới hiệu quả nhận dạng
Hệ thống nhận dạng và chuyển đổi tiếng nói sang văn bản được các nhà khoahọc quốc tế cũng như trong nước nghiên cứu, phát triển phổ biến
1.1.1 Các ứng dụng nhận dạng tiếng nói trên thế giới
1.1.1.1 Ứng dụng “Windows Speech Recognition”
- Giới thiệu: Ứng dụng “Windows Speech Recognition” được tích hợp sẵn trongMicrosoft Windows 7, Windows 8, Windows 10, ra đời năm 2009 [21] có khả năngnhận dạng tiếng nói để quản lý, điều khiển các phần mềm, ứng dụng trên hệ điềuhành Windows nhằm giảm bớt thời gian cho người sử dụng
Hình 1.1: Ứng dụng “Windows Speech Recognition”
- Các đặc trưng của ứng dụng
Trang 18+ Tạo văn bản từ giọng nói.
+ Quản lý, điểu khiển phần mềm, ứng dụng trên máy tính
- Một số hạn chế của ứng dụng
+ Ứng dụng phải được học trước khi sử dụng
+ Khó phân biệt giọng nói một cách chính xác
+ Hoạt động trong nhận dạng còn kém hiệu quả
+ Chưa nhận dạng được tiếng Việt
1.1.1.2 Ứng dụng “Voice-To-Text Facebook Messenger”
- Giới thiệu: Ứng dụng “Voice-To-Text” tích hợp trên Facebook Messenger, đượcFacbook đưa vào hoạt động năm 2013 Ứng dụng này nhận diện giọng nói vàchuyển đổi tiếng nói thành một đoạn văn bản gửi qua phần nhập tin nhắn văn bảntrên ứng dụng Facebook Messenger và gửi tin nhắn văn bản đó cho người nhận
Hình 1.2: Ứng dụng “Voice-To-Text” trên Facebook Messenger
Trang 19+ Chỉ chuyển giọng nói sang văn bản.
+ Chỉ nhận dạng được tiếng Anh
1.1.1.3 Ứng dụng “Google Speech To Text”
- Giới thiệu ứng dụng: “Google Speech To Text” được Google phát triển khoảng 2
năm trở lại đây [22] Ứng dụng chạy được trên nhiều môi trường như Windows, iOS,Android, tích hợp vào trình duyệt Chrome và nhận dạng được cả đoạn văn bản dài
Hình 1.3: Ứng dụng tích hợp Web Speech API Demonstration
- Các đặc trưng của ứng dụng “Google Speech To Text”
+ Nhận dạng tốt các giọng nói
+ Hỗ trợ nhiều ngôn ngữ trên thế giới và Việt Nam
+ Có khả năng hiểu, dịch được ngôn ngữ người dùng phát âm
1.1.2 Các nghiên cứu nhận dạng tiếng nói trong nước
1.1.2.1 Thiết kế chip nhận dạng tiếng nói tiếng Việt trên nền công nghệ FPGA
- Giới thiệu: Đề tài Thiết kế chip nhận dạng tiếng nói tiếng Việt trên nền côngnghệ FPGA (Field Programmable Gate Array - thiết bị bán dẫn được lập trình sausản xuất) được T.S Hoàng Trang cùng nhóm nghiên cứu ở Đại học Bách Khoa,Đại học Quốc gia TP Hồ Chí Minh triển khai và thiết kế thành công năm 2012phục vụ cho người khuyết tật và các ứng dụng khác dựa trên nhận dạng, tổng hợptiếng nói tiếng Việt [23]
- Các đặc trưng của đề tài:
Trang 20+ Nhận dạng tiếng nói tiếng Việt và hơn 20 ngôn ngữ trên thế giới.
+ Độ chính xác trong nhận dạng tối thiểu là 80% trong môi trường ít nhiễu.+ Thiết kế chip nhận dạng với giá thành rẻ
- Một số hạn chế: Khó khăn trong việc nhận dạng giọng nói tuỳ vùng miền
1.1.2.2 Nghiên cứu về sử dụng tiếng nói để điều khiển thiết bị gia dụng
- Giới thiệu: Dự án này của nhóm tác giả trường Đại học Bách khoa, Đại học ĐàNẵng phát triển nhằm phát triển hệ thống tự động nhận dạng giọng nói sử dụngtiếng Việt để điều khiển các thiết bị trong nhà và trong văn phòng như: quạt, đèn,máy lạnh và quay số điện thoại [24]
- Các đặc trưng của dự án:
+ Điều khiển hệ thống tự động bằng việc ra lệnh bằng giọng nói rất tốt
+ Độ chính xác trong nhận dạng lên tới 92%
- Một số hạn chế: Khó khăn trong việc nhận dạng giọng nói tuỳ vùng miền
1.1.2.3 Ứng dụng nhận dạng tiếng nói trong việc lồng tiếng phụ đề vào các chương trình truyền hình trực tiếp
- Giới thiệu: Ứng dụng được Trung tâm Thông tin Khoa học và Công nghệnghiên cứu và phát triển nhằm nhận dạng tiếng nói tạo thành phụ đề tiếng Việtcho video [25]
- Các đặc trưng của dự án:
+ Độ chính xác trong nhận diện tiếng nói rất tốt
+ Giảm thời gian, công sức cho việc viết phụ đề tiếng Việt
1.1.2.4 Một số ứng dụng, phần mềm về nhận dạng tiếng nói khác
- “Việt Command Trợ lí ảo Việt Nam”: Ứng dụng sử dụng Google API trên “Chợứng dụng” của hệ điều hành Android, nhận dạng tiếng Việt để giúp người dùng điềukhiển một số chức năng của điện thoại bằng giọng nói tiếng Việt như: Mở ứng
Trang 21dụng, mở web, gọi điện, nhắn tin, tìm kiếm Wiki, tìm đường trên Google maps, báothức bằng giọng nói.
- “Dịch giọng nói - Translator”: Ứng dụng sử dụng Google API bán trên “Chợ ứngdụng” của hệ điều hành Android, nhận dạng tiếng nói giúp người sử dụng dịch từ ngônngữ này sang ngôn ngữ khác qua văn bản được nhận dạng tiếng nói của người dùng
Trên đây là một số phần mềm ứng dụng, đề tài nghiên cứu khoa học về việcnhận dạng tiếng nói trong và ngoài nước em đã tìm hiểu và nhận thấy việc nghiêncứu, phát triển các đề tài, ứng dụng về nhận dạng tiếng nói đã và đang được quantâm rất nhiều Trên thực tế, các đề tài, phần mềm ứng dụng đã mang lại nhiều lợiích to lớn cho xã hội
Ngoài ra, còn rất nhiều các đề tài, ứng dụng về nhận dạng tiếng nói, điều khiển
tự động, xử lý tín hiệu thành công khác mà em chưa có thời gian để tìm hiểu thêm
1.2 Giới thiệu về hệ thống 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 conngười Quá trình này được thực hiện từ việc thu tín hiệu tiếng nói từ micro đến việchiển thị từ, chữ, văn bản đã được nhận dạng
Việc nghiên cứu nhận dạng tiếng nói được thực hiện từ những năm 1940 tớinay đã phát triển, hiện đại hoá và được áp dụng mọi lĩnh vực như điều khiển, tựđộng hoá, tìm kiếm… thậm chí ứng dụng cho cả các đồ chơi cho trẻ em
Phân loại các hệ thống nhận dạng tiếng nói sẽ giúp chúng ta có một cái nhìntrực quan hơn Có 3 phương pháp nhận dạng tiếng nói phổ biến [10]:
- Phương pháp âm học - ngữ âm học
- Phương pháp nhận dạng mẫu
- Phương pháp sử dụng trí tuệ nhân tạo
Hệ thống nhận dạng tiếng nói được chia làm hai nhóm: Nhóm được sử dụngvới mục đích điều khiển thiết bị thông qua giọng nói và nhóm sử dụng nhằm xử lý
từ tiếng nói sang văn bản (hình 1.4) [16]
Trang 22Hình 1.4: Sơ đồ phân loại hình thức nhận dạng tiếng nói
1.3 Giới thiệu về tiếng nói, tiếng Việt
Tiếng nói là một loại sóng âm, khi nói, tiếng nói được truyền đi mang theothông tin dưới dạng các dao động cùng phương truyền đến tai người nhận Mức độtruyền tin của tiếng nói được xem là nhanh nhất trong các khả năng tự nhiên củacon người [5]
1.3.1 Các đặc trưng của tiếng nói
Đặc trưng của sóng âm gồm các đặc tính sinh lý, vật lý như: cường độ, tần
số, biên độ, năng lượng, âm sắc, độ cao, độ to… [14], [15]
Số lượng từ sử dụng thường xuyên trong giao tiếp hàng ngày của một ngườidao động trong khoảng từ 2000 đến 3000 từ Số từ sử dụng trung bình khoảng 5000đến 10000 Số âm tiết được sử dụng vào khoảng 6700
Nghiên cứu về nhận dạng tiếng nói chủ yếu xem xét đến tần số, biên độ.Tiếng nói có tần số cơ bản nằm trong khoảng 80 - 8000 Hz
Nhận dạng tiếng nói
Điều khiển
Thời gian thực
Thời gian không thực
Không tiếp xúc
Phát
âm liên tục
Phát
âm rời rạc
Phát
âm rời rạc
Trang 23Trong chuỗi tiếng nói, có thể dễ dàng nhận thấy có các khoảng trống đượcchèn vào giữa các đoạn có tiếng nói thực sự so với khoảng thời gian tổng cộng giữachuỗi âm được gọi là tỷ số tiếng nói
Khi tăng tốc độ nói, khoảng trống giữa các tiếng bị giảm nhiều và ngược lại,khi giảm tốc độ nói thì các khoảng trống giữa các từ bị dãn ra
Đặc điểm của tín hiệu tiếng nói là tín hiệu chậm biến đổi theo thời gian, haycòn được gọi là “quasi - stationary”, hình 1.5 thể hiện điều này Khi xem xét mộtkhoảng thời gian đủ ngắn, khoảng từ 5 - 100ms, tính chất gần như là ổn định Cóthể thấy điều đó ở hình 1.6 Tuy nhiên, trong một khoảng thời gian dài, tính chấtcủa nó bị thay đổi, phản ánh những âm thanh khác nhau được nói
Hình 1.5: Đồ thị tín hiệu tiếng nói trong thời gian dài
Hình 1.6: Đồ thị tín hiệu tiếng nói trong thời gian ngắn
Trong xã hội, tiếng nói đã được các nhà khoa học nghiên cứu dưới nhiều góc
độ khác nhau và đã cho thấy tiếng nói nói chung và tiếng nói tiếng Việt nói riêng là
vô cùng phức tạp
Trang 24Chính vì thế, nhận dạng tiếng nói để áp dụng vào CNTT là điều thực sự cầnthiết song đó cũng là bài toán vô cùng hóc búa mà từ trước nay con người đangquan tâm
Để áp dụng được việc thông dịch các ngôn ngữ khác nhau trên thế giới, giaotiếp giữa người và máy, nhận dạng tiếng nói trong việc điều tra tội phạm, chuyểnđổi tệp tin ghi âm cho phóng viên… đều phải sử dụng đến nhận dạng tiếng nói Do
đó, các nhà khoa học, các lập trình viên trên thế giới đã nghiên cứu, viết nên cácchương trình nhận dạng tiếng nói phục vụ cho việc nêu trên
Tuy trên thế giới, có nhiều công cụ, phần mềm đã làm được việc này nhưng
ở Việt Nam, rất ít các nhà khoa học, lập trình viên tạo ra được một công cụ ưu việt
có thể nhận dạng được tiếng nói tiếng Việt Chính vì thế, nhận dạng tiếng Việt đã vàđang là vấn đề mới được các nhà khoa học ở Việt Nam nghiên cứu chuyên sâu hơn
Xác định được tầm quan trọng của nhận dạng tiếng nói tiếng Việt trongnhiều lĩnh vực, em thấy cần phải học hỏi, tìm hiểu về âm thanh, tiếng nói tiếng Việt
1.3.2 Quá trình phát âm và bộ máy phát âm
- Khí được đẩy từ phổi qua vòm họng ra miệng phát thành âm
- Khi dây thanh quản rung tạo ra các xung âm thanh và phát ra tiếng kêu(voiced sound)
- Nếu dây thanh quản không rung nhưng mở liên tục tạo ra âm câm (Unvoice)
- Khi nói hình dạng vòm họng, thanh quản thay đổi tạo ra các âm khác nhau
- Hình dạng vòm họng thay đổi chậm trong khoảng từ 10 đến 100ms
- Lượng khí từ phổi đẩy ra xác định âm lượng phát ra
Mặc dù tiếng nói của mỗi người, mỗi quốc gia khi phát ra là khác nhau songtrên nguyên lý cơ bản, cách tạo ra tiếng nói đều có điểm chung và điểm riêng Cácđiểm riêng biệt khác nhau này là một thuộc tính quan trọng để có thể nhận dạng tốtđược các loại tiếng nói
Trang 251.3.3 Một số đặc điểm khi tìm hiểu về tiếng nói
Môi trường phát âm để nhận dạng là một yếu tố quan trọng trong nhận dạng
âm thanh Với môi trường yên tĩnh thì hiệu quả nhận dạng cao nhưng với môitrường ồn ào, pha lẫn tạp âm thì hiệu quả nhận dạng thấp, đôi lúc không thể nhậndạng được
Ngữ pháp của tiếng nói cũng là một vấn đề phức tạp trong nhận dạng, vớimỗi quốc gia đều có kiểu nói và ngữ pháp của ngôn ngữ khác nhau Do đó, để nhậndạng tốt với mỗi tiếng nói là rất phức tạp
Hệ thống nhận dạng tiếng nói độc lập hay phụ thuộc vào người nói đượcdùng để thực hiện học và nhận dạng cho một người nói Hệ thống này nhận dạng cóhiệu quả tương đối cao so với hệ thống nhận dạng độc lập với người nói vì khi học
sẽ dùng nhiều mẫu học của nhiều người nói khác nhau và khi nhận dạng cũng phảinhận dạng nhiều người nói Tuy nhiên, ở kiểu nhận dạng phụ thuộc người nói cónhược điểm là phải học lại mẫu khi nhận dạng với một người nói Cả hai kiểu nhậndạng trên đều được dùng khi nhận dạng tiếng nói
Hệ thống nhận dạng từ đơn được học với các đơn vị nhỏ nhất của phát âmhay còn gọi là các âm tiết Ở kiểu nhận dạng này người nói phải nghỉ với mộtkhoảng thời gian dài giữa hai phát âm Công việc phát hiện ra điểm đầu và điểmcuối của một phát âm tạo ra một khung bao của phát âm để nhận dạng Khi từ điểncho nhận dạng phát âm từ đơn quá lớn, chúng ta phải cấu trúc lại cách học với kiểudùng chung các phát âm của một từ
Nhận dạng phát âm liên tục là một hệ thống nhận dạng phức tạp được dùng đểnhận dạng các phát âm liên tục, ở hệ thống này thời gian nghỉ giữa hai âm vị là tươngđối ngắn, các nói tự nhiên trong thực tế là một mô hình của cách phát âm liên tục
Ở hệ thống nhận dạng này, đầu tiên phải có khả năng xác định được các khungbao của các phát âm, sau đó hệ thống nhận dạng phải biểu hiện các đặc tính của tínhiệu phát âm để nhận dạng Với hệ thống nhận dạng các phát âm liên tục không nhấtthiết yêu cầu nhiều mẫu của nhiều người nói mà điểm mạnh của nó thể hện qua thuật
Trang 26toán nhận dạng với các đặc trưng quan trọng nhất của một phát âm Nhận dạng phát
âm liên tục là hệ thống được dùng nhiều trong các ứng dụng trong thực tế
Nhận dạng tiếng nói kết nối là một kiểu nhận dạng phát âm liên tục với bộ từđiển nhận dạng nhỏ Ở kiểu nhận dạng này câu phát âm được cắt ra thành các phát
âm nhỏ, hệ thống nhận dạng các phát âm cắt ra sau đó được ghép nối lại
1.4 Ngữ âm tiếng Việt
1.4.1 Khái niệm ngữ âm tiếng Việt
Lời nói của con người là một chuỗi âm thanh được phát ra kế tiếp nhau trongkhông gian và thời gian Việc phân tích chuỗi âm thanh ấy người ta nhận ra đượccác đơn vị của ngữ âm [14]
Chuỗi lời nói của con người được chia ra thành nhiều đoạn nhỏ như câu, từ,cụm từ và cuối cùng là âm tiết Âm tiết là đơn vị phát âm nhỏ nhất, không phânchia được nữa dù nói chậm đến đâu mà vẫn giữ đúng ý nghĩa âm tiết đó
Mỗi âm tiết bao gồm nhiều yếu tố ngữ âm tạo thành và các yếu tố ngữ âmhầu như phát âm cùng lúc để tạo nên đúng âm tiết đó Bên cạnh đó, người ta cònxem âm tiết bao gồm nhiều yếu tố đoạn tính là các yếu tố có giới hạn phân đoạntrong âm tiết như phụ âm, vần, âm đệm và các yếu tố siêu đoạn tính, các yếu tố màkhông giới hạn trong âm tiết như ngữ điệu, thanh điệu Đặc điểm riêng của âm tiếttiếng Việt là đơn âm và có thanh điệu
1.4.2 Cấu trúc âm tiết
Âm tiết là đơn vị phát âm nhỏ nhất mà cho dù ta có phát âm chậm đến mấy đinữa cũng không thể tách ra thành các phần nhỏ hơn được [14], [15]
1.4.2.1 Cấu trúc âm tiết năm thành phần
Theo ngôn ngữ học, một âm tiết tiếng Việt được cấu tạo từ năm thành phần:
Âm đầu; Âm đệm; Âm chính; Âm cuối; Thanh điệu
Chúng ta có thể viết cấu trúc của một âm tiết theo cách tiếp cận 5 thành phầnnhư sau: Âm tiết = [Âm đầu][Âm đệm]<Âm chính>[Âm cuối][Thanh điệu]
Trang 27Trong đó những thành phần nằm trong cặp dấu <> là bắt buộc, những thành
phần nằm trong cặp dấu [] thì có thể có hoặc không Ví dụ một số âm tiết 5 thành
phần của tiếng Việt minh hoạ như sau:
Bảng 1.1: Cấu trúc âm tiết 5 thành phần
Âm tiết Các thành phần cấu tạo thành âm tiết
o
1.4.2.2 Cấu trúc âm tiết ba thành phần
Chúng ta có thể phân tích một âm tiết thành ba thành phần sau:
Trang 28Bảng 1.2: Cấu trúc âm tiết 3 thành phần
Âm tiết Các thành phần cấu tạo thành âm tiết
Tổ hợp âm giữa ói
o
Tổ hợp âm giữa o
Âm đầu gồm có 27 loại như sau: b, c, ch, d, đ, g, gh, h, k, kh, l, m, n, ng, ngh,
nh, p, ph, q, r, s, t, th, tr, v, x, âm khuyết.
Tổ hợp âm giữa có số lượng rất lớn, tổ hợp âm giữa sẽ được cập nhật trong quátrinh học văn bản của chương trình
Ví dụ một số tổ hợp âm giữa là: a, ai, au, ay, e, eo, i, ia, iai, iày, iá, iáo
Âm cuối gồm có 9 loại như sau: c, ch, m, n, ng, nh, p, t, âm khuyết.
Trong cấu trúc âm tiết 3 thành phần thì tổ hợp âm giữa là thành phần bắt buộcphải có, nó là thành phần chính cấu tạo nên âm tiết
Dựa trên cấu trúc âm tiết 3 thành phần chúng ta thấy một tổ hợp âm giữa thì có thể ghép với một số âm đầu và một số âm cuối nhất định, điều này có thể minh họa
Trang 29Những âm đầu, tổ hợp âm giữa, âm cuối tô đậm là có thể ghép với nhau để tạo
thành âm tiết như: chươm, chươn, chương, cươm, cươn, chương, gươm, gươn,
gương
1.4.2.3 Thanh điệu
Tiếng Việt có 6 loại dấu bao gồm: "ngang, sắc, huyền, hỏi, ngã, nặng" Các
dấu này luôn đi kèm cùng với nguyên âm để tạo ra âm
Hình 1.7: Thanh điệu trong tiếng Việt
Cách phát âm các loại dấu:
Ngang: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn
thêm dấu sau đó nén luồng hơi lại Kết thúc bằng cách phát âm đó bằng cách đẩyhơi qua cổ họng mà không rung dây thanh quản và kéo dài, thu được âm códấu ngang (hình 1.7) Với thanh điệu ngang, tần số cơ bản không thay đổi
Trang 30Sắc: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn thêmdấu sau đó nén luồng hơi lại Kết thúc bằng cách mở rộng môi miệng sang hai phíatrên và dưới thật nhanh mà không rung dây thanh quản, thu được âm có dấu sắc(hình 1.7).
Với dấu sắc, tần số cơ bản tăng dần Nếu gọi F 0 là tần số tương ứng với âm
không dấu, thì sự thay đổi tần số cơ bản của dấu sắc có thể được mô tả như sau: F 0
-20, F 0 -20, F 0 -15, F 0 -10, F 0 -5, F 0 +5, F 0 +30, F 0 +70, F 0 +80
Huyền: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn
thêm dấu sau đó nén luồng hơi lại Kết thúc bằng cách phát âm đó bằng cách đẩyhơi qua cổ họng mà dây thanh quản bị rung, thu được âm có dấu huyền (hình 1.7)
Với dấu huyền, tần số cơ bản giảm dần Nếu gọi F 0 là tần số tương ứng với
âm không dấu, thì sự thay đổi tần số cơ bản của dấu huyền có thể được mô tả như
sau: F 0 , F 0 -10, F 0 -20, F 0 -30, F 0 -50, F 0 -60
Hỏi: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn thêm
dấu sau đó nén luồng hơi lại Kết thúc bằng cách mở rộng môi miệng sang hai phíatrên, dưới thật nhanh mà dây thanh quản bị rung, thu được âm có dấu hỏi (hình 1.7)
Nếu gọi F 0 là tần số tương ứng với âm không dấu, thì sự thay đổi tần số cơ
bản của dấu hỏi có thể được mô tả như sau: F 0 -30, F 0 -15, F 0 -20, F 0 -35, F 0 -55, F 0
-70, F 0 -75, F 0 -85, F 0 -90,F 0 -95, F 0 -90, F 0 -80, F 0 -90, F 0 -30.
Ngã: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn thêm
dấu sau đó nén luồng hơi lại Kết thúc bằng cách giữ nguyên hàm trên và thả hàmdưới thật nhanh kết hợp với phát âm mà dây thanh quản bị rung, thu được âm códấu ngã (hình 1.7)
Nếu gọi F 0 là tần số tương ứng với âm không dấu, thì sự thay đổi tần số cơ
bản của dấu ngã có thể được mô tả như sau: F 0 , F 0 -40, F 0 +20, F 0 +50, F 0 +60
Nặng: Được phát âm bằng cách để môi miệng ở nguyên âm mà ta muốn thêm
dấu sau đó nén luồng hơi lại Kết thúc bằng cách giữ nguyên hàm trên và thả hàm thậtnhanh mà không rung dây thanh quản, thu được âm có dấu nặng (hình 1.7)
Trang 31Dấu kết hợp được với toàn bộ 6 nguyên âm chính Khi kết hợp với cácnguyên âm khác nhau ta thu được âm khác nhau.
Nếu gọi F 0 là tần số tương ứng với âm không dấu, thì sự thay đổi tần số cơ bản
của dấu nặng có thể được mô tả như sau: F 0 , F 0 , F 0 -35, F 0 -50, F 0 -90, F 0 -120, F 0 -140.
Từ ghi nhận thanh điệu bằng thiết bị khoa học và tiến hành phân tích, cácnhà ngôn ngữ học đã có thể chỉ ra ba thuộc tính chủ yếu của thanh điệu:
- Sự biến điệu hay đường nét (Contour)
- Âm vực (Pitch)
- Kiểu phát âm (Phonation)
Về mặt đường nét, thanh điệu tiếng Việt có thể chia ra làm hai loại lớn làthanh điệu đi ngang, bằng phẳng và thanh điệu không bằng phẳng Cụ thể, thanhbằng có thanh ngang và thanh huyền là những thanh mà khi phát âm, âm thanh đingang Trong nhóm thanh bằng này, thanh ngang có âm vực hay tần số âm thanhcao hơn thanh huyền thanh trắc bao gồm bốn thanh còn lại là sắc, hỏi, ngã, nặng,
có đường nét và kiểu phát âm phức tạp
Về cao độ hay âm vực, hai thanh sắc và ngã thuộc âm vực cao, hỏi và nặngthuộc âm vực thấp Về đường nét, ngã và sắc đều hướng lên, hỏi thì xuống rồi lên,còn nặng thì theo hướng xuống Về cách phát âm, cả bốn đều phát âm căng, hỏikhông có động tác nghẽn thanh hầu Còn ngã, sắc và nặng đều có động tác nghẽnthanh hầu
Như vậy sắc và ngã khá giống nhau, chỉ còn khác duy nhất là sắc có điểmkhởi đầu thấp và liên tục đi lên, còn ngã có điểm khởi đầu cao hơn, hướng lênnhưng bị đứt quãng ở giữa chừng do tác động của nghẽn hầu họng (Glottal stop).Điều này khiến cho ngã là thanh điệu khó phát âm nhất trong tiếng Việt
Bảng 1.4: Phân loại thanh điệu trong tiếng Việt
Trang 32Thấp Huyền Hỏi Nặng
1.5 Lý do chọn đề tài và bài toán nhận dạng
Hiện nay, trên thế giới và cả ở trong nước có rất nhiều đề tài về vấn đề nhậndạng, chuyển đổi tiếng nói sang văn bản Hầu hết, các đề tài đó đã đưa ra được rấtnhiều ứng dụng được đánh giá rất cao Song, em vẫn lựa chọn đề tài này vì các ứngdụng chuyển đổi tiếng nói tiếng Việt sang văn bản còn khá khiêm tốn, đặc biệt là ởtrên các thiết bị di động thông minh
Trong đề tài này, em đã áp dụng, tận dụng mã nguồn mở và hệ thống nhậndạng công nghệ điện toán đám mây của Google để thiết kế, xây dựng chương trìnhứng dụng sử dụng trên hệ điều hành Android nhằm đáp ứng được nhu cầu sử dụngthiết bị di động thông minh, bắt kịp thời đại hiện đại hoá hiện nay
1.6 Kết luận chương 1
Trong lời nói, âm tiết tiếng Việt bao giờ cũng thể hiện khá đầy đủ, rõ ràng, đượctách và ngắt ra thành từng đoạn riêng biệt Trong tiếng Việt, âm tiết không chỉ là mộtđơn vị ngữ âm đơn thuần mà còn là một đơn vị từ vựng và ngữ pháp chủ yếu Mốiquan hệ giữa âm và nghĩa trong âm tiết cũng rất chặt chẽ và thường xuyên như trong từcủa các ngôn ngữ Âu châu và đó chính là một nét đặc trưng loại hình chủ đạo của tiếngViệt Mô hình âm tiết tiếng Việt không phải là một khối không thể chia cắt mà là mộtcấu trúc Cấu trúc âm tiết tiếng Việt là một cấu trúc hai bậc ở dạng đầy đủ nhất gồm 5thành tố, mỗi thành tố có một chức năng riêng
Chương 1 là cái nhìn tổng quan về các đề tài nhận dạng, kiến thức về tiếngnói, ngữ âm tiếng Việt căn bản cơ sở cho việc tiếp tục nghiên cứu ở các chương tiếptheo của luận văn
Trang 33CHƯƠNG 2: PHÂN TÍCH DỮ LIỆU TIẾNG NÓI
Việc phân tích tiếng nói là vấn đề vô cùng quan trọng, quyết định đến kếtquả xử lý tiếng nói Phân tích tiếng nói tốt sẽ giúp trích rút được các đặc trưng cơbản của tiếng nói để phục vụ cho việc nhận dạng
2.1 Cấu trúc tập tin âm thanh
RIFF là một định dạng tập tin cho phép lưu trữ nhiều loại dữ liệu, các loại dữliệu đa phương tiên cơ bản như âm thanh (audio) hay hình ảnh, phim (video) Đặcđiểm của những tập tin thuộc chuẩn RIFF là sẽ nhóm nội dung của tập tin thành cáckhối riêng biệt và mỗi một khối sẽ gồm một header (dùng để qui định kiểu và kíchthước của khối ) và các byte dữ liệu Định dạng này dựa trên 2 thành phần chính làchunks và sub-chunks Mỗi chunk sẽ có kiểu riêng biệt và được thể hiện bằng cáctag có độ dài 4 kí tự Chunk được mở đầu cho mỗi tập tin, bao gồm kích thước củachink và sau đó là nội dung của chunk [3], [4], [5], [16]
Một số định dạng file nằm trong chuẩn RIFF là: Audio/visual interleaveddata (.AVI), Waveform data (.WAV), Bitmapped data (.RDI), MIDI information(.RMI), Color palette (.PAL), Multimedia movie (.RMN), Animated cursor (.ANI),
A bundle of other RIFF files (.BND)
Tập tin Wave là một dạng tập tin dùng để lưu trữ dữ liệu âm thanh số (dạngsóng) và tập tin này là một trong những định dạng phổ biến nhất của hệ điều hànhWindows, thuộc chuẩn RIFF Thông thường thì tập tin Wave có 2 dạng là dạng nén
và dạng không nén (dạng chuẩn) Trong công nghệ ghi âm, định dạng Wave thườngđược dùng để thu âm thanh dạng thô sau đó sẽ được xử lí và chuyển đổi sang cácđịnh dạng khác
Cấu trúc file wave gồm 3 khối: Khối mô tả dạng RIFF, khối thuộc tính “fmt“
và khối dữ liệu “data” Trong đó khối thuộc tính “fmt” và khối dữ liệu “data” là 2khối con của khối mô tả dạng RIFF
Trang 34Hình 2.1: Sơ đồ mô tả cấu trúc các trường thông tin của Wave
a Khối mô tả dạng RIFF: Khối này xác định dạng RIFF và có kích thước là 12
Data
File offset
byte
ChunkSizeFormat
Khối mô tả RIFF
Khối mô tả thuộc tính fmt
Khối dữ liệu Data
Field name Field size
Trang 35Chức năng: chứa chuỗi “WAVE”.
b Khối thuộc tính fmt: Khối này xác định các thuộc tính của dữ liệu âm thanh và
có kích thước là 24 byte gồm các trường:
Trang 36Chức năng: Cho biết số byte của 1 mẫu gồm tất cả các kênh.
BitsPerSample: Cho biết số bit trên 1 mẫu chỉ tính cho 1 kênh.
Trang 37Data: Trường data chứa các byte dữ liệu âm thanh và các byte dữ liệu này sẽ
nhóm thành các mẫu,mỗi mẫu có 1 hoặc 2 kênh Tùy vào số kênh của mộtmẫu(xác định bởi trường NumChannels) và số bit trên 1 kênh (xác định bởitrường BitsPerSample) mà ta sẽ xác định được số byte của 1 mẫu
Bảng 2.2: Bảng thông tin về dữ liệu
STT Giá trị Số bit/kênh Kích thước 1 mẫu Max Min
Trang 38Hình 2.2: Mô tả cấu trúc các trường dữ liệu Wave
2.2 Các kỹ thuật tiền xử lý tiếng nói
2.2.1 Các đơn vị cơ bản tiếng nói
Các đơn vị cơ bản của tín hiệu tiếng nói bao gồm: Tần số lấy mẫu, tần số cơbản, Formant, biên độ và nhiễu [13], [16]
Tần số lấy mẫu: Bản chất của âm thanh là các sóng âm Đây là tín hiệu tương
tự Để có thể biểu diễn âm thanh trong máy tính và áp dụng các kỹ thuật xử lý tínhiệu số thì bước đầu tiên là phải chuyển đổi các tín hiệu tương tự thành các dãy số.Quá trình này được thực hiện bằng cách lấy mẫu tín hiệu âm thanh theo một tần sốlấy mẫu thích hợp (tần số lấy mẫu là số mẫu lấy trong một đơn vị thời gian)
Với tín hiệu tương tự x(t), chu kỳ lấy mẫu T (tần số lấy mẫu 1/T) thu được
dãy số:
X(n)=x(n*T) với -∞ < n < ∞ (2.1)
Trang 39Để đảm bảo quá trình số hoá không làm mất mát thông tin của phổ tín hiệu
thì tần số lấy mẫu Fs=1/T phải đủ lớn Giá trị đủ lớn của Fs phải tuân theo định lý
lấy mẫu: Tín hiệu liên tục theo thời gian có bề rộng phổ hữu hạn với tần số cao nhất
f Hz có thể được khôi phục một cách duy nhất từ các mẫu nếu quá trình lấy mẫu
được thực hiện với tốc độ Fs ≥ 2f mẫu trên một giây Đối với chuẩn của tệp âm
thanh thì tần số lấy mẫu thấp nhất là 8000Hz, điều này có nghĩa là quá trình số hóachỉ áp dụng với các tín hiệu tương tự có tần số cao nhất là 4000Hz phù hợp vớitiếng nói con người có tần số từ 40Hz-4000Hz
Formant: Còn gọi là các họa âm, đóng vai trò tạo nên âm sắc của âm thanh.Formant là giải tần số được tăng cường do hiện tượng cộng hưởng, đặc trưng cho
âm sắc của mỗi vần Trong mỗi dải tần như thế có một tần số được tăng cường hơn
cả và được gọi là đỉnh của Formant Một vần do người phát ra có nhiều Formant,trong số đó có 2 Formant ứng với hộp cộng hưởng miệng và hộp cộng hưởng yếthầu, các Formant khác đặc trưng cho giọng nói từng người
Tần số cơ bản: Sóng âm thanh do con người phát ra rất phức tạp Nó có dạng
đường cong phức tạp, có chu kỳ Khi phát ra một âm có tần số f1 thì con người cũng đồng thời phát ra âm có tần số 2f1, 3f1, 4f1 Âm có tần số f1 được gọi là âm cơ bản, tần số f1 được gọi là tần số cơ bản Các âm khác được gọi là các hoạ âm
(Formant) thứ nhất, hoạ âm thứ 2 Âm cuối cùng (âm nghe được) là âm tổng hợpcủa âm cơ bản và các hoạ âm Do đó đường biểu diễn của nó là một đường congphức tạp có tần số là tần số cơ bản
Biên độ: Là một đặc trưng quan trọng của sóng âm, đó là li độ lớn nhất củasóng âm so với vị trí cân bằng Sóng âm thanh khi thu vào máy tính sẽ được số hoáthành một chuỗi các số rời rạc với miền giá trị tuỳ theo độ phân giải, số kênh, tần sốlấy mẫu Độ phân giải được hiểu theo nghĩa là số bit được dùng để biểu diễn mộtmẫu thu được trong quá trình lấy mẫu Với độ phân giải 8bit, miền giá trị của cácmẫu là khoảng đóng [0,255]; độ phân giải 16 bit, miền giá trị này là khoảng đóng[0,65535] Do đó xác định chính xác biên độ của sóng là một bài toán khó và trênthực tế là không cần thiết phải giải quyết tuyệt đối chính xác Bài toán này thường
Trang 40được giải quyết bằng phương pháp giải gần đúng Trước hết xác định gần đúngngưỡng không, sau đó biên độ sẽ được tính bằng trị tuyệt đối hiệu của giá trị số hoátrừ đi giá trị của ngưỡng không Giá trị của ngưỡng không tuỳ thuộc vào từngSoundcard.
Nhiễu: Là một trong những yếu tố làm cho bài toán nhận dạng trở nên vôcùng phức tạp Nhiễu được xem xét như một đại lượng ngẫu nhiên, làm biến đổi tínhiệu cần nhận dạng Do đó, lọc nhiễu là một khâu cần thiết phải tiến hành trong quátrình tiền xử lý tín hiệu
2.2.2 Phương pháp trích chọn đặc trưng LPC
Phân tích dự báo tuyến tính là một trong những kỹ thuật phân tích tiếng nóiđược sử dụng rộng rãi Nó có thể tính toán hiệu quả các tham số như hàm diện tíchcủa tuyến âm và lưu trữ hoặc truyền thông tiếng nói với tỷ lệ lưu trữ nhỏ [13]
Phân tích dự báo tuyến tính dựa trên cơ sở mẫu tín hiệu y n sẽ được dự báo
bằng p mẫu tín hiệu trước nó
Gọi r(k) là giá trị tự tương quan của tín hiệu dời đi k mẫu:
)2(
)1(
.)0()3()2()1(
)2()1()
0()
1(
)1()2()
1()
0(
2 1
P r
r r
a
a a
r P
r P
r P
r
P r r
r r
P r r
r r
P
(2.3)
Hệ phương trình trên được giải bằng thuật toán Levinson-Durbin Tất cả các
hệ số LPC sẽ là đặc trưng của tín hiệu tiếng nói
2.2.2.1 Thuật toán Levinson - Durbin
Khởi tạo: p = 1