Nhận dạng giọng nói đã trở nên rất nổi bật và được tích hợp vào sự phát triển của Trí Tuệ Nhân Tạo AI và trợ lý thông minh như Amazon's Alexa và Apple's Siri.Hệ thống nhận dạng giọng nói
Giọng nói và nhận dạng giọng nói
Giọng nói
Giọng nói là một khía cạnh quan trọng của cuộc sống con người và một phương tiện chính để giao tiếp Khi con người nói chuyện, họ sử dụng giọng nói để truyền đạt ý nghĩa, thể hiện cảm xúc, và thể hiện tính cách cá nhân Trong bài luận này, chúng ta sẽ tìm hiểu khái niệm của giọng nói, tầm quan trọng của tần số trong giọng nói, và cách giọng nói được tạo ra thông qua quy trình phức tạp của hệ thống họng và điều khiển thần kinh.
Khái niệm của Giọng Nói:
Giọng nói, còn được gọi là tiếng nói, là một khả năng đặc trưng của con người và một số loài động vật khác Nó là khả năng tạo ra âm thanh từ dây thanh, họng và miệng để giao tiếp Giọng nói là một phương tiện quan trọng để truyền đạt thông tin, giao tiếp với người khác và thể hiện cảm xúc Nó còn phản ánh văn hóa và ngôn ngữ của mỗi người, biểu thị qua ngữ điệu, phát âm và cách sử dụng từ ngôn ngữ.
Cách Giọng Nói Được Phát Ra:
Giọng nói được tạo ra thông qua một quy trình phức tạp và tinh tế Khi chúng ta nói chuyện, dây thanh trong họng của chúng ta dao động để tạo ra âm thanh cơ bản Điều này thường liên quan đến sự điều khiển chính xác của cơ học họng, bàn lưỡi và miệng Nhờ sự điều chỉnh tần số, tốc độ và độ căng của dây thanh, chúng ta có thể tạo ra các âm thanh khác nhau, từ các nguyên âm đến các phụ âm.
Hình 1 Cách giọng nói được phát ra.
Hệ thống thần kinh và bộ não của con người chịu trách nhiệm điều khiển giọng nói Họ giúp chúng ta điều chỉnh giọng nói và diễn đạt ý nghĩa thông qua việc phối hợp nhiều yếu tố cơ học và tâm lý Ngoài ra, giọng nói cũng phản ánh vùng miền và ngôn ngữ của người nói, cho phép thể hiện tính đa dạng văn hóa và ngôn ngữ.
Tóm lại, giọng nói là một khía cạnh đặc biệt và quan trọng trong cuộc sống con người. Tần số trong giọng nói thể hiện các yếu tố như ngữ điệu, cảm xúc và nguồn gốc của người nói Cách giọng nói được phát ra bao gồm sự phối hợp của nhiều yếu tố về cơ học và điều khiển, và nó là một phần quan trọng của việc giao tiếp và truyền đạt thông tin trong xã hội.
Phổ âm thanh của lời nói:
Phổ của giọng nói bao phủ một phần khá rộng của toàn bộ phổ tần số âm thanh Trong các ngôn ngữ không thanh điệu, người ta có thể nói rằng lời nói bao gồm các nguyên âm và phụ âm Các nguyên âm được tạo ra bởi các dây thanh âm và được lọc bởi các khoang thanh âm Một lời thì thầm là không có âm thanh phát âm.
Tuy nhiên, các khoang góp phần hình thành các nguyên âm khác nhau vẫn ảnh hưởng đến luồng không khí đi qua Đây là lý do tại sao đặc điểm của nguyên âm cũng xuất hiện trong lời thì thầm Nói chung, tần số cơ bản của giọng nói phức tạp – còn được gọi là cao độ hoặc f0 – nằm trong phạm vi 100-120 Hz đối với nam giới, nhưng có thể xảy ra các biến thể ngoài phạm vi này F0 dành cho phụ nữ cao hơn khoảng một quãng tám Đối với trẻ em, f0 là khoảng 300 Hz.
Các phụ âm được tạo ra bởi sự tắc nghẽn không khí và âm thanh ồn ào được hình thành khi không khí đi qua cổ họng và miệng, đặc biệt là lưỡi và môi Về tần số, các phụ âm nằm trên 500 Hz.
Hình 2.Phổ giọng nói (1/3 quãng tám) tùy thuộc vào trạng thái. Ở cường độ giọng hát bình thường, năng lượng của nguyên âm thường giảm nhanh trên khoảng 1 kHz Tuy nhiên, hãy lưu ý rằng sự nhấn mạnh vào phổ giọng nói sẽ dịch chuyển từ một đến hai quãng tám về phía tần số cao hơn khi giọng nói lên cao Ngoài ra,không thể tăng mức âm thanh của phụ âm ngang bằng với nguyên âm Trong thực tế,điều này có nghĩa là độ dễ hiểu của lời nói không tăng lên khi hét lên so với việc áp dụng nỗ lực phát âm thông thường trong những tình huống mà tiếng ồn xung quanh không đáng kể.
Nhận dạng giọng nói
Khái niệm về nhận dạng giọng nói:
Nhận dạng giọng nói là khả năng máy tính hoặc chương trình nhận và giải thích chính tả hoặc hiểu và thực hiện các lệnh nói Nhận dạng giọng nói đã trở nên rất nổi bật và được tích hợp vào sự phát triển của Trí Tuệ Nhân Tạo (AI) và trợ lý thông minh như Amazon's Alexa và Apple's Siri.
Hệ thống nhận dạng giọng nói cho phép người dùng tương tác với công nghệ bằng cách nói chuyện với nó, cho phép họ đưa ra yêu cầu, tạo lời nhắc và thực hiện các tác vụ đơn giản mà không cần sử dụng tay.
Quá trình nhận dạng giọng nói có thể xác định và phân biệt giọng nói thông qua sử dụng các chương trình phần mềm nhận dạng giọng nói tự động (ASR) Một số chương trình ASR yêu cầu người dùng trước tiên đào tạo hệ thống bằng cách ghi âm giọng nói của họ để chuyển đổi giọng nói thành văn bản chính xác hơn Hệ thống nhận dạng giọng nói đánh giá tần số, dựng lời nói và phân tích dòng giọng nói.
Mặc dù nhận dạng tiếng nói và nhận dạng giọng nói có thể có sự trùng lắp, chúng không hoàn toàn giống nhau và cần phải được phân biệt Nhận dạng giọng nói xác định người nói, trong khi nhận dạng tiếng nói liên quan đến việc hiểu nội dung của lời nói.
Cách hoạt động của nhận dạng giọng nói:
Phần mềm nhận dạng giọng nói trên máy tính yêu cầu âm thanh analog phải được chuyển đổi thành tín hiệu số, gọi là quá trình chuyển đổi tín hiệu analog sang số (A/D) Để máy tính có thể giải mã tín hiệu này, nó phải có cơ sở dữ liệu số về từ hoặc âm tiết cũng như một quá trình nhanh chóng để so sánh dữ liệu này với tín hiệu Các mẫu lời nói được lưu trữ trên ổ cứng và được nạp vào bộ nhớ khi chương trình chạy Một bộ so sánh kiểm tra những mẫu được lưu trữ này so với đầu ra của bộ chuyển đổi A/D - một hoạt động gọi là nhận dạng mẫu.
Hình 1 Nhận dạng giọng nói chuyển đổi âm thanh analog thành tín hiệu số, sau đố được hiểu thông qua nhận dạng mẫu và phần mềm nhận dạng giọng nói.
Trong thực tế, kích thước từ vựng hiệu quả của chương trình nhận dạng giọng nói có mối liên quan trực tiếp đến dung lượng RAM của máy tính mà nó được cài đặt Một chương trình nhận dạng giọng nói chạy nhiều lần nhanh hơn nếu toàn bộ từ vựng có thể được tải vào RAM so với việc tìm kiếm trên ổ cứng để tìm các kết quả tương tự Tốc độ xử lý là quan trọng, vì nó ảnh hưởng đến khả năng máy tính tìm kiếm trong RAM để tìm các kết quả. Âm thanh cũng phải được xử lý để làm sáng rõ, vì vậy một số thiết bị có thể loại bỏ tiếng ồn nền Trong một số hệ thống nhận dạng giọng nói, các tần số cụ thể trong âm thanh được tôn trọng để thiết bị có thể nhận dạng giọng nói tốt hơn.
Các hệ thống nhận dạng giọng nói phân tích lời nói thông qua một trong hai mô hình: mô hình Markov ẩn và mạng nơ-ron Mô hình Markov ẩn phân tích từng từ thành các âm vần của chúng, trong khi mạng nơ-ron tái sử dụng kết quả từ các bước trước để ảnh hưởng đến đầu vào của bước hiện tại.
Khi các ứng dụng của công nghệ nhận dạng giọng nói mở rộng và người dùng tương tác nhiều hơn với nó, các tổ chức triển khai phần mềm nhận dạng giọng nói sẽ có nhiều dữ liệu và thông tin hơn để cung cấp cho các mạng nơ-ron trong các hệ thống nhận dạng giọng nói Điều này cải thiện khả năng và độ chính xác của các sản phẩm nhận dạng giọng nói.
Sự phổ biến của điện thoại thông minh đã mở cửa để tích hợp công nghệ nhận dạng giọng nói vào túi của người tiêu dùng, trong khi các thiết bị gia đình như Google Home và Amazon Echo đã đưa công nghệ nhận dạng giọng nói vào phòng khách và nhà bếp. Ưu điểm và nhược điểm của nhận diện giọng nói:
Nhận dạng giọng nói mang lại nhiều lợi ích:
Người tiêu dùng có thể thực hiện nhiều nhiệm vụ cùng một lúc bằng cách nói trực tiếp với trợ lý giọng nói hoặc công nghệ nhận dạng giọng nói khác.
Người dùng gặp khó khăn về thị lực vẫn có thể tương tác với thiết bị của họ.
Trí tuệ nhân tạo và các thuật toán tinh vi giúp công nghệ nhận dạng giọng nói chuyển đổi từng từ nói thành văn bản nhanh chóng.
Công nghệ này có thể ghi lại lời nói nhanh hơn so với việc gõ bàn phím của một số người dùng Điều này làm cho việc ghi chú hoặc đặt lịch nhắc nhanh hơn và tiện lợi hơn.
Tuy nhiên, một số nhược điểm của công nghệ này bao gồm:
Tiếng ồn nền có thể tạo ra thông tin đầu vào sai lệch.
Mặc dù tỷ lệ chính xác đang được cải thiện, tất cả các hệ thống và chương trình nhận dạng giọng nói đều có thể gây ra lỗi.
Có vấn đề về những từ có cùng âm nhưng có cách viết và ý nghĩa khác nhau - ví dụ, "hear" và "here." Vấn đề này có thể được giải quyết một phần thông qua việc lưu trữ thông tin ngữ cảnh Tuy nhiên, điều này yêu cầu thêm RAM và bộ xử lý nhanh hơn
Lịch sử của công nghệ nhận diện giọng nói:
Công nghệ nhận dạng giọng nói đã phát triển mạnh mẽ trong vòng năm thập kỷ qua. Trong những năm 1976, máy tính chỉ có thể hiểu hơn 1.000 từ Tổng số này đã tăng lên khoảng 20.000 vào những năm 1980 khi IBM tiếp tục phát triển công nghệ nhận dạng giọng nói.
Năm 1952, Bell Laboratories phát minh AUDREY - Hệ thống Nhận Dạng Số Tự Động - chỉ có thể hiểu các số từ 0 đến 9 Vào đầu đến giữa những năm 1970, Bộ Quốc phòng Hoa Kỳ đã bắt đầu đóng góp cho việc phát triển hệ thống nhận dạng giọng nói, tài trợ cho
Các phương pháp nhận dạng giọng nói
Gaussian Mixture Model – GMM là gì
Gaussian Mixture Model (GMM) hay mô hình Gaussian hỗn hợp là một loại mô hình xác suất thống kê mà chúng ta sử dụng để mô hình hóa phân phối xác suất của dữ liệu đa chiều Đặc trưng của GMM là khả năng biểu diễn sự đa dạng và phức tạp của dữ liệu bằng cách sử dụng tổ hợp của nhiều phân phối Gaussian Giả định rằng dữ liệu được tạo ra từ sự kết hợp của nhiều phân phối Gaussian, mỗi phân phối Gaussian trong GMM đại diện cho một thành phần của dữ liệu và tổng hợp của chúng tạo nên phân phối xác suất của toàn bộ dữ liệu
Mỗi phân phối của GMM bao gồm ba tham số chính là trọng số (Weight – π k ), trung bình (Mean - à k ) và ma trận hiệp phương sai (Converiance Matrix - Σ k ) đại diện cho đúng gúp của từng phân phối vào tổng thể.
Mỗi phân phối Gaussian thứ k trong GMM có một trọng số tương ứng là π k Trọng số này đo lường đóng góp của phân phối Gaussian k vào tổng thể Nếu π k lớn, phân phối Gaussian k có đóng góp lớn hơn vào xác suất tổng thể.
Tổng của tất cả các trọng số trong GMM phải bằng một vì chúng đại diện cho xác suất tương ứng với từng phân phối Toàn bộ phân phối xác suất dữ liệu của mô hình bởi GMM là tổng của các phân phối Gaussian có trọng số.
Trọng số π k xác định độ quan trọng của nó trong mô hình GMM, các trọng số này quyết định cách mỗi phân phối đóng góp vào việc mô tả và mô hình hóa dữ liệu.
Mỗi phõn phối Gaussion thứ k cú một vector trung bỡnh à k , à k cú cựng số chiều với dữ liệu đầu vào và xác định vị trí trung tâm của phân phối Gaussian trong không gian đặc trưng.
Nếu giỏ trị của à k là cao, điều này cú thể cho thấy trung tõm của phõn phối đú ở gần một khu vực cụ thể trong không gian đặc trưng.
Trung bỡnh à k cú liờn kết chặt chẽ với hỡnh dạng của phõn phối Gauss, nú xỏc định nơi tập trung chính của phân phối và cách nó được phân bố xung quanh vị trí đó.
- Ma trận hiệp phương sai - Converiance Matrix - ( Σ¿¿ k ) ¿.
Ma trận hiệp phương sai là một khái niệm quan trọng trong thống kê và học máy, đặc biệt là khi nói về mô hình GMM và phân phối Gauss Ma trận hiệp phương sai mô tả mối quan hệ giữa các thành phần khác nhau của một vector ngẫu nhiên hoặc biến đặc trưng.
Nếu có một biến ngẫu nhiên có n thành phần hoặc một vector đặc trưng X = [X 1 ,
X 2 ,…, X n ] thì ma trận hiệp phương sai được biểu diễn như sau: Σ=( σ 1
Trong đó, σ ij là phần tử tại dòng i, cột j của ma trận, thể hiện mức độ tương quan giữa X i và X j Nếu σ ij , có thể nói rằng X i và X j có mối quan hệ tương quan cao, σ ij 0 có nghĩa là X i và X j là độc lập tuyến tính và không có mối quan hệ tương quan.
Nếu Σ k là ma trận đường chéo, tức là tất cả phần tử nằm ngoài đường chéo đều bằng 0, thì các thành phần của vector ngẫu nhiên được coi là độc lập.
Ma trận hiệp phương sai Σ k xác định hình dạng và độ biến động của phân phối Gauss thứ k trong không gian đặc trưng.
GMM mô tả hàm mật độ xác suất của dữ liệu X theo công thức sau:
- K là số lượng phân phối Gaussian.
- là trọng số của phân phối thứ k, với ∑ k =1
- Ɲ ¿ là hàm mật độ xỏc suất Gaussian với trung bỡnh à k và ma trận hiệp phương sai Σ k
Áp dụng GMM vào nhận dạng giọng nói
- Để áp dụng GMM vào nhận dạng giọng nói, đầu tiên ta cần chuẩn bị dữ liệu bằng cách thu thập mẫu giọng nói từ nhiều người nói, mỗi giọng nói cần được biểu diễn dưới dạng đặc trưng Dữ liệu được tổ chức thành dạng ma trận, với mỗi hàng là một vector đặc trưng của một mẫu giọng nói.
- Sau đó, dữ liệu được phân chia thành tập huấn luyện và tập kiển tra để đánh giá hiệu suất sau khi huấn luyện mô hình Các thông tin quan trọng từ mẫu giọng nói sẽ được trích xuất bằng cách phương pháp trích xuất đặc trưng như MFCCs( Mel- Frequency Cepstral Coefficients) hay LPC (Linear Predictive Coding).
Thuật toán EM (Expectation – Maximization) được áp dụng để huấn luyện mô hình GMM trên tập huấn luyện Đây là một phương pháp tối ưu hóa hàm hợp lý (likelihood) của mô hình thống kê khi có sự thiếu thông tin hoặc biến ẩn
- Đầu tiên là khởi tạo tham số: chọn một số lượng phân phối Gauss (K) và khởi tạo các tham số ban đầu của mô hình GMM bao gồm trọng số, trung bình và ma trận hiệp phương sai cho mỗi phân phối.
- Tiếp theo là lặp đến hội tụ (Expectation – Maximization Loop):
Bước E (Expectation): Dựa vào tham số hiện tại, tính xác suất điều kiện của mỗi điểm dữ liệu thuộc về từng phân phối Gauss bằng công thức Bayes sau đó xác định xác suất nó thuộc về từng phân phối Gauss
Bước M (Maximization): Dựa trên xác suất điều kiện tính được, cập nhật cỏc tham số ( π k , à k , Σ k ) để tối ưu húa hàm hợp lý của dữ liệu Cụng thức cập nhật tham số có thể được tính dựa trên đạo hàm của hàm hợp lý.
Điều kiện dừng: Lặp lại bước E và M cho đến khi hàm hợp lý không thay đổi đáng kể hoặc đến khi đạt được số lần lặp tối đa.
- Kết quả: Sau khi thuật toán hội tụ, các tham số của mô hình GMM sẽ được cập nhật để mô hình phân phối xác suất của dữ liệu EM không đảm bảo tìm ra giải pháp toàn cục tối ưu nên cần thiết có nhiều lần chạy với các điểm khởi tạo khác nhau để thu được kết quả tối ưu nhất.
Hình 6 Quá trình thực hiện EM
- Khi mô hình GMM đã được huấn luyện, mỗi mẫu giọng nói sẽ được đưa vào mô hình để tính toán xác suất thuộc về từng phân phối Gauss và quyết định người nói dựa trên xác suất cao nhất hoặc kết hợp xác suất từ nhiều phân phối
- Tập kiểm tra, thường bao gồm một tập hợp các mẫu dữ liệu mà mô hình chưa thấy bao giờ trong quá trình huấn luyện, sẽ được sử dụng để đánh giá hiệu suất của mô hình GMM, đây là một bước quan trọng để đảm bảo mô hình hoạt động hiệu quả trên dữ liệu mới Các thước đo có thể được sử dụng để đánh giá hiệu suất của mô hình GMM là độ chính xác (Accuracy) bằng cách xem xét tỉ lệ giữa số lượng mẫu được phân loại đúng trên tổng số mẫu, ma trận Confusion hiển thị số lượng các dự đoán đúng và sai trong từng lớp (người nói) giúp định rõ lối phân loại cụ thể.
- Sau khi sử dụng tập kiểm tra để đánh giá hiệu suất, các tham số của mô hìnhGMM có thể được tinh chỉnh nếu cần thiết để đạt được kết quả tốt hơn Để cải thiện hiệu suất, có thể xử lý nhiễu trong dữ liệu giọng nói bao gồm việc sử dụng các kỹ thuật lọc và làm sạch dữ liệu như sử dụng các bộ lọc thông thấp, thông cao,thông dãi và nhiều loại lọc khác.
Các ưu điểm và nhược điểm khi sử dụng GMM
- Độ linh hoạt: GMM có khả năng mô hình hóa một loạt các phân phối xác suất vì có thể xấp xỉ bất kỳ phân phối nào có thể được biểu diễn dưới dạng tổng trọng số của nhiều phân phối chuẩn.
- Tốc độ: GMM tương đối nhanh để phù hợp với tập dữ liệu, đặc biệt là khi sử dụng thuật toán tối ưu hóa hiệu quả như EM.
- Xử lý dữ liệu bị thiếu: GMM có khả năng xử lý dữ liệu bị thiếu bằng cách loại bỏ các biến bị thiếu, có thể hữu ích trong các tình huống mà một số quan sát không đầy đủ.
- Khả năng diễn giải: các tham số của GMM (trọng số, trung bình, ma trận hiệp phương sai) có cách giải thích rõ ràng, có thể hữu ích để hiểu cấu trúc cơ bản của dữ liệu.
- Độ nhạy khi khởi tạo: mô hình GMM nhạy với các giá trị khởi tạo ban đầu của tham số, đặc biệt là khi có quá nhiều thành phần, điều này có thể dẫn đến sự hội tụ kém đến khả năng đưa ra giải pháp tối ưu.
- Giả định về tính chuẩn: GMM giả định rằng dữ liệu được tạo ra từ hỗn hợp các phân phối chuẩn, điều này có thể không phải lúc nào cũng đúng trong thực tế Nếu dữ liệu sai lệch đáng kể so với mức bình thường thì GMM không phải mô hình thích hợp nhất.
- Số lượng thành phần: chọn số lượng thành phần thích hợp trong mô hình này có thể là một thách thức vì việc thêm quá nhiều thành phần có thể làm quá tải dữ liệu, trong khi sử dụng quá ít thành phần có thể không phù hợp với dữ liệu, dẫn đến một nhiệm vụ đầy thách thức, trở nên khó xử lý.
- Khả năng biểu đạt hạn chế: GMM chỉ có thể biểu diễn các phân phối dưới dạng tổng trọng số của các phân phối chuẩn, điều này có nghĩa là mô hình này không phù hợp để mô hình hóa các phân phối phức tạp hơn.
Hidden Markov Models – HMM
Các mô hình Markov ẩn được phát triển bởi nhà toán học L.E Baum và các đồng nghiệp của mình trong năm 1960 Các ẩn Markov nỗ lực mô hình để dự đoán tình trạng tương lai của một biến sử dụng xác suất dựa trên trạng thái hiện tại và quá khứ.
Mô hình Markov ẩn (HMM: Hidden Markov Model) là một mô hình máy trạng thái, mô hình này cho phép chúng ta xem xét đến hai thành phần là sự kiện quan sát được và các sự kiện ẩn Ví dụ trong nhận dạng tiếng nói thì sự kiện quan sát được là các đặc trưng âm học của tiếng nói, còn sự kiện ẩn là các từ
Hình 7 Mô hình Markov ẩn 3 trạng thái
Một mô hình markov ẩn thường bao gồm có các thành phần chính sau:
Q=[ q 1 , q 2 , q 3 , … q N ]: Q là tập của N trạng thái
A = [ a ij ]: A là ma trận chuyển trạng thái với aij là xác xuất chuyển từ trạng thái i sang trạng thái j.
O=[ o 1 , o 2 , o 3 ,… o T ]: O là một chuỗi T các quan sát tại các thời điểm t khác nhau. Tương ứng với mỗi trạng thái sẽ có một tập V ={o 1 , o 2 , o 3 , … o M } là tập hợp tất cả các quan sát có thể được quan sát thấy trong mỗi trạng thái.
B={bj(k)}: B là phân bố xác xuất quan sát được các quan sát o trong trạng thái Sj (hay qj).
Trong nhiều trường hợp chúng ta sẽ xem xét đến hai thành phần Π ={πi} phân bố xác suất khởi tạo, và QA= {qx , qy …} QA (con của Q) là tập chấp nhận được.
Tập λ={ S , A , B , π} là các tham số của một HMM.
Với mỗi mô hình Markov ẩn ta có ba vấn đề chính cần được xem xét:
- Vấn đề 1: Tính toán độ tương đồng (Computing likelihood): cho mô hình λ(A,B,π) và chuỗi quan sát được O xác định độ tương đồng (likelihood) P(O|λ) Víλ) Ví dụ trong nhận dạng tiếng nói, ta có quan sát O là tín hiệu tiếng nói và λ là mô hình,vậy bài toán cần giải là tính độ tương đồng P để mô hình λ quan sát được O.
- Vấn đề 2 (decoding): Cho một chuỗi quan sát O và mô hình HMM λ(A,B,π), tìm ra chuỗi Q tối ưu nhất đã phát sinh ra O Trong nhận dạng tiếng nói thì đây chính là bài toán nhận dạng, khi quan sát O là tín hiệu tiếng nói thì bài toán là tìm chuỗi âm vị Q tương ứng với tín hiệu này.
- Vấn đề 3 (learning): cho một chuỗi quan sát O và tập các trạng thái của HMM, điều chỉnh các tham số λ = {A, B, π} của HMM để P(O| λ) lớn nhất (Đây chính làA, B, π} của HMM để P(O|λ) Ví λ) lớn nhất (Đây chính là bài toán huấn luyện mô hình Bài toán này đem lại khả năng rất quan trọng của HMM đó là mô hình hóa đối tượng cụ thể trong thực tế với dữ liệu liên tục).
Ta lần lượt giải quyết ba vấn đề trên bằng ba thuật toán sau: Forward, Viterbi, Baum Welch.
Thuật toán Forward trong mô hình Markov ẩn được sử dụng đẻ tính xác suất của một chuỗi quan sát cụ thể dựa trên mô hình HMM Trong HMM, chúng ta không thể quan sát trực tiếp trạng thái ẩn nhưng có thể quan sát được các biểu diễn của chúng thông qua các ký hiệu quan sát.
Thuật toán Forward gồm 3 bước:
Chúng ta có thể tìm chuổi trạng thái ẩn tốt nhất bằng cách chạy thuật toán Forward và tính toán khả năng xảy ra của chuỗi quan sát dựa trên chuỗi trạng thái ẩn đó Khi đó chúng ta có thể chọn chuỗi trạng thái ẩn có khả có khả năng quan sát tối đa, nhưng ta không thể làm điều này khi có một số lượng lớn các chuỗi trạng thái theo cấp số nhân. Thay vào đó ta dung thuật toán Viterbi để giải quyết vấn đề này.
Cũng tương tự như thuật toán forward, thuật toán Viterbi gồm 3 bước:
- Quy nạp: v t (j)=max i=1 v t−1 (i)α ij b j ( o t ) ;1 ≤ j ≤ N , 1< t ≤ T bt 1 (j)=argmax i=1 v t−1 (i)α ij b j ( o t ) ; 1≤ j≤ N , 1