Mô hình KNN (K-Nearest Neighbors)

Một phần của tài liệu Báo cáo cuối kỳ học phần phân tích dữ liệu Đề tài phân tích dữ liệu thời tiết ở australia (Trang 67 - 73)

Phần 8. XÂY DỰNG CÁC MÔ HÌNH VÀ ĐÁNH GIÁ ĐỘ CHÍNH XÁC, GIẢI THÍCH Ý NGHĨA CỦA MÔ HÌNH, DỰ BÁO

8.3 Mô hình KNN (K-Nearest Neighbors)

Thuật toán K-Nearest Neighbors (KNN) là một phương pháp học máy có giám sát được sử dụng để giải quyết các vấn đề phân loại và thu hồi quy. Evelyn Fix và Joseph Hodges đã phát triển kỹ thuật toán này vào năm 1951, sau đó được Thomas Cover mở rộng. Bài viết khám phá các nguyên tắc cơ bản, hoạt động và phát triển khai kỹ thuật KNN.

Hoạt động của thuật toán KNN: Thuật toán K-Nearest Neighbors (KNN) hoạt động theo nguyên tắc tương tự, trong đó nó dự đoán nhãn hoặc giá trị của một điểm dữ

liệu mới bằng cách xem xét các nhãn hoặc giá trị của K láng giềng gần nhất của nó trong tạo dữ liệu đào tạo.

Hình 64 : Mô hình KNN

1. Chọn mức độ ưu tiên giá trị của K: K biểu thị số lượng hàng xóm gần nhất cần được xem xét khi đưa ra dự đoán.

2. Tính khoảng cách: Để đo lường tương quan giữa tiêu điểm dữ liệu và tạo dữ liệu, khoảng cách Euclidean được sử dụng. Khoảng cách được tính toán giữa mỗi dữ liệu trong dữ liệu và tiêu điểm.

3. Tìm hàng xóm gần nhất: K điểm dữ liệu có khoảng cách nhỏ nhất đến điểm tiêu điểm là những điểm lân cận gần nhất.

4. Bỏ phiếu cho Phân loại hoặc Lấy Trung bình cho Hồi quy:

+ Trong bài toán phân loại, nhãn lớp K - gần nhất được xác định bằng cách thực hiện bỏ phiếu đa số. Lớp có nhiều lần xuất hiện nhất trong số các xóm sẽ trở thành lớp được mong đợi cho điểm dữ liệu tiêu chuẩn.

+ Trong bài toán phục hồi, nhãn lớp được tính bằng cách lấy giá trị trung bình của các mục tiêu giá trị của K lân cận gần nhất. Giá trị trung bình được tính toán trở thành đầu ra dự kiến cho tiêu điểm dữ liệu.

- Dưới đây là ma trận nhầm lẫn: Dựa trên ma trận nhầm lẫn của mô hình KNN ta có:

Bảng 2 : Ma trận nhầm lẫn của mô hình KNN

Actual\Predicted 0 (Không mưa) 1 (Có mưa) Tổng

0 (Không mưa) 20,248 (TN) 1,565 (FP) 21,813

1 (Có mưa) 4,026 (FN) 2,319 (TP) 6,345

Tổng 24,274 3,884 28,158

- Ưu điểm:

+ Mô hình có độ chính xác tổng thể (Accuracy) là 80.25%, cho thấy KNN hoạt động tốt trên tập dữ liệu thời tiết trong việc phân loại các ngày không mưa (0).

+ Số lượng dự đoán đúng cho lớp Không mưa (TN = 20,248) rất cao, điều này giúp xây dựng khả năng dự đoán chính xác khi ngày hôm sau không xảy ra mưa.

- Hạn chế:

+ Có tới 4,026 mẫu thuộc lớp Có mưa bị dự đoán nhầm sang lớp Không mưa.

Điều này khiến Recall cho lớp 1 (Có mưa) chỉ đạt 36.57%, một kết quả rất thấp. Điều này có thể gây hậu quả nghiêm trọng trong thực tế, vì nhiều ngày mưa không được dự báo chính xác.

+ Precision thấp (59.71%) cho lớp Có mưa: Có nhiều trường hợp mô hình dự đoán sai ngày không mưa thành có mưa, dẫn đến lãng phí tài nguyên thiên nhiên hoặc chuẩn bị không cần thiết.

+ Tác động thực tế: Trong bối cảnh dự báo thời tiết, việc bỏ sót những ngày mưa (FN cao, Recall thấp) sẽ dẫn đến không có biện pháp phòng ngừa kịp thời, như chuẩn bị dụng cụ che chắn mưa hay cảnh báo người dân. Do đó, với bài toán dự báo mưa, độ nhạy (Recall) của lớp 1 cần được cải thiện đáng kể.

Hình 65 : Ma trận nhầm lẫn mô hình KNN

- Dựa trên biểu đồ biểu diễn các chỉ số hiệu suất của mô hình KNN dưới đây, ta có thể đưa ra một số nhận xét như sau:

+ Mô hình đạt độ chính xác tổng thể là 80%. Đây là một kết quả tương đối tốt, đặc biệt nếu các lớp trong dữ liệu không quá mất cân bằng. Tuy nhiên, chỉ số này không nói lên toàn bộ hiệu suất nếu bài toán cần ưu tiên cho một lớp cụ thể (ví dụ: lớp mưa).

+ Precision đạt 80%, nghĩa là khi mô hình dự đoán ngày mưa (lớp 1), có 80%

khả năng dự đoán đó là đúng. Precision cao cho thấy mô hình hạn chế việc "báo động giả" (False Positive – dự đoán sai ngày mưa trong khi thực tế không mưa), điều này có ý nghĩa trong các vấn đề như giảm lãng phí tài nguyên khi chuẩn bị cho một ngày không mưa.

+ Recall đạt 65%, nghĩa là mô hình chỉ phát hiện được 65% số ngày thực sự có mưa. Một Recall ở mức này cho thấy vẫn còn một số lượng lớn các "ngày mưa thực sự" bị bỏ sót khi mô hình dự đoán (False Negative). Trong bài toán dự báo thời tiết,

nơi "bỏ sót ngày mưa" có thể gây tổn thất lớn (như nông nghiệp hoặc giao thông bị ảnh hưởng), việc Recall chưa cao có thể là một hạn chế lớn của mô hình.

+ F1-Score đạt 67%, là chỉ số đánh giá trung hòa giữa Precision và Recall. Điều này phản ánh mô hình có hiệu suất vừa phải trong việc dự đoán ngày mưa, nhưng có thể cải thiện thêm để đạt hiệu quả cao hơn.

Hình 66 : Các chỉ số hiệu suất mô hình KNN - Đánh giá tổng quan:

+ Hiệu suất mô hình ở mức tạm chấp nhận được, đặc biệt trong việc hạn chế các dự đoán nhầm (Precision = 80%) cho lớp "Có mưa".

+ Tuy nhiên, việc bỏ sót các trường hợp lớp 1 (Có mưa) (Recall = 65%) có thể dẫn đến những vấn đề nghiêm trọng trong các ứng dụng thực tế.

+ Sự mất cân bằng giữa Precision và Recall cho thấy mô hình KNN chưa được tối ưu hoàn toàn để xử lý bài toán dự đoán mưa – nơi lớp "Có mưa" cần được ưu tiên phát hiện chính xác hơn.

- Biểu đồ ROC dưới đây thể hiện:

+ Đường ROC:

+ Đường ROC nằm phía trên đường chéo (đường màu xám), chứng minh rằng mô hình KNN có hiệu quả hơn so với một mô hình ngẫu nhiên (random guess).

+ ROC cong lên trên, điều này phản ánh rằng mô hình duy trì một sự cân đối tốt giữa TPR (True Positive Rate) và FPR (False Positive Rate) ở phần lớn các ngưỡng.

+ AUC = 0.76:

+ Điểm AUC = 0.76 cho thấy mô hình KNN có khả năng phân biệt giữa hai lớp (Có mưa và Không mưa) khá tốt, mặc dù chưa đạt mức xuất sắc (AUC>0.9).

+ Trong bối cảnh bài toán dự đoán thời tiết (yêu cầu dự đoán mưa chính xác hơn do hậu quả của việc dự đoán sai), AUC = 0.76 là một kết quả khả quan nhưng vẫn có thể cải thiện thêm.

Hình 67 : ROC Curve mô hình KNN

- Qua hình dưới đây, ta có thể thấy hiệu năng mô hình KNN qua đồ thị như sau:

+ Hiệu năng trung bình: Mô hình hoạt động hiệu quả với độ chính xác cao

(Precision ≥ 0.7) ở các mức Recall thấp và trung bình (Recall ≤ 0.5). Tuy nhiên, khi mở rộng để phát hiện nhiều hơn, hiệu suất giảm đáng kể.

+ Mức độ cân bằng Precision và Recall: Để chọn ngưỡng phù hợp, cần ưu tiên một cân bằng hợp lý giữa Precision và Recall, nơi Precision không quá thấp nhưng Recall vẫn ở mức cao để giảm bỏ sót các ngày có mưa.

+ Hạn chế rõ ràng ở Precision: Trong bài toán dự đoán thời tiết, việc Precision giảm mạnh khi Recall tiệm cận 1.0 là vấn đề có thể ảnh hưởng lớn. Hệ thống dự báo có thể đưa ra quá nhiều cảnh báo sai vào những ngày không có mưa.

Hình 68 : Precision-Recall Curve mô hình KNN

Một phần của tài liệu Báo cáo cuối kỳ học phần phân tích dữ liệu Đề tài phân tích dữ liệu thời tiết ở australia (Trang 67 - 73)

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

(86 trang)