Accuracy vs. precision vs. recall trong machine learning
Tìm hiểu về Accuracy, Precision và Recall trong machine learning. Khám phá Confusion Matrix, F1 Score và cách sử dụng các chỉ số đánh giá quan trọng này.

Machine learning (ML) là một nhánh của trí tuệ nhân tạo (AI) tập trung vào việc tạo ra các hệ thống học hỏi từ dữ liệu. Nó đóng vai trò trung tâm trong nhiều lĩnh vực khác của AI, bao gồm computer vision, nơi các máy tính diễn giải hình ảnh, và xử lý ngôn ngữ tự nhiên, nơi chúng hiểu và tạo ra ngôn ngữ của con người.
Thông thường, các AI model này sử dụng kỹ thuật deep learning để đưa ra dự đoán từ dữ liệu. Mặc dù các hệ thống này có thể rất hiệu quả, chúng không phải lúc nào cũng đưa ra dự đoán chính xác. Một số đầu ra có thể đúng, trong khi những cái khác lại chệch mục tiêu.
Hiểu rõ cách thức các lỗi này xảy ra là một phần quan trọng để đánh giá hiệu suất của một model. Để đo lường hiệu suất, chúng ta có thể sử dụng model evaluation metrics.
Các metric đánh giá phổ biến bao gồm accuracy (độ chính xác tổng thể), precision (độ tin cậy của các dự đoán dương tính) và recall (khả năng model xác định đúng các trường hợp dương tính thực tế). Thoạt nhìn chúng có vẻ giống nhau, nhưng mỗi metric tập trung vào một khía cạnh khác nhau trong hành vi của model.
Trong bài viết này, chúng ta sẽ xem xét kỹ hơn từng metric hiệu suất AI model này. Chúng ta cũng sẽ khám phá mối liên hệ giữa chúng và cách chọn metric phù hợp cho trường hợp sử dụng của bạn. Hãy cùng bắt đầu!
Link to this sectionModel evaluation metrics quan trọng trong machine learning#
Một machine learning model có thể có vẻ như đang hoạt động tốt lúc ban đầu. Nhưng nếu không có các evaluation metrics phù hợp, thật khó để hiểu kết quả của nó chính xác đến mức nào. Những metric này tạo ra cấu trúc cho việc đánh giá model và giúp trả lời một câu hỏi then chốt: Các dự đoán của model có hữu ích và đáng tin cậy cho một tác vụ nhất định hay không?
Các metric như accuracy, precision và recall cung cấp cho các AI developer một cách rõ ràng để đo lường hiệu quả hoạt động của một model. Ví dụ, khi so sánh các model khác nhau, những metric này cho phép xác định model nào hoạt động tốt nhất cho một tác vụ cụ thể. Chúng giúp đánh giá hiệu suất và hướng dẫn việc lựa chọn model phù hợp nhất với các mục tiêu của một dự án AI.

Hình 1. Quy trình huấn luyện và đánh giá model (Nguồn)
Những metric này cũng giúp các so sánh hiệu suất trở nên khách quan hơn. Thay vì dựa vào phỏng đoán hoặc quan sát không đầy đủ, chúng cung cấp các thông tin chi tiết có thể đo lường được về hành vi của model trong các tình huống khác nhau. Bằng cách đó, chúng làm nổi bật những khía cạnh nào của hiệu suất là quan trọng nhất trong mỗi ngữ cảnh.
Ví dụ, việc lựa chọn metric thường phụ thuộc vào ứng dụng. Trong các AI healthcare applications, recall là rất quan trọng vì mục tiêu là xác định càng nhiều trường hợp dương tính càng tốt, ngay cả khi một số trường hợp âm tính bị gắn cờ nhầm. Ngược lại, một bộ lọc spam email có thể ưu tiên precision để tránh việc gắn nhãn sai các email hợp lệ thành spam.
Link to this sectionConfusion matrix: Nền tảng của các metric phân loại#
Confusion matrix là một bảng hai nhân hai đóng vai trò nền tảng để đánh giá các AI model. Nó tổ chức các dự đoán thành bốn danh mục bằng cách so sánh kết quả thực tế với kết quả dự đoán (các câu trả lời mà model đưa ra).
Sự so sánh này cung cấp một cái nhìn chi tiết về hiệu suất của model. Nó tạo thành cơ sở cho các evaluation metrics quan trọng như precision và recall, vốn được tính toán trực tiếp từ các giá trị trong ma trận.
Các hàng của bảng đại diện cho các class thực tế và các cột đại diện cho các class dự đoán. Mỗi ô hiển thị số lượng kết quả trong danh mục đó. Đơn giản mà nói, nó cho thấy bao nhiêu dự đoán là đúng và các loại lỗi mà model đã tạo ra.
Confusion matrix đặc biệt hữu ích khi dữ liệu bị mất cân bằng, nghĩa là một số danh mục có nhiều ví dụ hơn đáng kể so với những danh mục khác. Nó cũng hữu ích khi các loại lỗi khác nhau mang theo các chi phí khác nhau.
Ví dụ, trong phát hiện gian lận, việc bắt được hành vi gian lận là rất quan trọng, nhưng việc gắn cờ sai các giao dịch thực tế cũng có thể gây ra vấn đề. Ma trận này làm rõ tần suất xảy ra của từng loại lỗi.
Link to this sectionCác thành phần của confusion matrix#
Dưới đây là tổng quan về các thành phần khác nhau trong một confusion matrix:
- True positive (TP): Khi model dự đoán đúng một thực thể dương tính, nó được ghi nhận là một true positive. Ví dụ, một computer vision model phân loại đúng một chiếc xe trong hình ảnh.
- True negative (TN): Một true negative xảy ra khi model xác định đúng một thực thể âm tính. Ví dụ, một bộ phân loại email đánh dấu một tin nhắn thông thường là không phải spam.
- False positive (FP): Model tạo ra một false positive khi nó dự đoán sai một kết quả dương tính cho một thực thể thực chất là âm tính. Còn được gọi là lỗi Loại I, điều này có thể xảy ra khi một hệ thống phát hiện gian lận gắn cờ một giao dịch hợp lệ là gian lận.
- False negative (FN): Một false negative được ghi nhận khi model không phát hiện được một trường hợp dương tính và dự đoán sai nó là âm tính. Còn được gọi là lỗi Loại II, điều này có thể xảy ra khi một công cụ chẩn đoán bỏ sót bệnh ở một bệnh nhân thực sự bị bệnh.

Hình 2. Các thành phần của một confusion matrix (Nguồn)
Link to this sectionBiểu diễn trực quan và cách diễn giải confusion matrix#
Confusion matrix được hiển thị ở định dạng lưới. Trục dọc hiển thị các class thực tế, và trục ngang hiển thị các class dự đoán. Các dự đoán đúng xuất hiện dọc theo đường chéo, đại diện cho các true positive và true negative.
Các lỗi nằm ngoài đường chéo, bao gồm các false positive và false negative. Cấu trúc này giúp dễ dàng nhận ra các điểm mạnh và điểm yếu.
Link to this sectionAccuracy là gì trong machine learning?#
Accuracy là một trong những metric được sử dụng rộng rãi nhất để đánh giá hiệu suất của một machine learning model. Nó đo lường tần suất các dự đoán đúng trên tất cả các class. Nói cách khác, nó trả lời một câu hỏi đơn giản: Trong tất cả các dự đoán mà AI model thực hiện, bao nhiêu dự đoán là đúng?
Công thức tính accuracy là số lượng dự đoán đúng (bao gồm cả true positive và true negative) chia cho tổng số dự đoán. Accuracy rất đơn giản để tính toán và dễ hiểu, điều này làm cho nó trở thành một điểm bắt đầu phổ biến trong việc đánh giá model.
Nhìn chung, accuracy đáng tin cậy khi xử lý các tập dữ liệu cân bằng. Tuy nhiên, accuracy thường có thể gây hiểu lầm trong các tập dữ liệu mất cân bằng, nơi một class chiếm ưu thế hơn các class khác. Một model luôn dự đoán class đa số vẫn có thể đạt điểm accuracy cao trong khi lại thất bại trong việc phát hiện các class thiểu số khác.
Ví dụ, trong một tập dữ liệu hình ảnh nơi chỉ có một vài hình ảnh chứa người đi bộ, một model dự đoán “không có người đi bộ” cho mọi hình ảnh vẫn có thể đạt độ chính xác cao nhưng hoàn toàn không phát hiện được người đi bộ thực tế.
Điều này là do bản thân accuracy không cho thấy model mắc phải những loại lỗi nào hoặc tần suất chúng xảy ra. Đó là lý do tại sao cũng cần phải xem xét các metric như precision và recall để hiểu đầy đủ mức độ hiệu quả của một AI model.
Link to this sectionTìm hiểu sâu về precision: Giảm thiểu báo động giả#
Precision là một evaluation metric quan trọng đo lường độ chính xác của các dự đoán dương tính của model. Nó trả lời câu hỏi: Trong tất cả các thực thể được dự đoán là dương tính, bao nhiêu là đúng?
Công thức precision là số lượng true positive chia cho tổng số true positive và false positive. Nó đặc biệt quan trọng khi một dự đoán dương tính sẽ gây tốn kém nếu hóa ra đó là dự đoán sai.

Hình 3. So sánh accuracy và precision. (Nguồn)
Ví dụ, trong phát hiện gian lận, một model có precision thấp có thể gắn cờ nhiều giao dịch hợp lệ là gian lận, gây ra các vấn đề không đáng có cho cả người dùng và đội ngũ hỗ trợ. Một model có precision cao sẽ giảm thiểu rủi ro này bằng cách đảm bảo rằng các giao dịch bị gắn cờ có nhiều khả năng thực sự là gian lận hơn.
Mặc dù precision cao là tốt, các model quá tập trung vào nó có thể trở nên rất chọn lọc, bỏ lỡ các trường hợp dương tính thực tế. Đó là lý do tại sao metric precision thường được kiểm tra cùng với recall để giữ cho hiệu suất được cân bằng.
Link to this sectionRecall là gì?#
Recall là một metric được sử dụng để đo lường mức độ tốt của model trong việc xác định các trường hợp dương tính thực tế. Nó còn được gọi là độ nhạy (sensitivity) hoặc tỷ lệ true positive, và nó trả lời câu hỏi: Trong tất cả các thực thể dương tính thực tế, model đã phát hiện đúng bao nhiêu?
Công thức tính recall là số lượng true positive chia cho tổng số true positive và false negative. Điểm recall cao cho thấy model đang nắm bắt được hầu hết các trường hợp dương tính thực tế trong dữ liệu.
Recall rất cần thiết trong các ngành như chăm sóc sức khỏe, nơi việc không phát hiện ra một tình trạng bệnh có thể làm chậm trễ quá trình điều trị và gây rủi ro cho bệnh nhân. Ngay cả khi một số trường hợp âm tính bị gắn cờ nhầm, việc xác định tất cả các trường hợp thực sự bị bệnh vẫn là ưu tiên hàng đầu.
Tuy nhiên, các model chỉ tập trung vào recall có thể gắn cờ quá nhiều false positive, điều này làm giảm precision và gây ảnh hưởng đến hiệu quả tổng thể của model. Việc cân bằng giữa recall và precision là rất quan trọng cho AI model performance đáng tin cậy.
Link to this sectionSự cân bằng: Sự đánh đổi giữa precision và recall#
Precision và recall thường di chuyển theo các hướng đối nghịch nhau. Khi một chỉ số cải thiện, chỉ số kia có thể giảm xuống. Sự đánh đổi này là một thách thức phổ biến trong các tác vụ machine learning.
Một model precision cao chỉ dự đoán một cái gì đó là dương tính khi nó thực sự tự tin. Điều này làm giảm báo động giả nhưng có thể bỏ lỡ các trường hợp dương tính thực tế, làm giảm recall. Một model cố gắng bắt được mọi trường hợp dương tính sẽ nâng cao recall nhưng có nguy cơ gây ra nhiều báo động giả hơn, làm giảm precision.
Sự đánh đổi này trở nên rõ ràng hơn khi bạn điều chỉnh ngưỡng quyết định (decision threshold) của model. Ngưỡng này là điểm cắt mà một hệ thống sử dụng để biến điểm số hoặc xác suất thành một hành động hoặc nhãn. Việc hạ thấp ngưỡng khiến hệ thống hành động theo hướng dương tính thường xuyên hơn, điều này có thể làm tăng recall nhưng có thể làm giảm precision. Việc nâng cao ngưỡng có tác dụng ngược lại: model dự đoán ít trường hợp dương tính hơn, precision được cải thiện, nhưng recall thường giảm.
Hãy giả sử bạn đang làm việc trên hệ thống phát hiện spam. Model phải cân bằng giữa rủi ro để spam lọt vào hộp thư đến với rủi ro chặn các email thực tế. Một bộ lọc nghiêm ngặt vẫn có thể bỏ sót một số thư rác, trong khi một bộ lọc dễ dãi hơn có thể vô tình chặn các tin nhắn hợp lệ. Sự cân bằng phù hợp phụ thuộc vào trường hợp sử dụng và chi phí của từng loại lỗi.
Link to this sectionÝ nghĩa của đường cong precision–recall#
Đường cong precision-recall hay PR curve cho thấy cách precision và recall thay đổi khi ngưỡng quyết định của model thay đổi. Mỗi điểm đại diện cho một sự đánh đổi khác nhau giữa hai chỉ số này. PR curve đặc biệt hữu ích cho các tập dữ liệu mất cân bằng, nơi một class xuất hiện ít hơn nhiều.
Nó cũng cung cấp cái nhìn sâu sắc hơn so với Receiver Operating Characteristic (ROC) curve, vốn cũng cho thấy mức độ hiệu quả của model trong việc tách biệt các trường hợp dương tính khỏi âm tính ở các ngưỡng quyết định khác nhau. Một model có cả precision cao và recall cao sẽ có đường cong precision–recall nằm gần góc trên bên phải, đây thường là trạng thái lý tưởng.
Link to this sectionGiới thiệu F1-score: Một metric kết hợp để cân bằng#
F1-score cung cấp một giá trị duy nhất thể hiện sự cân bằng giữa precision và recall. F1-score được tính bằng hai lần tích của precision và recall, chia cho tổng của precision và recall. Nó hữu ích khi cả false positive và false negative đều quan trọng, và nó giúp ích khi làm việc với các tập dữ liệu mất cân bằng hoặc khi cần một cái nhìn cân bằng về hiệu suất của model.

Hình 4. Tính F1-score bằng precision và recall (Nguồn)
Link to this sectionVượt xa accuracy, precision và recall#
Trong khi accuracy, precision và recall là cần thiết, các metric khác cung cấp thêm thông tin dựa trên loại model và các đặc điểm của tập dữ liệu.
Dưới đây là một số metric thường được sử dụng giúp đánh giá các khía cạnh khác nhau của hiệu suất:
- Specificity: Đo lường mức độ hiệu quả của model trong việc xác định các trường hợp âm tính thực tế. Nó hữu ích khi việc tránh các false positive là quan trọng.
- AUC: AUC, hay Area Under the Curve (Diện tích dưới đường cong), đưa ra một điểm số duy nhất phản ánh khả năng phân biệt giữa các class của model.
- Log loss: Log loss được sử dụng để đo lường mức độ tự tin của model khi đưa ra dự đoán và phạt nặng hơn đối với các dự đoán sai được đưa ra với sự tự tin cao. Tại đây, confidence đề cập đến mức độ chắc chắn của model về dự đoán của chính nó.
- Multi-label evaluation: Trong các tác vụ đa nhãn, các metric được lấy trung bình trên các nhãn để phản ánh hiệu suất tổng thể của model.
Link to this sectionÁp dụng accuracy, precision và recall trong computer vision#
Bây giờ chúng ta đã hiểu rõ hơn về accuracy, precision và recall, hãy cùng xem qua cách các metric này được áp dụng trong computer vision.
Các computer vision model như Ultralytics YOLO11 hỗ trợ các tác vụ như object detection (phát hiện đối tượng), nơi model xác định đối tượng nào hiện diện trong hình ảnh và định vị chúng bằng cách sử dụng bounding boxes. Mỗi dự đoán bao gồm cả nhãn đối tượng và vị trí của nó, điều này làm cho việc đánh giá trở nên phức tạp hơn so với việc chỉ kiểm tra xem một nhãn có đúng hay không.

Hình 5. Ví dụ về việc sử dụng Ultralytics YOLO11 để phát hiện đối tượng. (Nguồn)
Hãy xem xét một ứng dụng retail nơi camera được sử dụng để tự động theo dõi sản phẩm trên kệ. Một object detection model có thể xác định các mặt hàng như hộp ngũ cốc, lon nước ngọt hoặc chai nước và đánh dấu vị trí của chúng.
Trong trường hợp này, precision cho chúng ta biết bao nhiêu trong số các mặt hàng được phát hiện là thực sự chính xác. Precision cao nghĩa là hệ thống tránh được các false positive, chẳng hạn như dán nhãn nhầm một cái bóng hoặc vật thể nền là sản phẩm. Recall cho thấy bao nhiêu sản phẩm thực tế trên kệ mà model đã phát hiện được. Recall cao nghĩa là ít mặt hàng bị bỏ sót hơn, điều này rất quan trọng để kiểm kê hàng tồn kho chính xác.
Accuracy vẫn có thể cung cấp một thước đo chung về độ đúng đắn, nhưng trong môi trường này, việc bỏ sót dù chỉ vài sản phẩm hoặc phát hiện các mặt hàng không tồn tại có thể gây ảnh hưởng lớn đến việc quản lý hàng hóa. Đó là lý do tại sao các developer xem xét precision, recall và accuracy cùng nhau để đảm bảo hệ thống vừa đáng tin cậy vừa thực tế cho việc sử dụng trong thế giới thực.
Link to this sectionAccuracy, precision và recall: Các điểm mấu chốt#
Accuracy, precision và recall mỗi chỉ số đều thể hiện các khía cạnh khác nhau về hiệu suất của một machine learning model. Việc chỉ dựa vào một metric có thể gây hiểu lầm.
Các công cụ và metric như confusion matrix, precision–recall curves và F1-score giúp làm rõ những sự đánh đổi và hướng dẫn các quyết định cải thiện ML model. Bằng cách chọn kết hợp đúng các metric cho một giải pháp AI cụ thể, bạn có thể đảm bảo các model luôn chính xác, đáng tin cậy và hiệu quả trong các ứng dụng thực tế.
Khám phá cộng đồng đang phát triển của chúng tôi! Hãy xem qua GitHub repository của chúng tôi để tìm hiểu thêm về AI. Bạn đã sẵn sàng bắt đầu các dự án computer vision của mình chưa? Hãy xem qua các tùy chọn cấp phép của chúng tôi. Khám phá AI trong nông nghiệp và vision AI trong robot bằng cách truy cập các trang giải pháp của chúng tôi!






