Hidden Markov Model (HMM)
Khám phá Mô hình Markov ẩn (HMM) cho AI thống kê. Tìm hiểu cách HMM hoạt động với Ultralytics YOLO26 để nhận dạng hành động, phân tích trình tự và logic thời gian.
Mô hình Markov ẩn (HMM) là một khung thống kê được sử dụng để lập mô hình các hệ thống mà quy trình nội tại không hiển thị trực tiếp—do đó gọi là "ẩn"—nhưng có thể suy luận thông qua một chuỗi các sự kiện có thể quan sát được. Mặc dù deep learning hiện đại đã phát triển để xử lý các chuỗi phức tạp, HMM vẫn là một khái niệm nền tảng trong AI thống kê và lý thuyết xác suất. Nó đặc biệt hiệu quả để phân tích dữ liệu phân tích chuỗi thời gian nơi thứ tự của các sự kiện cung cấp ngữ cảnh quan trọng, dựa trên nguyên tắc cốt lõi rằng xác suất của một trạng thái tương lai chỉ phụ thuộc vào trạng thái hiện tại, chứ không phụ thuộc vào lịch sử đã xảy ra trước đó.
Link to this sectionCác cơ chế cốt lõi của HMM#
Để hiểu cách một HMM hoạt động, điều cần thiết là phải phân biệt giữa hai lớp riêng biệt của mô hình: các trạng thái ẩn và các kết quả đầu ra có thể quan sát được. Mô hình giả định rằng hệ thống chuyển đổi giữa các trạng thái ẩn theo các xác suất cụ thể, phát ra một quan sát tại mỗi bước.
Một HMM được xác định bởi một tập hợp các tham số điều khiển các quá trình chuyển đổi và phát xạ này:
- Trạng thái ẩn: Những trạng thái này đại diện cho thực tế cơ bản của hệ thống tại một thời điểm nhất định. Trong một mô hình giọng nói, một trạng thái ẩn có thể đại diện cho một âm vị hoặc từ cụ thể.
- Sự kiện có thể quan sát được: Đây là các điểm dữ liệu thực sự được thu thập bởi các cảm biến hoặc đầu vào. Trong ví dụ về giọng nói, quan sát sẽ là dữ liệu dạng sóng âm thanh hoặc phổ âm thanh.
- Xác suất chuyển đổi: Ma trận này mô tả khả năng di chuyển từ trạng thái ẩn này sang trạng thái ẩn khác. Ví dụ, xác suất thời tiết thay đổi từ "Mưa" sang "Nắng".
- Xác suất phát xạ: Các xác suất này xác định khả năng nhìn thấy một quan sát cụ thể khi biết trạng thái ẩn hiện tại.
- Xác suất ban đầu: Phân phối xác định trạng thái mà hệ thống có khả năng bắt đầu nhất.
Việc huấn luyện một HMM thường bao gồm thuật toán Baum-Welch để ước tính các tham số này từ dữ liệu huấn luyện. Sau khi được huấn luyện, thuật toán Viterbi thường được sử dụng để giải mã chuỗi trạng thái ẩn có khả năng xảy ra nhất từ một tập hợp các quan sát mới.
Link to this sectionHMM so với các mô hình chuỗi khác#
Mặc dù HMM có những điểm tương đồng với các công cụ xử lý chuỗi khác, chúng khác biệt đáng kể về kiến trúc và ứng dụng:
- HMM so với Mạng thần kinh tái phát (RNN): RNN và mạng Bộ nhớ dài-ngắn (LSTM) là các mô hình deep learning có thể nắm bắt các phụ thuộc tầm xa và các mô hình phi tuyến tính, trong khi HMM là các mô hình xác suất đơn giản hơn, bị giới hạn bởi giả định Markov (bộ nhớ ngắn hạn). Tuy nhiên, HMM yêu cầu ít dữ liệu hơn đáng kể và dễ giải thích hơn nhiều.
- HMM so với Bộ lọc Kalman (KF): Cả hai đều được sử dụng để ước tính trạng thái. Tuy nhiên, Bộ lọc Kalman được thiết kế cho các trạng thái liên tục (như theo dõi vị trí chính xác của một chiếc xe đang di chuyển), trong khi HMM được sử dụng cho các trạng thái rời rạc (như xác định xem xe đang "đỗ", "lái xe" hay "dừng lại").
Link to this sectionCác ứng dụng trong thực tế#
Bất chấp sự trỗi dậy của deep learning (DL), các Mô hình Markov ẩn vẫn được sử dụng rộng rãi trong các tình huống đòi hỏi suy luận xác suất trên các chuỗi.
Link to this sectionNhận dạng giọng nói và chữ viết tay#
Trong lịch sử, HMM là xương sống của các hệ thống nhận dạng giọng nói. Trong ngữ cảnh này, các từ được nói là các trạng thái "ẩn", và các tín hiệu âm thanh được ghi lại bởi micrô là các quan sát. HMM giúp xác định chuỗi từ có khả năng xảy ra nhất tạo ra tín hiệu âm thanh. Tương tự, chúng hỗ trợ giải mã chữ viết tay thảo bằng cách lập mô hình quá trình chuyển đổi giữa các nét chữ.
Link to this sectionPhân tích chuỗi sinh học#
Trong lĩnh vực tin sinh học, HMM đóng vai trò quan trọng trong việc dự đoán gen và căn chỉnh protein. Chúng phân tích các chuỗi DNA hoặc axit amin để xác định các vùng chức năng, chẳng hạn như các gen trong bộ gen. Các trạng thái "ẩn" có thể đại diện cho các vùng mã hóa hoặc không mã hóa, trong khi các nucleotide cụ thể (A, C, G, T) đóng vai trò là các quan sát.
Link to this sectionNhận dạng hành động trong thị giác máy tính#
Trong thị giác máy tính hiện đại, HMM có thể được kết hợp với các mô hình như YOLO26 để thực hiện nhận dạng hành động. Trong khi YOLO phát hiện các đối tượng hoặc tư thế trong từng khung hình riêng lẻ, một HMM có thể phân tích chuỗi các tư thế này theo thời gian để phân loại một hành động, chẳng hạn như "đi bộ", "chạy" hoặc "ngã".
Link to this sectionTích hợp thị giác và phân tích trạng thái#
Đối với các nhà phát triển sử dụng Ultralytics Platform để quản lý tập dữ liệu và mô hình, việc hiểu logic chuỗi là rất quan trọng. Một mô hình thị giác cung cấp các quan sát thô (phát hiện), sau đó có thể được đưa vào một mô hình không gian trạng thái như HMM để suy luận ngữ cảnh tạm thời.
Ví dụ sau đây minh họa cách tạo ra một chuỗi quan sát bằng cách sử dụng ước tính tư thế YOLO26. Các điểm khóa này có thể đóng vai trò là đầu vào "sự kiện có thể quan sát được" cho một HMM hạ nguồn hoặc logic tương tự để phân loại các hành vi theo thời gian.
from ultralytics import YOLO
# Load the YOLO26n-pose model for efficient keypoint detection
model = YOLO("yolo26n-pose.pt")
# Run inference on a video source (the 'observable' sequence)
# stream=True creates a generator for memory efficiency
results = model.predict(source="path/to/video.mp4", stream=True)
# Iterate through frames to extract observations
for result in results:
# Each 'keypoints' object is an observation for a potential HMM
keypoints = result.keypoints.xyn.cpu().numpy()
if keypoints.size > 0:
print(f"Observation (Normalized Keypoints): {keypoints[0][:5]}...")
# In a full pipeline, these points would be fed into an HMM decoderLink to this sectionTầm quan trọng trong AI hiện đại#
Mặc dù các transformer và các mô hình ngôn ngữ lớn (LLM) đã thay thế HMM cho các tác vụ như xử lý ngôn ngữ tự nhiên (NLP), HMM vẫn giữ vai trò liên quan trong điện toán biên và các môi trường có độ trễ thấp. Hiệu quả tính toán của chúng khiến chúng trở nên lý tưởng cho các hệ thống có tài nguyên hạn chế nơi việc sử dụng GPU cường độ cao không khả thi. Hơn nữa, vì chúng dựa trên các ma trận xác suất minh bạch, chúng mang lại khả năng quan sát cao hơn so với bản chất "hộp đen" của nhiều mạng thần kinh.






