Tải bản đầy đủ (.doc) (19 trang)

HMM và ứng dụng HMM trong nhận dạng tiếng nói

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 (1.07 MB, 19 trang )

Computer Based Automatic Speech Processing

MỤC LỤC
Mục lục8
............................................................................... trang 1

1.
2.
3.
4.
5.

Giới thiệu.....................................................................................trang 2
MarKov Models (HM).................................................................trang 3
Hidden MarKov Models (HMM)- Mô hình Markov ẩn..............trang 5
Ba bài toán cơ bản của HMM......................................................trang 8
ứng dụng HMM trong tự động nhận dạng tiếng nói- ASR.......trang 17

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 1


Computer Based Automatic Speech Processing

1. Giới thiệu
Học thuyết về chuỗi Markov được phát triển vào những năm 1900. Mô hình
Markov ẩn phát triển vào cuối những năm 60 và được sử dụng rộng rãi trong
lĩnh vực nhận dạng tiếng nói vào những năm 1960-1970 và được đưa vào khoa
học máy tính năm 1989
Nhiều bài toán thực tế được biểu diễn dưới mối quan hệ nhân quả, nhưng chỉ


quan sát được phần quả còn phần nhân thì ẩn. HMM là một thuật toán cho phép
giải quyết các bài toán xác lập mối nhân quả cục bộ nói trên.
Mô hình Markov ẩn (Hidden Markov Model - HMM) là mô hình thống kê
trong đó hệ thống được mô hình hóa được cho là một quá trình Markov với các
tham số không biết trước.
Nhiệm vụ là xác định các tham số ẩn từ các tham số quan sát được, dựa trên
sự thừa nhận này. Các tham số của mô hình được rút ra sau đó có thể sử dụng để
thực hiện các phân tích kế tiếp.
Các ứng dụng phổ biến của mô hình Markov ẩn:
− Tin sinh học (bioinformatics): là một lĩnh vực
khoa học sử dụng các công nghệ của các ngành
toán học ứng dụng, tin học, thống kê, khoa học
máy tính, trí tuệ nhân tạo, hóa học và hóa sinh
(biochemistry) để giải quyết các vấn đề sinh học
− Xử lý tín hiệu, phân tích dữ liệu và nhận dạng
mẫu
− HMMs được dùng rất nhiều trong phân tích
ngôn ngữ: Nhận dạng tiếng nói (đối tượng quan
sát được: tín hiệu âm thanh, đối tượng ẩn: từ ngữ)
− Nhận dạng chữ viết tay (observed: kí hiệu, hidden: từ
ngữ)
− Phân loại và gán thẻ cho từ ngữ (Part-of-speech
tagging) (observed: từ ngữ, hidden: thẻ (danh từ, động từ,
từ…)
− Hệ thống dịch ngôn ngữ (observed: từ nước ngoài,
hidden: từ ngữ ứng với ngôn ngũ cần dịch)

HMM và ứng dụng HMM trong nhận dạng tiếng nói

tính


Trang 2


Computer Based Automatic Speech Processing
2. MarKov Models (HM):
Một dãy trạng thái ngẫu nhiên gọi là có thuộc tính Markov nếu như xác suất
chuyển sang trạng thái tiếp theo chỉ phụ thuộc vào trạng thái hiện tại và quá khứ.
Dãy chuyển trạng quan sát được được gọi là chuỗi Markov hay Xích
Markov. Dãy chuyển trạng không quan sát được gọi là mô hình Markov ẩn.
 Có N trạng thái: s1, s2 .. sN
Các bước thời gian rời rạc tương ứng: t=0, t=1, …
Tại bước thời gian thứ t, hệ thống ở một trong các trạng thái trên, gọi là qt.
Với qt ∈{s1, s2 .. sN }

Trạng thái hiện tại

N=3
t=0, qt=q0=s3

S
3

S
1

S
3

Giữa mỗi bước thời gian, trạng thái

tiếp theo được chọn một cách ngẫu nhiên.
Trạng thái hiện tại sẽ quyết định xác xuất
phân bố của trạng thái tiếp theo (thường
được kí hiệu bằng vòng cung kết nối các
trạng thái).
Trạng thái qt+1 độc lập có điều kiện với
{ qt-1, qt-2, … q1, q0 }, được đưa ra bởi qt.
P(A) là xác suất trước hay xác suất bờ
P(A|B) là xác suất sau hay xác suất có
điều kiện, là xác suất xuất hiện A đối với
B( hay xác xuất chuyển tiếp từ B đến A)
Một chuỗi q được gọi là chuỗi Markov, để
thỏa thuộc tính của Markov, trạng thái tiếp
theo chỉ phụ thuộc vào trạng thái hiện tại
và không phụ thuộc vào trạng thái nào
trong quá khứ. Đây được gọi là mô hình
Markov bậc 1

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 3


Computer Based Automatic Speech Processing

Mô hình Markov bậc 2: là mô hình được tạo ra trên cơ sở trạng thái hiện tại
qt phụ thuộc và hai trạng thái liền kề trước đó

 Mô hình Markov đơn giản cho dự báo thời tiết
Thời tiết trong một ngày có thể rơi vào một trong ba trạng thái sau:

− S1: mưa
− S2: mây mù
− S3: nắng

S1
S1

A = {aij } =

S2

S3

S2

S3

 0.4 0.3 0.3 

÷
0.2
0.6
0.2

÷
 0.1 0.1 0.8 ÷



HMM và ứng dụng HMM trong nhận dạng tiếng nói


Trang 4


Computer Based Automatic Speech Processing
Vớ d : Xác suất vào (phù hợp model) để thời tiết trong 8 ngày nối tiếp
nhau là "0= mặt trời - mặt trời - ma - ma - mặt trời - có mây - mặt trời ?
Cách giải quyết
Chúng ta định nghĩa tuần tự việc quan sát, O nh :
O=
=

(nắng, nắng, nắng, ma,

ma,

nắng, mây, nắng )

(3,

Ngày 1

3,

3,

1,

1,


3,

2,

,3 )

2

3

4

5

6

7

8

ối nhau yêu cầu 1 bộ của điều kiện thời tiết ở trên kỳ 8 ngày và chúng ta
muốn tính toán P (O/ Model) xác suất của việc quan sát tuần tự O, da vo mụ
hỡnh d bỏo thi tit nh trờn. Chúng ta có thể trực tiếp gây ra P (O/ Model) nh :

0,4
A(aij ) = 02
0.1

0.3 0.3
0.6 0.2

0.1 0.8

P(O/Model) = P [3,3,3,1,1,3,2,3|Model]
= P [3]P[3|3]2P[1|3]P[1|1]
P[3|1]P[2|3]P[3|2]
= 3.(a33)2a31a11a13a32a23
= (1.0)(0.8)2(0.1)(0.4)(0.3)(0.1)(0.2)
= 1.536x10-4
ở õy chúng ta sử dụng
i = p [ q1 = i] 1 i N
3. Hidden MarKov Models (HMM)- Mụ hỡnh Markov n
Mụ hỡnh trc gi s rng mi trng thỏi cú th l duy nht tng ng vi
mt bng chng quan sỏt c.
Khi cú c mt quan sỏt, trng thỏi nhn c ca h thng s tr thnh
vụ giỏ tr(khụng cũn nhiu ý ngha s dng).
Mụ hỡnh ny quỏ hn ch gii quyt cỏc vn trong trong thc t.
xõy dng mt mụ hỡnh linh ng hn, chỳng ta gi s rng nhng quan
sỏt c ca mụ hỡnh l mt hm xỏc xut ca mi trng thỏi
HMM v ng dng HMM trong nhn dng ting núi

Trang 5


Computer Based Automatic Speech Processing
− Mỗi trạng thái có thể tạo ra một số đầu ra dựa trên phân bố xác xuất và
mỗi đầu ra riêng biệt có thể có khả năng được tạo ra bởi một trạng thái nào
đó.
− Mô hình Markov ẩn (HMM), bởi vì chuỗi trạng thái không thể quan sát
trực tiếp, nó chỉ có thể xấp xỉ gần đúng với các chuỗi quan sát được hệ thống
đưa ra.

Giả sử bạn có một máy bán nước ngọt tự động: nó có thể ở 2 trạng thái, chọn
cola (CP) và chọn iced tea (IP), nó chuyển trạng thái ngẫu nhiên sau mỗi lần
mua hàng, như sau:

NOT OBSERVABLE

Ma trận xác xuất
đầu ra

Có 3 đầu ra quan sát được : cola, iced Tea, lemonade
Như vậy mô hình Markov ẩn cho một máy bán nước ngọt tự động sẽ là

Ví dụ 1: dự báo thời tiết.
Các trạng thái có thể quan sát được: Lầy lội- ẩm ướt- khô- khô hanh
Các trạng thái ẩn: Nắng – mây mù- mưa

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 6


Computer Based Automatic Speech Processing

Ví dụ 2: nhận dạng tiếng nói

 Các thành phần của HMM
qt - Trạng thái ở thời điểm t.
ot= (ký hiệu) Quan sát tại thời điểm t.
π = {πi} Phân bố trạng thái ban đầu
A = {aij} Phân bố xác xuất chuyển trạng thái

B = {bik} Phân bố xác xuất kí hiệu quan sát được theo
trạng thái
HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 7


Computer Based Automatic Speech Processing

HMM được xác định bởi 5 thành phần

( S , O, Π, A, B)

1- Tập hợp các trạng thái ẩn: N: số trạng thái, St trạng thái tại thời gian t
S = {1, 2,..., N }

2- Tập hợp các kí hiệu quan sát được, M:số kí hiệu quan sát được
O = {o1 , o2 ,..., oM }

3- Phân bố trạng thái ban đầu

π = {π i }

π i = P( s0 = i) 1 ≤ i ≤ N

4- Phân bố xác xuất chuyển trạng thái

A = {aij }

aij = P ( st = j | st −1 = i ),


1 ≤ i, j ≤ N

5- Phân bố xác xuất kí hiệu quan sát được theo trạng thái
B = {b j (k )}

b j ( k ) = P ( X t = ok | st = j ) 1 ≤ j ≤ N ,1 ≤ k ≤ M

Tóm lại, các thành phần của HMM gồm:
− 2 tham số không đổi về kích cỡ: N và M (tổng số trạng thái và tổng số kí
hiệu quan sát được S,O)
− 3 tập hợp phân bố xác xuất: A, B, π
4. Ba bài toán cơ bản của HMM
− Bài toán 1: (Evaluation problem- Bài toán ước lượng)
Cho dãy quan sát O = (o1o2...oT ) và HMM - λ( hay Φ) hãy xác định xác suất
sinh dãy từ mô hình – P(O| λ).
− Bài toán 2: (Decoding problem- Bài toán giải mã)
Cho dãy quan sát O = (o1o2...oT ) và HMM-λ , hãy xác định dãy chuyển
trạng Q =(q1q2...qT ) cho xác suất sinh O lớn nhất (optimal path).Đây chính là bài
toán xác định dãy chuyển trạng thái gần đúng nhất Q =(q1q2...qT ) của mô hình
để tạo ra các quan sát O.
− Bài toán 3: (Learning problem- Bài toán huấn luyện)
Hiệu chỉnh HMM -λ để cực đại hoá xác suất sinh X – P(O|λ ) (tìm mô hình
“khớp” dãy quan sát nhất.)
 Bài toán 1: (Evaluation problem- Bài toán ước lượng)
HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 8



Computer Based Automatic Speech Processing
Cho dãy quan sát O = (o1o2...oT ) và HMM - λ( hay Φ) hãy xác định xác suất
sinh dãy từ mô hình – P(O| λ).
Để thực hiện bài toán này ta nghiên cứu thuật toán lan truyền xuôi –
Straightforward.
Để tính xác xuất gần đúng P(O| λ)của
chuỗi quan sát O = (o1o2...oT ) của
HMM-λ , cách dễ thấy nhất là lấy
tổng xác xuất của tất các các chuỗi
trạng thái:
Áp dụng giả thuyết Markov:

Áp dụng giả thuyết đầu ra độc lập:

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 9


Computer Based Automatic Speech Processing

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 10


Computer Based Automatic Speech Processing

Độ phức tạp thời gian: O(N2T)
Độ phức tạp không gian: O(NT)

 Thuật toán truyền xuôi ngược
Cho các thông số ntruyền ngược như bảng dưới

Vậy ta có:

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 11


Computer Based Automatic Speech Processing

 Bài toán 2: Thuật toán Viterbi(Decoding problem)
Cho dãy quan sát O = (o1o2...oT ) và HMM-λ , hãy xác định dãy chuyển
trạng Q =(q1q2...qT ) cho xác suất sinh O lớn nhất (optimal path).Đây chính là bài
toán xác định dãy chuyển trạng thái gần đúng nhất Q =(q1q2...qT ) của mô hình
để tạo ra các quan sát O.
Mục tiêu của bài toán này là ta đi tìm giá trị maxP(Q|O,λ) khi đã có được
chuỗi quan sát O = (o1o2...oT ) và HMM-λ.
Quy trình thực hiện thuật toán Viterbi thực hiện như sau:
- Dãy quan sát O = (o1o2...oT ) và HMM-λ

- Ứng với dãy chuyển đổi trạng thái Q =(q1q2...qT ), Xác suất quan sát O =
(o1o2...oT ) và HMM-λ là

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 12



Computer Based Automatic Speech Processing

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 13


Computer Based Automatic Speech Processing

Quy trình:

 Bài toán 3: Thuật toán Baum-Welch(Learning problem)
Hiệu chỉnh HMM -λ để cực đại hoá xác suất sinh Q – P(O|λ ) (tìm mô hình
“khớp” dãy quan sát nhất.)

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 14


Computer Based Automatic Speech Processing

K vng tỡm c dóy chuyn trng thỏi Q theo P(O| )

Để miêu ta lại quá trình tham số HMM, đầu tiên chúng ta phải định nghĩa
t (i,j), khả năng i tại thời điểm t và j tại điểm (t + 1) đa ra dạng và chuỗi.

HMM v ng dng HMM trong nhn dng ting núi

Trang 15



Computer Based Automatic Speech Processing
t (i) là khả năng i tại điểm t là 1 chuỗi quan sát hoàn toàn và là 1 dạng.
Chúng ta có thể nối t (i) với t(i,j) bằng cách tính qua j

5. ng dng HMM trong t ng nhn dng ting núi- ASR
HMM v ng dng HMM trong nhn dng ting núi

Trang 16


Computer Based Automatic Speech Processing
Những yếu tố ảnh hưởng đến ASR
- Tình huống khác nhau
- Kiểu khác nhau: nhận dạng từ riêng biệt dễ hơn nhận dạng một chuỗi từ,
nhận dạng đọc dễ hơn nhận dạng hội thoại
- Người nói nói khác nhau: speaker-independent VS speaker-dependent
- Môi trường khác nhau: nhiễu nền
Nhiệm vụ của nhận dạng tiếng nói là nhận đầu vào sóng âm thanh và đầu ra
là chuỗi của các từ.

Với một chuỗi âm thanh nhận được O = (o1o2...on )
Nhiệm vụ của ASR là tìm ra chuỗi W = (w1w2...wn ) từ tương ứng có xác
xuất posterior P(W|O)

Acoustic Model

Language
Model


Cấu trúc của một mô hình nhận dạng tiếng nói đơn giản

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 17


Computer Based Automatic Speech Processing

Mô hình thông dụng nhất dùng cho tiếng nói là constrained (miễn cưỡng),
cho phép một trạng thái chuyển đổi thành chính nó hoặc thành một trạng thái
khác

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 18


Computer Based Automatic Speech Processing

HMM và ứng dụng HMM trong nhận dạng tiếng nói

Trang 19



×