Tải bản đầy đủ (.pdf) (71 trang)

(Luận văn thạc sĩ) Nghiên cứu về nhận dạng tiếng nói ứng dụng vào điều khiển xe lăn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.18 MB, 71 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

HÀ THỊ THU GIANG

NGHIÊN CỨU VỀ NHẬN DẠNG TIẾNG NÓI
ỨNG DỤNG VÀO ĐIỀU KHIỂN XE LĂN

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

THÁI NGUYÊN - 2017


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

HÀ THỊ THU GIANG

NGHIÊN CỨU VỀ NHẬN DẠNG TIẾNG NÓI
ỨNG DỤNG VÀO ĐIỀU KHIỂN XE LĂN
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01

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ũ Việt Vũ

THÁI NGUYÊN - 2017


i


LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Nghiên cứu về nhận dạng tiếng nói ứng
dụng vào điều khiển xe lăn” là công trình nghiên cứu của riêng tôi, các kết quả

nghiên cứu được trình bày trong luận án là trung thực, khách quan và chưa
từng dùng bảo vệ để lấy bất kì học vị nào. Trong phần kiến thức chung,
nghiên cứu giải thuật áp dụng tôi có tham khảo ở một số tài liệu và đã có trích
dẫn đúng và đầy đủ. Nếu sai tôi hoàn toàn chịu trách nhiệm trước hội đồng
khoa học và trước pháp luật.
Thái Nguyên, tháng 11 năm 2017
Tác giả luận văn

Hà Thị Thu Giang


ii
LỜI CẢM ƠN
Đầu tiên, em xin bày tỏ lòng biết ơn chân thành tới thầy Vũ Việt Vũ,
người đã tận tình hướng dẫn và tạo mọi điều kiện thuận lợi để em hoàn thành
luận văn này.
Em cũng xin cảm ơn sự dạy dỗ và giúp đỡ nhiệt tình của tất cả các quý
thầy cô tại trường đại học Công Nghệ Thông Tin và Truyền Thông Thái
Nguyên. Tất cả các kiến thức mà em được truyền đạt sẽ là hành trang quí giá
trên con đường học tập, làm việc và nghiên cứu sau này.
Em xin chân thành cảm ơn!
Thái Nguyên, tháng

năm 2017

Tác giả luận văn


Hà Thị Thu Giang


iii

MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................... i
LỜI CẢM ƠN ............................................................................................................ ii
MỤC LỤC ................................................................................................................. iii
DANH MỤC TỪ VIẾT TẮT ......................................................................................v
DANH MỤC CÁC BẢNG........................................................................................ vi
DANH MỤC CÁC HÌNH ........................................................................................ vii
MỞ ĐẦU .....................................................................................................................1
Chương 1 .....................................................................................................................3
TỔNG QUAN VỀ NHẬN DẠNG TIẾNG NÓI ........................................................3
1.1 Tổng quan về lĩnh vực xử lý tiếng nói ...............................................................3
1.1.1. Tiếng nói là gì? ...........................................................................................3
1.1.2. Biểu diễn tín hiệu tiếng nói ........................................................................3
1.1.3. Các bài toán trong lĩnh vực xử lý tiếng nói ................................................6
1.2. Nhận dạng tiếng nói ..........................................................................................7
1.2.1. Khái niệm nhận dạng tiếng nói ..................................................................7
1.2.2 Tổng quan về bài toán nhận dạng................................................................9
1.2.3. Các bước xử lý trong bài toán nhận dạng tiếng nói .................................11
1.3. Các khó khăn gặp phải trong nghiên cứu về nhận dạng tiếng nói ..................14
1.4. Nghiên cứu về nhận dạng tiếng nói ở Việt Nam ............................................15
1.5. Ứng dụng ........................................................................................................16
1.6. Kết luận ...........................................................................................................16
Chương 2 ...................................................................................................................17
NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP NHẬN DẠNG TIẾNG NÓI ..............17

2.1. Mô hình Markov ẩn (Hidden Markov Model - HMM) ..................................17
2.1.1. Chuỗi Markov...........................................................................................17
2.1.2. Mô hình Markov ẩn ..................................................................................18
2.1.3. Tính Likelihood: thuật toán Forward .......................................................21
2.1.4. Thuật toán Viterbi cho bài toán giải mã ...................................................25
2.1.5. Học trên mô hình Markov ẩn: Thuật toán Forward-Backward ................27


iv
2.2. Mạng Nơ ron nhân tạo ....................................................................................28
2.2.1. Cấu trúc mạng Nơron ...............................................................................28
2.2.2. Mạng Nơ ron lan truyền thẳng một lớp ....................................................30
2.2.3. Mạng Nơ ron lan truyền thẳng nhiều lớp .................................................31
2.2.4. Học trong mạng Nơ ron nhiều lớp ...........................................................32
2.2.5. Học xây dựng cấu trúc mạng nơ ron ........................................................33
2.3. Mô hình âm học ..............................................................................................34
2.3.1. Mô hình toán học của hệ thống nhận dạng ..................................................34
2.3.2 Đơn vị huấn luyện cho Tiếng Việt................................................................34
2.4. Mô hình ngôn ngữ...........................................................................................35
2.5. Kết luận ...........................................................................................................36
Chương 3 ...................................................................................................................37
MÔ PHỎNG HỆ THỐNG ĐIỀU KHIỂN XE LĂN BẰNG TIẾNG NÓI ...............37
3.1. Giới thiệu ........................................................................................................37
3.2. Giới thiệu về hệ thống xe lăn và quy trình điều khiển ....................................39
3.2.1. Giới thiệu về các thành phần chính của xe lăn .........................................39
3.2.2. Quy trình điều khiển hoạt động của xe lăn...............................................39
3.3. Nhiệm vụ và chức năng của hệ thống .............................................................40
3.3.1. Nhiệm vụ của hệ thống .............................................................................40
3.3.2. Chức năng của hệ thống ...........................................................................40
3.4. Thiết kế hệ thống điều khiển xe lăn ................................................................40

3.4.1. Phần mềm, thư viện và CSDL nhận dạng. ...............................................40
3.4.2. Các bước của giải thuật điều khiển xe lăn................................................41
3.4.3. Thiết kế phần mềm ...................................................................................43
3.5. Chạy thử ..........................................................................................................51
KẾT LUẬN ...............................................................................................................52
Những kết quả đã đạt được .............................................................................52
Hướng phát triển tiếp theo của đề tài ..............................................................52
TÀI LIỆU THAM KHẢO .........................................................................................54


v

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

FFT

-

Fast Fourier Transform

DFT

-

Digital Fourier Transform

ADC

-


Analog Digital Converter

MFCC

-

Mel Frequency Cepstrum Coeffient

LPC

-

Linear Prediction Coding

PCA

-

Principle Components Analysis

HMM

-

Hidden Markov Model

NNs

-


Neural Networks

BP

-

Back Propagation

ICA

-

Independent Component Analysis

DC motor

-

Dirrect Current

DCT

-

Discrete Cosine Transform



vi


DANH MỤC CÁC BẢNG
Bảng 1.1. Chất lượng của một số hệ thống nhận dạng ..................................... 9
Bảng 3.1. Ví dụ về tập dữ liệu huấn luyện ...................................................... 30


vii

DANH MỤC CÁC HÌNH
Hình 1.1 Biểu diễn tín hiệu tiếng nói dạng sóng theo thời gian ....................... 4
Hình 1.2. Phổ tín hiệu tiếng nói ........................................................................ 5
Hình 1.3. Biểu diễn tín hiệu tiếng nói bằng spectrogram ................................. 5
Hình 1.4. Các bài toán ứng dụng trong lĩnh vực xử lý tiếng nói ...................... 6
Hình 1.5. Tổng quan về một hệ thống nhận dạng tiếng nói .............................. 7
Hình 1.6. Ví dụ về việc lấy lấy mẫu theo các khung ...................................... 13
Hình 1.7. Các bước trong quá trình trích chọn đặc trưng theo phương
pháp MFCC trong đó FFT là biến đổi Fourrier nhanh, Power
Spectrum là phổ công suất của tín hiệu và DCT là biến đổi
cosin rời rạc. .................................................................................... 13
Hình 1.8. Giao diện của phần mềm iSago....................................................... 15
Hình 2.1. Mô hình học có giám sát ................................................................. 10
Hình 2.2. Ví dụ về chuỗi Markov biểu diễn trạng thái thời tiết ...................... 17
Hình 2.3. Ví dụ về mô hình Markov ẩn .......................................................... 20
Hình 2.4. Minh họa quá trình tính toán theo thuật toán Forward. .................. 23
Hình 2.5. Minh họa việc tính giá trị của t(j) ................................................. 24
Hình 2.6 Thuật toán Forward .......................................................................... 24
Hình 2.7 Thuật toán Viterbi ............................................................................ 26
Hình 2.8. Ví dụ về thuật toán Viterbi .............................................................. 27
Hình 2.9 Mô hình toán học cho một Nơ ron. .................................................. 28
Hình 2.10. Ví dụ về hàm kích hoạt ngưỡng cứng (a) trong đó
threshold(z) với đầu ra là 0 hoặc 1 và (b) hàm logistic với

Logistic( z ) 

1
. ........................................................................... 29
1  ez

Hình 2.11. Ví dụ về mạng Nơ ron hồi quy...................................................... 30
Hình 2.12. Mạng perceptron với hai đầu vào và hai đầu ra ............................ 31


viii
Hình 2.13. Mạng Nơ ron với hai đầu vào, một lớp ẩn và hai đầu ra. ............. 31
Hình 2.14. Thuật toán Back-Propagation........................................................ 33
Hình 3.1. Xe lăn thông minh tại phòng thí nghiệm của Đại học Texas
(Mỹ) ................................................................................................ 37
Hình 3.2. Xe lăn điều khiển bằng giọng nói đạt giải nhất cho sinh viên tại
Việt nam năm 2015 ......................................................................... 38
Hình 3.3. Xe lăn điều khiển bằng giọng nói của tác giả và nhóm nghiên
cứu tại phòng thí nghiệm ................................................................ 38
Hình 3.4. Mô hình kế nối hệ thống chi tiết giữa module điều khiển của
xe lăn và điều khiển từ xa của điện thoại thông minh .................... 39
Hình 3.5. Lưu đồ thuật toán của hệ thống nhận dạng ..................................... 42
Hình 3.6. Sơ đồ khối của quá trình nhận dạng tiếng nói trong Sphinx-4 ....... 43


1
MỞ ĐẦU
Nghiên cứu về lĩnh vực xử lý tiếng nói đã thu hút nhiều nghiên cứu
trên thế giới trong những năm qua. Các bài toán của lĩnh vực xử lý tiếng
nói có thể kể đến như nghiên cứu về sự biểu diễn, lưu trữ và truyền tín

hiệu tiếng nói, tổng hợp tiếng nói, nhận dạng tiếng nói, nhận dạng người
nói, tăng cường chất lượng tín hiệu âm thanh. Ứng dụng của xử lý tiếng
nói cơ thể kể đến như trong y tế, giáo dục, hội thoại, dịch tự động, tìm
kiếm bằng tiếng nói, an ninh quốc phòng,...
Ở Việt nam trong những năm gần đây đã có một số nhóm nghiên cứu
về nhận dạng và xử lý tiếng Việt như nhóm nghiên cứu của Đại học Khoa học
Tự nhiên Thành phố Hồ Chí Minh, nhóm nghiên cứu của Viện Công nghệ
Thông tin – Viện Hàn lâm Khoa học và Công nghệ Việt nam,…Một số sản
phẩm về nghiên cứu và ứng dụng cũng đã được công bố tại Việt nam và cộng
đồng quốc tế.
Mục tiêu của đề tài là nghiên cứu bài toán nhận dạng tiếng nói, cụ thể
các phương pháp chính để nhận dạng tiếng nói như mô hình Markov ẩn,
phương pháp mạng Nơ ron. Phần thực nghiệm của đề tài tác giả tìm hiểu quy
trình xây dựng xe lăn điều khiển bằng tiếng nói, bước đầu nắm được quy trình
cũng như khai thác phần mềm mã nguồn mở để cài đặt hệ thống.
Nội dung của luận văn được cấu trúc thành 03 chương như sau:
Chương 1: Trình bày tổng quan về lĩnh vực xử lý tiếng nói như cách
thức biểu diễn tín hiệu tiếng nói, trích chọn đặc trưng, các ứng dụng của xử lý
tiếng nói cũng như một số khó khăn trong việc giải quyết các bài toán trong
lĩnh vực này.
Chương 2: Trình bày hai phương pháp cơ bản để nhận dạng tiếng nói
là phương pháp mô hình Markov ẩn và phương pháp mạng Nơ ron.


2
Chương 3: Trình bày kết quả thực nghiệm việc áp dụng bài toán xử lý
tiếng nói vào xây dựng hệ thống xe lăn. Cụ thể tác giả nghiên cứu quy trình
của việc điều khiển xe lăn bằng tiếng nói, cũng như sử dụng các phần mềm
mã nguồn mở để xây dựng một hệ thống cụ thể.



3
Chương 1
TỔNG QUAN VỀ NHẬN DẠNG TIẾNG NÓI
1.1 Tổng quan về lĩnh vực xử lý tiếng nói
1.1.1. Tiếng nói là gì?
Tiếng nói là một trong những phương tiện trao đổi thông tin cơ bản của
con người. Tiếng nói được tạo ra từ tư duy của con người, trung khu thần kinh
điều khiển hệ thống phát âm làm việc tạo ra âm thanh. Tiếng nói được phân
biệt với các âm thanh khác bởi các đặc tính âm học có nguồn gốc từ cơ chế
tạo tiếng nói. Về bản chất, tiếng nói là sự dao động của không khí có mang
theo thông tin. Các dao động này tạo thành những áp lực đến tai và được tai
phát hiện, phân tích và chuyển kết quả đến trung khu thần kinh. Lúc này tại
trung khu thần kinh, thông tin được tái tạo lại dưới dạng tư duy logic mà con
người có thể hiểu được.
Tín hiệu tiếng nói được tạo thành bởi các chuỗi các âm vị liên tiếp. Sự
sắp xếp của các âm vị được chi phối bởi các quy tắc của ngôn ngữ. Việc
nghiên cứu một cách chi tiết về những quy tắc này cũng như những khía cạnh
khác bên trong tiếng nói thuộc về chuyên ngành ngôn ngữ. Việc phân loại các
âm vị của tiếng nói thuộc về chuyên ngành ngữ âm học. Khi nghiên cứu các
mô hình toán học của cơ chế tạo tiếng nói, việc nghiên cứu về các âm vị là rất
cần thiết. Tóm lại khi nghiên cứu các vấn đề về xử lý tiếng nói chúng ta cần
phải nghiên những vấn đề về ngữ âm, ngôn ngữ học, xử lý tín hiệu,…
1.1.2. Biểu diễn tín hiệu tiếng nói
Tín hiệu tiếng nói là tín hiệu tương tự. Do đó khi biểu diễn tín hiệu
tiếng nói trong môi trường tính toán của tín hiệu số, việc biểu diễn và lưu trữ
sao cho không bị mất mát thông tin là vấn đề hết sức quan trọng trong các hệ
thống thông tin có sử dụng tín hiệu tiếng nói. Việc xem xét các vấn đề xử lý
tín hiệu tiếng nói trong các hệ thống này dựa trên ba vấn đề chính:



4

- Biểu diễn tín hiệu tiếng nói dạng số.
- Cài đặt các kỹ thuật xử lý.
- Các lớp ứng dụng dựa trên kỹ thuật xử lý tín hiệu số.
Biểu diễn tín hiệu tiếng nói theo dạng số chịu ảnh hưởng quan trọng của lý
thuyết lấy mẫu, theo đó các trạng thái của tín hiệu có dải tần giới hạn có thể
được biểu diễn dưới dạng các mẫu lấy tuần hoàn theo một chu kỳ cố định gọi
là chu kỳ lấy mẫu. Việc lấy mẫu này sẽ cung cấp cho hệ thống những mẫu tín
hiệu với tỷ lệ đủ lớn để xử lý. Tất cả các quá trình xử lý lấy mẫu được chỉ rõ
trong các tài liệu về xử lý tín hiệu số. Có nhiều phương pháp biểu diễn rời rạc
tín hiệu tiếng nói như biểu diễn dưới dạng sóng (hình 1.1), biểu diễn bằng phổ
tín hiệu (hình 1.2) hay bằng spectrogram (hình 1.3).
Phương pháp biểu diễn tín hiệu theo dạng sóng như bản thân tên của nó, được
xem xét đến với việc bảo mật thông tin theo cách thông thường là giữ nguyên
hình dạng sóng của tín hiệu tương tự sau khi đã qua các bước lấy mẫu và
lượng tử hoá tín hiệu.

Hình 1.1 Biểu diễn tín hiệu tiếng nói dạng sóng theo thời gian


5

Hình 1.2. Phổ tín hiệu tiếng nói

Hình 1.3. Biểu diễn tín hiệu tiếng nói bằng spectrogram
Trên phương diện khác, phương pháp biểu diễn tín hiệu theo tham số
được xem xét đến trên khía cạnh biểu diễn tín hiệu tiếng nói như đầu ra của
hệ thống tạo tiếng nói. Để thu được các tham số biểu diễn, bước đầu tiên của

phương pháp này lại thường là biểu diễn tín hiệu theo dạng sóng. Điều này có
nghĩa là tín hiệu tiếng nói được lấy mẫu và lượng tử hoá giống như phương
pháp biểu diễn tín hiệu tiếng nói dạng sóng, sau đó tiến hành xử lý để thu
được các tham số của tín hiệu tiếng nói của mô hình tạo tiếng nói nêu trên.


6
Các tham số của mô hình tạo tiếng nói này thường được phân loại thành các
tham số tín hiệu nguồn (có quan hệ mật thiết với nguồn của tiếng nói) và các
tham số của bộ máy phát âm tương ứng (có quan hệ mật thiết với giọng nói
của từng người).
Vì tiếng nói là tín hiệu liên tục nên để áp dụng các phương pháp xử lý
tín hiệu thì tiếng nói phải được biểu diễn dưới dạng rời rạc. Quá trình rời rạc
hoá tín hiệu tiếng nói bao gồm các bước sau:
- Lấy mẫu tín hiệu tiếng nói.
- Lượng tử hoá các mẫu với các bước lượng tử cụ thể.
- Mã hoá và nén tín hiệu.
1.1.3. Các bài toán trong lĩnh vực xử lý tiếng nói
Dựa trên cơ sở lựa chọn các cách biểu diễn tín hiệu và phương pháp xử
lý, đã có rất nhiều các ứng dụng quan trọng đã được triển khai. Hình 1.4 dưới
đây sẽ liệt kê các bài toán quan trọng của lĩnh vực xử lý tiếng nói:

Hình 1.4. Các bài toán ứng dụng trong lĩnh vực xử lý tiếng nói
Bản chất của xử lý tiếng nói chính là xử lý thông tin chứa trong tín hiệu
tiếng nói nhằm truyền, lưu trữ tín hiệu này hoặc tổng hợp, nhận dạng tiếng
nói. Các nghiên cứu được tiến hành để xử lý tiếng nói yêu cầu những hiểu biết
trên nhiều lĩnh vực ngày càng đa dạng: từ ngữ âm và ngôn ngữ học cho đến


7

xử lý tín hiệu... Trong khuôn khổ của luận văn này, tôi tập trung vào bài toán
nhận dạng tiếng nói và ứng dụng trong việc điều khiển xe lăn.
1.2. Nhận dạng tiếng nói
1.2.1. Khái niệm nhận dạng tiếng nói
Nhận dạng tiếng nói là quá trình nhận ra chuỗi từ tự động từ tín hiệu
tiếng nói bằng các hệ thống chương trình máy tính. Hệ thống nhận dạng tiếng
nói được thiết kế dựa trên thuật toán học máy có giám sát của lĩnh vực trí tuệ
nhân tạo. Cũng giống như các hệ thống học có giám sát khác chúng ta sẽ phải
có tập mẫu huấn luyện và sử dụng một trong các phương pháp học có giám
sát để giải quyết bài toán. Các thành phần cơ bản của hệ thống học máy được
chỉ ra trong hình 1.5. Về cơ bản chúng ta có hệ thống tín hiệu âm thanh đầu
vào và thông qua hệ thống nhận dạng đã được huấn luyện chúng ta sẽ có đầu
ra là các chuỗi từ dạng văn bản.

Hình 1.5. Tổng quan về một hệ thống nhận dạng tiếng nói
Hình 1.5 gồm có các chức năng chính như sau:


8
- Từ tín hiệu tiếng nói chúng ta phải tổng hợp, trích chọn đặc trưng tín
hiệu, xử lý nhiễu,… Công đoạn này áp dụng cho cả dữ liệu huấn luyện và dữ
liệu kiểm thử.
- Pha trích chọn đặc trưng thường dùng phương pháp MFCC để xây
dựng các vector đặc trưng.
- Tiếp theo có thể áp dụng mô hình Gausian cho mô hình ngữ âm để
tính xác suất khả dĩ (likelihood).
- Một mô hình Markov ẩn (HMM) được áp dụng cho bộ giải mã sử
dụng thuật toán Viterbi.
- Mô hình ngôn ngữ cung cấp thông tin cho ta tính xác suất trong mô
hình HMM.

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 ở đây 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 thiên 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.
Một số loại bài toán nhận dạng tiếng nói trên thực tế có thể kể đễn
như sau:
- Nhận dạng với số lượng từ vựng ít chẳng hạn yes, no, hay các số từ 0
đên 9 là nhiệm vụ dễ hơn cả, tuy nhiên nếu nhận dạng số lượng từ vựng lớn
chẳng hạn các từ trong các cuộc đàm thoại thì vấn đề sẽ khó khăn hơn rất
nhiều bởi số từ có thể lên đến hàng chục nghìn.


9
- Nhận dạng các từ độc lập (mỗi từ đều có khoảng lặng bao quanh) sẽ
dễ dàng hơn các từ liên tục chẳng hạn một bài phát biểu liên tục, một cuộc
hội thoại,…
- Vấn đề nhận dạng trong môi trường nhiễu: chẳng hạn nhận dạng trong
các nơi công cộng như nhà ga, bến xe, trên đường phố,…
- Vấn đề cuối cùng là giọng nói: ví dụ nhận dạng người nước ngoài nói
tiếng Việt, người nói giọng địa phương,…
Bảng 1.1 trình bày kết quả của một số hệ thống nhận dạng tiếng nói.
Chúng ta có thể thấy rằng với hệ thống nhận dạng gồm các con số đơn giản
thì tỷ lệ đạt được là 99.5%, tuy nhiên với các hệ thống nhận dạng các từ nói
liên tục, hàng ngày, bất kỳ thì tỷ nhận dạng đúng chỉ có thể đạt được là 80%.

Bảng 1.1. Chất lượng của một số hệ thống nhận dạng
Bài toán
Nhận dạng chữ số

Số lượng từ

Tỷ lệ chính xác
(%)

11

99.5

5.000

97

20.000

97

Các chương trình truyền hình tin tức

64.000

90

Các cuộc đàm thoại

64.000


80

Nhận dạng các bài đọc trên báo
Wall Street
Nhận dạng các bài đọc trên báo
Wall Street

1.2.2 Tổng quan về bài toán nhận dạng
Nhận dạng đối tượng là lớp bài toán được quan tâm nghiên cứu rất
nhiều trong thực tế. Các ứng dụng của nó có thể kể như nhận dạng mặt người,
nhận dạng chữ, nhận diện đồ vật, nhận dạng tiếng nói. Các bài toán nhận dạng
xuất hiện ở khắp nơi từ khi có sự ra đời của máy tính kèm theo các kỹ thuật
để giải quyết các bài toán như vậy. Để giải quyết lớp các bài toán nhận dạng
trên thực tế chúng ta sử dụng phương pháp học có giám sát.


10
Học có giám sát (supervised learning) là một trong những chủ đề quan
trọng trong lĩnh vực trí tuệ nhân tạo; đi kèm với học có giám sát chúng ta còn
có học không giám sát và học nửa giám sát. Bài toán học có giám sát được
phát biểu như sau:
Cho tập X = {xi}, i = 1, 2,… , N với xi diễn tả một đối tượng trong
không gian d chiều. Với mỗi xi tương ứng có nhãn là yi với yi  {C1, C2, …,
CM} hoặc yi  R. Mục tiêu của bài toán học có giám sát là đi xây dựng hàm
f(.) dựa trên các bộ (xi, yi) sao cho hàm f có khả năng xác định nhãn cho một
đối đượng xnew nào đó.
Mô hình tổng quát của bài toán học có giám sát được minh họa bởi
hình 2.1. Từ các dữ liệu thu thập được chúng ta qua các khâu như tiền xử lý
dữ liệu (làm sạch, lọc), tiếp đến là trích chọn đặc trưng rồi đưa vào cho thuật

toán học để huấn luyện được bộ phân lớp. Trong khi kiểm thử hệ thống chúng
ta cũng có các bước như từ dữ liệu kiểm thử chúng ta cũng phải làm sạch,
trích chọn đặc trưng rồi mới đưa vào hệ thống để thu được kết quả đầu ra.
Học có giám sát tức là học từ các mẫu thu thập được sau đó nhận dạng hay
phân lớp cho mẫu mới, nó khác với bài toán học không giám sát - không có
mẫu học ban đầu mà chỉ có dữ liệu cần giải quyết.
Training

x1, x2,…,xn

x
n

y
Classifier: f(.)

e
w

i

?

Hình 2.1. Mô hình học có giám sát
Chúng ta cũng lưu ý rằng khái niệm học máy ở đây được hiểu là phát
triển các thuật toán cài đặt trên máy tính để dạy cho máy tính học và giải


11
quyết các bài toán giống như cách giải quyết của con người trong một khía

cạnh nào đó và trong một lĩnh vực cụ thể nào đó. Học máy đôi khi chúng ta
còn gọi là học thống kê vì lý do chúng ta sử dụng các bộ dữ liệu thu thập
được qua việc áp dụng các phương pháp thống kê.
Các thuật toán học có giám sát tiêu biểu trong thực tế hiện nay có thể
kể đến như: phương pháp mô hình Markov ẩn (HMM), phương pháp dựa trên
lý thuyết xác suất Bayes, phương pháp Support Vector Machine (SVM),
phương pháp mạng Nơ ron, phương pháp cây quyết định, phương pháp
Principle Component Analysis (PCA),… Mỗi phương pháp có những ưu và
nhược điểm riêng cũng như phù hợp cho các ứng dụng theo lĩnh vực.
Trong phần tiếp theo của chương này, tôi lựa chọn hai phương pháp là
HMM và phương pháp mạng Nơ ron cho việc nghiên cứu và tìm hiều cũng
như phân tích ưu nhược điểm của nó.
1.2.3. Các bước xử lý trong bài toán nhận dạng tiếng nói
Để nhận dạng tiếng nói chúng ta phải dùng công cụ của học máy, cụ
thể là phương pháp học có giám sát. Các công đoạn cơ bản gồm tiền xử lý
dữ liệu, trích chọn đặc trưng, huấn luyện hệ thống nhận dạng và kiểm thử
hệ thống.
Dưới đây là chi tiết các bước của một hệ thống nhận dạng bất kỳ.
Bước 1: Tiền xử lý dữ liệu
- Bước 1: Tiền xử lý (Pre - processing): Tín hiệu lời nói tương tự được
lấy mẫu và lượng tử bằng cách sử dụng ADC ở dạng số. Tỷ lệ lấy mẫu và bit
lượng tử là các tham số chính được đặt tối ưu để tránh méo gập do lấy mẫu và
để có được giá trị chính xác của các mẫu được số hóa. Giảm âm nhiễu và
khoảng lặng (Silence and noise removal): Thu âm thanh bằng micro, đưa vào
máy tính.Trong các tín hiệu ghi lại, một số phần không chứa bất kỳ thông tin
nào, đó là những khoảng lặng. Do đó cần loại bỏ những phần khoảng lặng để


12


giảm dữ liệu không cần thiết. Âm nhiễu là loại âm thanh không phải tiếng nói
sinh ra trong môi trường xung quanh ta. Không dễ gì lọc được nhiễu, chỉ tìm
cách tối thiểu hóa chúng. Bên cạnh đó, giọng nói có sự suy giảm khoảng
20db/decade khi lên tần số cao do đặc điểm sinh lý của hệ thống phát âm của
conngười. Bước xử lý này sẽ tăng cường tín hiệu lên một giá trị gần
20db/decade để khắc phục sự suy giảm này. Hai phương pháp được sử dụng
để xác định các điểm đầu - cuối của tiếng nói là: Năng lực ngắn hạn (Short Term Energy) và Thông số ngưỡng zero ngắn hạn (Short - Term zero
Crossing).
Bước 2: Trích chọn đặc trưng tiếng nói bằng phương pháp MFCC
Pha trích chọn đặc trưng là pha quan trọng, mục đích của pha này là
chuyển đổi tín hiệu tiếng nói thành các vector đặc trưng chứa âm thanh liên
quan đến âm thanh của câu nói được phát ra. Với hệ thống nhận dạng tiếng
nói thì các đăch trưng ngữ âm phải có ba tính chất cơ bản sau đây:
- Có khả năng phân biệt tốt các tiếng nói có phát âm giống nhau.
- Cho phép xây dựng các mô hình thống kê mà không đòi hỏi quá nhiều
dữ liệu huấn luyện.
- Có tính bất biến đối với các giọng nói khác nhau, cũng như môi
trường thu âm.
Trên thực tế cả ba tính chất trên đều khó tồn tại đồng thời, trong lĩnh
vực nhận dạng chúng ta thường sử dụng các đặc trưng theo phương pháp
đường bao phổ MFCC (Mel Frequency Cepstral Coefficient). Các hệ thống
nhận dạng thường tách các tín hiệu thành các đoạn độ dài từ 5- 15 ms, mỗi
đoạn gọi là một khung. Mỗi khung sẽ thu được một vector và toàn bộ dãy tín
hiệu sẽ là một tập vector.


13

Hình 1.6. Ví dụ về việc lấy lấy mẫu theo các khung
Việc tính giá trị đặc trưng theo phương pháp MFCC được giải thích

qua sơ đồ trong hình 1.7.

Hình 1.7. Các bước trong quá trình trích chọn đặc trưng theo phương pháp
MFCC trong đó FFT là biến đổi Fourrier nhanh, Power Spectrum là phổ
công suất của tín hiệu và DCT là biến đổi cosin rời rạc.
Hiện nay một số nghiên cứu nhằm tăng chất lượng nhận dạng tiếng nói
bằng cách bổ sung thêm các đặc trưng khác chẳng hạn như có khả năng chịu
nhiễu, giải quyết một số nhược điểm của biến đổi Fourrier, giảm phụ thuộc
vào ngữ âm và ngôn ngữ,...
Bước 3: Xây dựng hệ thống nhận dạng tiếng nói


14

Một hệ thống nhận dạng tiếng nói nhằm nhận ra các từ từ tín hiệu tiếng
nói. Sau khi đã có dữ liệu đầu vào chúng ta phải dựa trên tập dữ liệu huấn
luyện, mô hình ngữ âm, mô hình từ vựng và mô hình ngôn ngữ để tìm kiếm
kết quả. Hạt nhân quan trọng chúng ta phải dùng ở đây là một phương pháp
học máy có giám sát thường là mô hình Markov ẩn, mô hình mạng Nơ ron,...
Bước 4: Kiểm thử hệ thống nhận dạng
Bước kiểm thử nhận dạng nhằm kiểm tra xem hệ thống nhận dạng cho
kết quả chính xác như thế nào. Nội dung kiểm tra sẽ từ đơn giản đến phức tạp,
chảng hạn kiểm tra các từ đơn, các chuỗi từ có giọng đọc giống như các dữ
liệu huấn luyện, các giọng đọc địa phương, người nước ngoài,...
1.3. Các khó khăn gặp phải trong nghiên cứu về nhận dạng tiếng nói
Nghiên cứu về nhận dạng tiếng nói đến thời điểm này vẫn luôn chứa
đựng những vấn đề khó khăn phải vượt qua. Cụ thể các khó khăn có thể kể
đến như sau:
- Sự biến động của người nói trong việc phát âm:
 Tiếng nói thay đổi theo thời gian, theo độ tuổi,

 Mang tính chất địa phương,
 Thay đổi theo tình trạng sức khỏe, một người khi khỏe mạnh sẽ
phát âm khác so với lúc bị ốm,
 Đa dạng về cách biểu cảm: cú pháp, ngữ nghĩa, diễn thuyết, tốc
độ nói,
 Từ mới, trật tự từ khi nói.
- Ảnh hưởng của ngoại cảnh
 Nhiễu, tiếng ồn của môi trường xung quanh,
 Chất lượng của thiết bị ghi âm,
 Khoảng cách từ miệng người nói đến thiết bị ghi âm.


×