Tại sao bạn cần mở rộng quy mô dữ liệu trong KNN


15

Ai đó có thể vui lòng giải thích cho tôi tại sao bạn cần bình thường hóa dữ liệu khi sử dụng K hàng xóm gần nhất.

Tôi đã cố gắng tìm kiếm cái này, nhưng dường như tôi vẫn không thể hiểu nó.

Tôi tìm thấy liên kết sau:

https://discuss.analyticsvidhya.com/t/why-it-is-n cần thiết-to-n normalize-in-knn/2715

Nhưng trong phần giải thích này, tôi không hiểu tại sao một phạm vi lớn hơn trong một trong các tính năng lại ảnh hưởng đến dự đoán.


Tôi nghĩ rằng bình thường hóa phải được biện minh từ quan điểm chủ đề. Về cơ bản, điều quan trọng là những gì xác định khoảng cách giữa các điểm. Bạn phải tìm một định nghĩa số học thuận tiện về khoảng cách phản ánh định nghĩa đối tượng của khoảng cách. Theo kinh nghiệm hạn chế của tôi, tôi đã bình thường hóa trong một số nhưng không phải tất cả các hướng dựa trên các cân nhắc về vấn đề.
Richard Hardy

1
Để biết ví dụ hướng dẫn, vui lòng xem stats.stackexchange.com/questions/140711 .
whuber

Câu trả lời:


26

Thuật toán láng giềng k gần nhất dựa trên biểu quyết đa số dựa trên tư cách thành viên nhóm của 'k' mẫu gần nhất cho một điểm kiểm tra nhất định. Độ gần của các mẫu thường dựa trên khoảng cách Euclide.

Hãy xem xét một vấn đề phân loại hai lớp đơn giản, trong đó mẫu Lớp 1 được chọn (màu đen) cùng với đó là hàng xóm 10 gần nhất (màu xanh lá cây). Trong hình đầu tiên, dữ liệu không được chuẩn hóa, trong khi ở hình thứ hai thì có.

Dữ liệu không được chuẩn hóa Dữ liệu với chuẩn hóa

x1

Bình thường hóa giải quyết vấn đề này!


1
Câu trả lời này là hoàn toàn chính xác, nhưng tôi sợ các hình minh họa có thể bị đánh lừa vì những biến dạng liên quan. Điểm có thể được thực hiện tốt hơn bằng cách vẽ cả hai để hai trục trong mỗi trục có cùng tỷ lệ.
whuber

1
Tôi thấy khó khăn để phù hợp với tất cả các điểm dữ liệu trong cùng một tỷ lệ cho cả hai số liệu. Do đó, tôi đã đề cập trong một lưu ý rằng quy mô của các trục là khác nhau.
kedarps

1
Khó khăn đó thực sự là điểm phản ứng của bạn! Một cách để vượt qua nó là không sử dụng một phạm vi cực đoan như vậy. Chênh lệch tỷ lệ 5: 1, thay vì chênh lệch 1000: 1, vẫn sẽ giúp bạn ghi điểm tốt. Một cách khác là vẽ bức tranh một cách trung thực: biểu đồ phân tán trên cùng dường như sẽ là một đường thẳng đứng của các điểm.
whuber

2
@whuber, tôi hiểu nhầm bình luận đầu tiên của bạn. Đã sửa các ô, hy vọng nó tốt hơn bây giờ!
kedarps

1
@Undertherainbow Đúng vậy!
kedarps

5

Giả sử bạn đã có bộ dữ liệu (m "ví dụ" bởi n "tính năng") và tất cả ngoại trừ một thứ nguyên tính năng có các giá trị nghiêm ngặt trong khoảng từ 0 đến 1, trong khi một thứ nguyên tính năng duy nhất có các giá trị nằm trong khoảng từ -1000000 đến 1000000. Khi lấy khoảng cách euclide giữa các cặp "ví dụ", các giá trị của kích thước tính năng nằm trong khoảng từ 0 đến 1 có thể trở nên không chính xác và thuật toán về cơ bản sẽ dựa vào một chiều có giá trị lớn hơn đáng kể. Chỉ cần làm việc một số ví dụ tính toán khoảng cách euclide và bạn có thể hiểu quy mô ảnh hưởng đến tính toán lân cận gần nhất.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.