III.2 HUẤN LUYỆN VÀ CHO ĐIỂM HMM III.2.1 Các tiêu chuẩn huấn luyện

Một phần của tài liệu Nhận dạng ký tự viết tay (Trang 33 - 43)

CHƯƠNG III: CƠ SỞ LÝ THUYẾT VỀ MARKOV ẨN

III.2 HUẤN LUYỆN VÀ CHO ĐIỂM HMM III.2.1 Các tiêu chuẩn huấn luyện

III.2.1 Các tiêu chuẩn huấn luyện

Tất cả các phương pháp huấn luyện và cho điểm được phác hoạ ở đây dựa trên tiêu chuẩn xác suất cực đại – ML (Maximun Likelihood). Cho trước một dãy

huấn luyện của các quan sát, một mô hình bắt đầu với các tham số ban đầu, sau đó được ước lượng một cách lặp lại sao cho xác suất mà mô hình đưa ra những huấn luyện tăng. Khi xác suất đạt đến cực đại, quá trình huấn luyện dựng. Tối ưu xác suất cực đại tiêu chuận được cho bởi:

= (2)

trong đó , v= 1,2,…,V chỉ các HMM khác nhau và Ov là dãy huấn luyện cho mô hình . Tuy nhiên, ta sẽ chỉ ra rằng tiếp cận ML không tối ưu một cách cần thiết khi tín hiệu được lấy mẫu không tuân theo những ràng buộc của HMM hoặc ngược lại các tham số của HMM khó ước lượng được một cách đáng tín cậy – có lẽ do dữ liệu không đầy đủ. Trong trường hợp này, những tiêu chuẩn huấn luyện khác có thể cải tiến hiệu suất của hệ thống.

Tiêu chuẩn thông tin tương hỗ cực đại – MMI (Maximun Mutual Information) dành cho trường hợp trong đó một số mô hình được thiết kế và mục tiêu là cực đại khả năng của mỗi mô hình để phân biệt giữa các dãy quan sát tự phát sinh và các dãy được phát sinh bởi các mô hình khác.

Một khả năng có thể thi hành tiêu chuẩn MMI là:

= (4)

Cách này nhằm mục đích phân biệt chính xác mô hình từ tất cả các mô hình khác trên dãy huấn luyện . Bằng cách tính tổng tất cả các dãy huấn luyện, tập phân biệt nhất không khả thi vì cần các thủ tục tối ưu tổng quát. Lớp HMM của Krogh là một tổng quát hóa của tiêu chuẩn MMI. Lớp này bao gồm một HMM với một phân bố output trên các nhãn lớp công việc phát ra (emission). Quá trình huấn luyện tối ưu xác suất gán nhãn, có thể được xem như huấn luyện giám sát.

Một tiêu chuẩn huấn luyện khác giả thiết rằng tín hiệu được mô hình không cần thiết phải được sinh ra từ nguồn Markov. Một lời giải thông tin phân biệt cực đại – MDI (Maximum Discrimination Information) sẽ cực tiểu entropi chéo (cross entropy) giữa tập hợp các mật độ xác suất của tín hiệu hợp lệ và tập hợp các mật độ xác suất của HMM. Dưới đây là một số lời giải cho các bài toán đã được nêu ở phần trước.

III.2.2 Giải thuật tiến – lùi (forward-backward algorithm)

Giải thuật tiến lùi đã được xem là cơ sở cho những lời giải đối với ba bài toán của mô hình Markov ẩn. Thuật toán này bao gồm việc tính toán hai biến,

biến tiến i(i) và biến lùi i(i) là các hàm biểu thị thời gian và trạng thái. Bài toán 1 có thể được giải quyết sử dụng biến tiến, tìm xác suất để mô hình mô hình đưa ra một dãy quan sát. Bài toán 2, tìm trạng thái có khả năng nhất của hệ thống tại mỗi khoảng thời gian, mà có thể nhận được từ thuật toán. Một thủ tục có thể được sử dụng làm lời giải cho bài toán 3.

Biến tiến i(i) biểu diễn xác suất của một dãy quan sát riêng phần O0,O1, …, Oi được quan sát trong khi mô hình đang ở trong trạng thái Si tại thời điểm t. Có N trạng thái được định nghĩa cho mô hình trong đó qi là trạng thái mà nó đang đứng và có thể sinh ra bất kỳ một trong K ký hiệu quan sát Oi ở mỗi khoảng thời gian t, t=0,1,2,… T-1

i(i) = P[O0O1…Oi, qi = Si] (5) Phương trình này có thể được giải bằng quy nạp.

Giá trị khởi đầu:

0(j) = (Oi) 0 N (6)

Bước quy nạp tiếp theo:

i+1(j) = []bj(Oi+1) 0 T-2 0 N (7)

Giá trị kết thúc:

P[O|] = (8)

Biến lùi i(i) biểu diễn xác suất của dãy quan sát từng phần được quan sát từ thời điểm t đến khi kết thúc. Nó được cho khi mô hình đang ở trong trạng thái Si vào thời điểm t:

i(i) = P[Oi+1Oi+2…| qi = Si] (9) Một lần nữa, phương trình này có thể được giải bằng quy nạp. Giá trị ban đầu có thể chọn tùy ý:

(i) = 1 0 N (10)

Bước quy nạp tiếp theo:

(i) = = (11)

Hình 3 minh họa tính toán tiến lùi với biểu đồ lưới mắt cáo. Mắt cáo là một đồ thị có hướng trong đó cá nút biểu diễn các trạng thái của mô hình và các cung biểu diễn tất cả các trạng thái có thể của mô hình trong một khoảng thời gian. Các cột được sắp xếp theo thời gian tăng lên từ trái sang phải.

Hình 3a. Sơ đồ lưới cho 3 trạng thái kết nối đầy đủ

Hình 3b. Thao tác cơ bản của tính toán tiến

Hình 3: Biểu đồ lưới minh họa tính toán tiến lùi. Có 3 trạng thái liên thông đầy đủ được biểu diễn bởi lưới dạng mắt cáo, như một đường đi được minh họa từ mỗi trạng thái đến tất cả các trạng thái khác nhau trong mỗi bước thời gian. Hoạt động cơ bản được trình bày như sau: giá trị của mỗi được tính cho trạng thái bằng cách lấy tổng cho tất cả các trạng thái i, nhân với xác suất biến đổi , sau đó nhân với xác suất phát ra (Oi+1)

Quá trình tìm kiếm dãy các trạng thái mà mô hình có khả năng đi qua nhất để đưa ra dãy quan sát có thể được thực hiện theo một số cách. Để tìm trạng thái có xác suất cực đại qi tại thời điểm t đòi hỏi định nghĩa một biến i(i) khác:

i(i) = (12)

qi = arg 0 t < T (13)

Biến này tìm trạng thái xác suất cao nhất vì i(i) tính xác suất của dãy quan sát từng phần O0, O1, …, Oi và trạng thái Si tại thời điểm t trong khi i(i) tính

những quan sát còn lại được cho trong trạng thái ở thời điểm t. Hệ số chuẩn hóa trên mẫu số làm cho biến này là một độ đo xác suất.

Dù tìm kiếm trạng thái có khả năng nhất tại mỗi thời điểm là một cách tiếp cận có thể chấp nhận được với các mô hình liên thông đầy đủ, nó có thể đạt các kết quả mâu thuẫn nhau với các mô hình trong đó không phải tất cả các biến đổi đều được phép. Bởi vì ước lượng một trạng thái riêng lẻ qi không xem xét nó có hợp lệ hay không trong ngữ cảnh của trạng thái được ước lượng tại những vị trí thời gian kề nhau. Thuật toán Viterbi, được trình bày chi tiết trong phần sau cho phép ước lượng dãy các trạng thái đạt xác suất cực đại, sẽ là một tiếp cận khác cho bài toán ước lượng trạng thái này.

III.2.3 Ước lượng lại tham số - Giải thuật Baum-Welch

Những phương trình ước lượng lại của Baum-Welch được sử dụng để đưa ra một ước lượng tốt hơn cho các tham số từ mô hình hiện thời. Ước lượng mô hình là một hệ thống đóng sao cho quá trình huấn luyện được thực hiện trước khi nhận dạng. Một dãy quan sát huấn luyện được sử dụng để cải tiến một cách lặp lại đến khi xác suất mà mô hình đưa ra dãy quan sát đạt đến một cực đại mà tại điểm đó các tham số của mô hình hội tụ. Người ta đã chứng tỏ rằng sự hội tụ này ít nhất sẽ là một cực đại cục bộ của bề mặt tối ưu. Bởi vì bề mặt này phức tạp và có nhiều cực đại cục bộ, việc lựa chọn cẩn thận những giá trị ban đầu của các tham số là cần thiết để đảm bảo rằng các cực đại cục bộ này trên thực tế nằm trong một cực đại toàn cục.

Các phương trình ước lượng lại cho HMM rời rạc dựa trên việc đếm những lần xảy ra các biến cố. được ước lượng như số các biến đổi kỳ vọng từ trạng thái Si sang trạng thái Sj chia số các biến đổi kỳ vọng từ trạng thái Si. Cuối cùng, bj(k) được ước lượng như số lần kỳ vọng trong trạng thái Sj và ký hiệu quan sát k chia cho số lần kỳ vọng trong trạng thái Sj. = ().

Cần định nghĩa thêm một biến nữa, (i,j) là xác suất nằm trong trạng thái Si

tại thời điểm t và trạng thái Sj tại thời điểm t+1, cho trước mô hình và dãy quan sát.

ta có phương trình ước lượng như sau:

= tần số kỳ vọng ở trạng thái Si tại thời điểm t=0 (15)

= (i) (16)

= (kỳ vọng số dịch chuyển từ trạng thái Si sang trạng thái Sj) / (kỳ vọng số dịch

chuyển từ trạng thái Si) (17)

= (18)

(k) = (kỳ vọng số lần ở trạng thái Sj, ký hiệu quan sát k) / (số lần kỳ vọng ở trạng

thái Sj) (5.19)

= (20)

III.2.4 Các mô hình huấn luyện liên tục và bán liên tục

Với một mô hình mật độ hỗn hợp liên tục, những quan sát là những vector thực tế thay vì những ký hiệu rời rạc, và xác suất phát ra là:

bj() = (21)

trong đó F là một đoạn log-concave bất kỳ hoặc mật độ đối xứng dạng ellipse (Gausse) có vector trung bình và ma trận hợp biến covariance cho hỗn hợp thứ m trong trạng thái Sj.

Rabiner bày một phương pháp ước lượng lại tham số theo các dòng giống nhau tương tự như với mô hình rời rạc, ngoại trừ thay vì bj(k), các biến cjm, và phải được ước lượng lại. Ước lượng lại sự biến đổi trạng thái và các phân bố trạng thái ban đầu tương tự với dạng rời rạc. Rõ ràng các biến tiến và lùi được tính toán sử dụng mật độ phát ra ở dạng liên tục của nó trong trường hợp này. Để trình bày phương trình ước lượng lại cho các tham số phát ra, ta định nghĩa một biến tạm:

i(i,m) =[ | ] (22)

Đây là xác suất ở trạng thái Sj tại thời điểm t với thành phần hỗn hợp thứ m tính cho vector quan sát Oi. Tổng của biến này trên toàn bộ M hỗn hợp có dạng

i(j) được cho trong phương trình (12) cũng dùng cho trường hợp một hỗn hợp Bây giờ các phương trình ước lượng lại có thể được phát biểu theo giá trị

i(j,m):

= (24)

= (25)

Những phương trình này có thể được giải thích như sau: là tỷ lệ giữa số lần kỳ vọng mô hình trong trạng thái Sj sử dụng hỗn hợp thứ m và số lần kỳ vọng mô hình nằm trong trạng thái Sj. Phương trình tính số lần kỳ vọng mô hình nằm trong trạng thái Sj sử dụng hỗn hợp thứ m trong vector quan sát, đưa đến giá trị kỳ vọng của các vector quan sát được, tính bởi hỗn hợp thứ m. Một đối số tương tự dẫn đến kết quả .

Huang trình bày một phương thức ước lượng lại các tham số của mô hình và codebook chung cho trường hợp HMM bán liên tục. Một lần nữa công thức ước lượng lại và tương tự trường hợp rời rạc, với sự khác biệt là các biến tiến và lùi tính theo giá trị bj(k) được thay bởi giá trị bj() cho những quan sát liên tục .

Để ước lượng lại các tham số của codebook và các tham số phát ra của mô hình, ngoài biến , định nghĩa trong phương trình (12) cần thêm hai biến tạm khác:

(27)

là xác suất mô hình ở trong trạng thái Si tại thời điểm t với quan sát được lượng hóa thành mẫu tượng vk – nghĩa là xác suất mà codeword thứ k có thể sinh ra quan sát thứ t kết hợp với xác suất mà codeword thứ k có thể được quan sát trong trạng thái Si – cho trước quan sát và mô hình.

Bây giờ, các phương trình ước lượng lại có thể được phát biểu cho tham số mô hình bi(k) và các vector trung bình của codebook cùng với các ma trận hợp biến :

= (28)

= (29)

= (30)

Thuật toán Viterbi là phương pháp để ước lượng xác suất chuỗi trạng thái cực đại xác suất của mô hình đưa ra dãy các quan sát. Biến cho điểm xác suất của chuỗi quan sát O0, O1, …, Oi đã được đưa ra bởi dãy các trạng thái của mô hình có nhiều khả năng nhất, kết thúc ở trạng thái i vào thời điểm t. Biến lưu một bản tin (record) mà trạng thái cực đại hóa xác suất tại mỗi thời điểm sao cho khi một đường đi xác suất cực đại được xác định tại thời điểm T-1, mảng có thể được sử dụng để tìm ra dãy trạng thái.

Xác suất thu được bằng cách cực đại , khác với xác suất tìm thấy bằng cách tính tổng với mọi i. Giá trị đầu tiên là xác suất mà dãy trạng thái cực đại xác suất của mô hình có thể đưa ra những quan sát. Giá trị thứ 2 là xác suất mà tất cả các dãy trạng thái của mô hình có thể đưa ra những quan sát. Thường thì giá trị đầu là một xấp xỉ gần với giá trị sau.

Thuật toán Viterbi tìm dãy trạng thái tốt nhất có thể được trình bày như sau: 1) Khởi tạo: = , (31) = 0 2) Đệ qui: = bj(Ot), , (32) 3) Kết thúc: P* = (33) =

4) Lần ngược lại đường đi (dãy trạng thái):

= , i = T-2, T-3, … , 0 (34)

Cũng như khi tính toán biến tiến và lùi, trong trường hợp các mô hình liên tục và bán liên tục giá trị xác suất phát xạ rời rạc bj(Oi) được thay bằng giá trị mật độ xác suất liên tục thích hợp.

Hình 4a. Sơ đồ lưới cho 3 trạng thái kết nối đầy đủ

Hình 4b. Thao tác cơ bản của tính toán Viterbi

Hình 4: Biểu đồ lưới mắt cáo minh họa tính toán Viterbi. Mặc dù rất giống với giải thuật tiến lùi như minh họa trong hình (3) nhưng thao tác cơ sở thì lại khác: phép dò tìm cực đại thay thế phép tính tổng trong giải thuật tiến – lùi.

Hình 4. Minh họa tính toán của thuật toán Viterbi. Phần tính toán giả sử rằng mật độ quan sát là không cần bộ nhớ. Trong trường hợp này, với mọi con đường đi vào một trạng thái (được biểu diễn bởi một nút trong mắt cáo), tất cả đều có thể bị loại bỏ trừ một con đường có xác suất cao nhất. Điều này chỉ cho phép một con đường đi ra khỏi mỗi nút, so với N con đường đi vào, giữ cho độphức tạp không tăng theo cấp số nhân với thời gian.

Giải thuật Viterbi đối sánh một mô hình với một chuỗi quan sát theo cách tìm xác suất lớn nhất của chuỗi trạng thái ứng với mô hình sinh ra chuỗi quan sát này.

Giải thuật Level Building – LB hoạt động giống như VA nhưng nó đối sánh một chuỗi quan sát sinh ra bởi một số mô hình.

Mục đích của giải thuật LB là đối sánh các mô hình với chuỗi quan sát mà không cần phải phân đoạn chuỗi quan sát này ra thành các chuỗi con. Trong lĩnh vực nhận dạng tiếng nói, nó được sử dụng để nhận dạng các từ phát âm liên tục trong đó mỗi HMM đực sử dụng để biểu diễn một từ. Cách tiếp cận LB cho phép nhận dạng cụm từ mà không cần phân đoạn nó ra thành từng từ. Thực tế, giải thuật LB cực đại xác suất kết nối giữa phân đoạn và nhận dạng.

Tại mức l=0, mỗi mô hình được đối sánh với chuỗi quan sát tính từ thời điểm t=0. Các mô hình được giả thiết có cấu trúc trái-phải, bắt đầu ở trạng thái 0 và kết thúc ở trạng thái N-1. 1. Khởi tạo: = () (35) = (36) 2. Đệ qui: = (Ot), , (37) Kết thúc: P(l,t,w) = , (38) B(l,t,w) = -1 (39)

Sau khi mảng P(l,t,w) đã được tính toán đầy đủ tại mức này cho tất cả các mô hình, nó sẽ được giảm mức để chỉ ra mô hình phù hợp nhất tại mỗi thời điểm ở mức này:

(l,t) = (40)

(l,t) = B(l, t, arg ) (41)

(l,t) = arg (42)

Mảng chỉ ra xác suất của mô hình phù hợp nhất tại mức này, lưu nhãn của mô hình và cuối cùng, là con trỏ tới mức trước đó.

Đối với mức cao hơn, việc tính toán sẽ khác với thủ tục khởi tạo, theo đó các mô hình ở mức thứ hai (mức cao hơn) sẽ nhận kết quả từ mức mô hình ở mức thấp nhất:

= (43)

= max[ t-1), ].() (44)

Một mảng con trỏ quay lui cũng được tạo để lưu thời gian mà mức trước được đối sánh bởi mô hình trước đã kết thúc:

= {t-1 nếu t-1) > ), } (45)

Trong quá trình đệ qui, mảng được cập nhật như sau:

= arg (46)

Khi đến mức cuối cùng, mảng con trỏ quay lui B sẽ được cập nhật:

B(l,t,w) = , (47)

Tại mức cuối này, thao tác giảm mức được thực hiện và các tính toán có thể được xử lý cho mức tiếp theo. Tiến trình này tiếp tục lặp lại cho đến khi vượt số mức giới hạn trước. Đối sánh tốt nhất của L mô hình với chuỗi quan sát có xác suất T-1) và có thể tìm thấy được bằng cách lần ngược, sử dụng mảng B. Chuỗi

Một phần của tài liệu Nhận dạng ký tự viết tay (Trang 33 - 43)

Tải bản đầy đủ (DOCX)

(70 trang)
w