báo cáo mô hình markov
• • • • • Thành viên nhóm - Lớp KHMT_K20 1011019 - Phan Thị Hằng 1011025 - Trần Quang Huy 1011051 - Huỳnh Diệp Tân (Nhóm trưởng) 1011059 - Phan Tấn Toàn 1011065 - Trần Phước Tuấn Phân công việc Thành viên Trần Quang Huy Trần Phước Tuấn Huỳnh Diệp Tân Phan Tấn Toàn Phan Thị Hằng Slides & Báo cáo 9.1,9.2 Markov Models Hidden Markov Models 9.3 Three Fundamental Questions for HMMs 9.4, 9.5 Implementation, Properties, and Variants Further Reading Cá nhân Thảo luận nhóm Mỗi cá nhận tự đọc toàn nội dung chương mô hình markov Thống cách hiểu vấn đề sau: - Mô hình Markov - Mô hình Markov ẩn - Ba vấn để HMMs + Tính xác suất sinh chuỗi quan sát O mô hình µ: P(O|µ) + Xác định dãy chuyển trạng thái X cho xác suất sinh chuỗi quan sát O lớn (optimal path) + Tìm mô hình khớp với dãy quan sát (Tìm tham số cho mô hình) - Một số vấn đề khác liên quán đến HMMs Nội dung Giới thiệu Mô hình Markov Mô hình Markov ẩn (HMMs) Ba toán HMMs Implementation, Properties, and Variants, Further Reading Giới thiệu Hidden Markov Models (HMMs) – Mô hình markov ẩn có tản mô hình thống kê sử dụng hệ thống nhận dạng dọng nói đại Các biến thể HMMs sử dụng rộng rãi thường coi thành công Giới thiệu • Nhận dạng tiếng nói • Nhận dạng chữ viết tay • Xử lý ngôn ngữ thống kê • Dịch máy • Tin sinh học: – Khớp xấp xỉ nhiều chuỗi – Tìm kiếm tương tự – … Giới thiệu Chương HMMs đặt phần đầu phần “Grammar” sách làm việc thứ tự từ câu khởi đầu để hiểu cú pháp câu Trong chương tác giả trình bày Nền tản lý thuyết HMMs, Liên hệ với ứng dụng chúng Tổng kết vài gợi ý mở rộng HMMs kỹ thuật triển khai thực tế Mô hình Markov Giả sử ta cần dự đoán ngày mai số sách thư viện bao nhiêu, ta quan tâm đến số sách không quan tâm đến số sách có ngày hôm qua hay tuần trước, năm trước, … Trong toán ta thấy: ta cần dự đoán trạng thái tương lai dựa vào thông tin trạng thái mà không cần đến thông tin khứ Mô hình Markov Định nghĩa: Cho µ=(S, A, Π) gọi X = (X1, X2, …, XT) dãy biến ngẫu nhiên với giá trị nằm tập S={s1, s2, s3, …, sN} - tập không gian trạng thái, thỏa tính chất sau: P(Xt+1=sk | X1, X2, …, Xt) = P(Xt+1=sk | Xt) Xác xuất chuyển trạng thái độc lập với thời gian Xác suất chuyển trạng thái (lưu Nvào ma trận A) aij=P(Xt+1=sj | Xt = si) aij j 1 Xác suất trạng thái khởi động N Πi=P(X1=si) i i 1 µ mô tả mô hình Markov Mô hình Markov P(X1, X2, …, XT) = P(X1).P(X2|X1).P(X3|X1,X2)…P(XT|X1,X2,…, XT-1) = P(X1).P(X2|X1).P(X3|X2)… P(XT|XT-1) = X T 1 a t 1 Xt Xt 1 P(t,i,p) = P(X1=t) * P(X2=i|X1=t) * P(X3=p|X2=i) = 1.0 * 0.3 * 0.6 = 0.18 Mô hình Markov ẩn (HMMs) Crayzy machine Thuật giải Viterbi Ước lượng tham số Ước lượng tham số Không có công thức để chọn để cực đại hóa P(O|) cực đại hóa cục thuật giải leo đồi lặp Vì trước mô hình nên sử dụng vài mô hình (có thể chọn ngẫu nhiên) Quan sát kết tính toán, nhìn thấy trình chuyển trạng thái phát sinh sản phẩm dùng nhiều tăng xác suất chúng Tiến trình cực đại hóa thường gọi xoắn (twin) mô hình thực liệu huấn luyện (training data) Ước lượng tham số Ước lượng tham số Ước lượng tham số Bắt đầu với vào mô hình (được chọn trước ngẫu nhiên) Cho dãy O chạy qua mô hình để ước lượng tham số cho mô hình Cập nhật mô hình để cực đại hóa giá trị dãy trạng thái sử dụng nhiều Lặp lại tiến trình hy vọng chúng hội tụ giá trị tối ưu cho tham số mô hình Ước lượng tham số HMMs Implementation HMM Initialization of parameter values Variants of HMMs Applications of HMM Implementation HMM “floating-point underflow” Viterbi algorithm: logarithms (log) Implementation HMM “floating-point underflow” Forward-Backward algorithm: scaling coefficients (ct): dependent on time-t Initialization of parameter values Khi không đủ giá trị liệu để thiết lập HMM ? Giả định giá trị A Gán số giá trị = Giá trị B quan trọng nên có phương án khởi tạo tốt (tránh ngẫu nhiên) Variants of HMMs Epsilon/null transition Output O1,O2,…,OT dependent only on q1 Applications of HMM Trong sinh học: phân tích gen chuỗi ADN Trong xử lý ngôn ngữ: gán từ loại văn An HMM for unspliced genes x : non-coding DNA c : coding state Phần mềm cho HMMs HMM toolbox for MatLab http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html HTK (Cambridge University) http://htk.eng.cam.ac.uk/ GNU HMM Toolbox http://ghmm.org/ MatLab Bioinformatics Toolbox http://www.mathworks.com/products/bioinfo/ [...].. .Mô hình Markov ẩn (HMMs) Khi cho tiền vào thì máy sẽ chuyển trạng thái Nếu (Trạng thái =CP) Coca Nếu (Trạng thái = IP) Iced Tea Ta có mô hình Markov rõ (Visible Markov Model) Nhưng thực tế nó chỉ có xu hướng làm điều này, như vậy ta cần có xác suất sinh ra sản phẩm P(Ot =... = bijk (Xác suất sinh ra sản phẩm k khi chuyển từ si sj) Với k là giá trị quan sát được tại thời điểm t Mô hình Markov ẩn (HMMs) Với ví dụ trên này thì giá trị quan sát được độc lập hoàn toàn so với sj và được mô tả trong bảng sau: Cola Iced tea Lem CP 0.6 0.1 0.3 IP 0.1 0.7 0.2 Mô hình Markov ẩn (HMMs) CP CP CP lem ice_t 0.7*0.3 *0.7*0.1 CP IP Cola Iced tea Lem 0.6 0.1 0.1 0.7 0.3 0.2 Với... 0.3 * 0.7 * 0.1 + 0.7 * 0.3 * 0.3 * 0.1 + 0.3 * 0.3 * 0.5 * 0.7 + 0.3 * 0.3 * 0.5 * 0.7 = 0.084 Mô hình Markov ẩn (HMMs) Cấu trúc của một HMMs Thủ tục của tiến trình Markov Ba bài toán cơ bản của HMMs Bài toán 1: (Evaluation problem) Cho dãy quan sát O=o1o2 oT và HMM - µ hãy xác định xác suất sinh dãy từ mô hình – P(O| µ) Ba bài toán cơ bản của HMMs Bài toán 2: (Decoding problem) Cho dãy quan sát O=o1o2... bằng thuật giải leo đồi lặp Vì không biết trước là mô hình nào nên có thể sử dụng vài mô hình (có thể chọn ngẫu nhiên) Quan sát kết quả tính toán, chúng ta có thể nhìn thấy những quá trình chuyển trạng thái nào và những phát sinh sản phẩm nào được dùng nhiều nhất thì tăng xác suất của chúng Tiến trình cực đại hóa thường được gọi là xoắn (twin) mô hình và được thực hiện trên dữ liệu huấn luyện (training... HMMs Bài toán 3: (Learning problem) Hiệu chỉnh HMM - µ để cực đại hoá xác suất sinh O – P(O|µ) (tìm mô hình “khớp” dãy quan sát nhất) Giải pháp cho 3 bài toán toán của HMMs 1 Evaluation problem 2 Decoding problem 3 Learning problem 1 Tìm xác suất của dãy sản phẩm Cho dãy sản phẩm O = (o1,…,oT) và mô hình = (A, B, ) Tính P(O|) là xác suất dãy O được sinh bởi Quá trình tính toán này còn được... 2 3 Số lần, t T+1 Thủ tục tiến (Forward Procedure) 2N2T phép nhân Thủ tục lùi (Backward Procedure) Kết hợp thủ tục tiến và lùi 2 Tìm dãy trạng thái tốt nhất Cho dãy sản phẩm O = (o1,…,oT) và mô hình = (A, B, ) Tìm dãy trạng thái X = (X1,…,XT+1) tốt nhất sinh ra O Đó là dãy làm cho giá trị P(X|O,) đạt cực đại Có một cách là tìm từng trạng thái Xt với 1 t T+1 sao cho P(Xt|O,) đạt ... tự đọc toàn nội dung chương mô hình markov Thống cách hiểu vấn đề sau: - Mô hình Markov - Mô hình Markov ẩn - Ba vấn để HMMs + Tính xác suất sinh chuỗi quan sát O mô hình µ: P(O|µ) + Xác định dãy... lớn (optimal path) + Tìm mô hình khớp với dãy quan sát (Tìm tham số cho mô hình) - Một số vấn đề khác liên quán đến HMMs Nội dung Giới thiệu Mô hình Markov Mô hình Markov ẩn (HMMs) Ba toán... 0.18 Mô hình Markov ẩn (HMMs) Crayzy machine Mô hình Markov ẩn (HMMs) Khi cho tiền vào máy chuyển trạng thái Nếu (Trạng thái =CP) Coca Nếu (Trạng thái = IP) Iced Tea Ta có mô hình Markov