2011-02-03 102 views
17

Có lẽ tôi khá ngu ngốc nhưng tôi không thể tìm thấy câu trả lời thỏa mãn: Sử dụng thuật toán KNN, giả sử k = 5. Bây giờ tôi cố gắng phân loại một đối tượng không rõ bằng cách lấy 5 hàng xóm gần nhất. Phải làm gì, nếu sau khi xác định 4 hàng xóm gần nhất, 2 đối tượng gần nhất (hoặc nhiều hơn) gần nhất có cùng khoảng cách? Đối tượng nào của 2 người trở lên này nên được chọn làm người hàng xóm gần nhất thứ 5?K Thuật toán lân cận gần nhất

Cảm ơn trước :)

Trả lời

16

Những đối tượng trong số này 2 hoặc nhiều hơn nên được chọn là hàng xóm gần nhất lần thứ 5?

Nó thực sự phụ thuộc vào cách bạn muốn triển khai.

Hầu hết các thuật toán sẽ làm một trong ba điều:

  1. Bao gồm tất cả các điểm khoảng cách bình đẳng, vì vậy xây dựng dự toán này, họ sẽ sử dụng 6 điểm, chứ không phải 5.
  2. Sử dụng "đầu tiên" phát hiện ra điểm của hai xa bằng nhau.
  3. Chọn ngẫu nhiên (thường với hạt giống nhất quán, vì vậy kết quả có thể tái tạo) chỉ từ 2 điểm được tìm thấy.

Điều đó đang được nói, hầu hết các thuật toán dựa trên tìm kiếm xuyên tâm có giả định cố hữu về tình trạng dừng, trong trường hợp đó, nó thực sự không quan trọng tùy chọn nào bạn chọn. Nói chung, bất kỳ lý thuyết nào trong số chúng, về mặt lý thuyết, cung cấp các giá trị mặc định hợp lý (đặc biệt là vì chúng là các điểm xa nhất trong xấp xỉ và phải có các trọng số hiệu quả thấp nhất).

+1

Ah okay, cảm ơn bạn rất nhiều :) (Thông tin này nên được thêm vào bài viết wikipedia về KNN ...) – Gwaihir

+0

Ngoài ra câu trả lời này phải được chấp nhận @Gwaihir. – gsamaras

6

Một và tùy chọn thú vị là sử dụng hàng xóm gần nhất như thế này:

  • Bạn tính toán khoảng cách của 5 nước láng giềng gần nhất từ ​​mỗi lớp mẫu: bạn sẽ có 5 Khoảng cách từ mỗi lớp.

  • Sau đó, bạn nhận được khoảng cách trung bình cho mỗi lớp.

  • Khoảng cách trung bình thấp hơn sẽ là lớp bạn sẽ chỉ định cho mẫu.

Cách này có hiệu quả đối với bộ dữ liệu của các lớp chồng lên nhau.

2

Có thể bạn có thể thử knn mờ. Đối với sự lựa chọn của k Tôi nghĩ rằng rất nhiều thí nghiệm nên được thực hiện để có được kết quả phân loại tốt nhất.

5

Nếu bạn có chức năng khoảng cách khác, bạn có thể sử dụng chức năng này để ngắt kết nối. Ngay cả một người xấu có thể làm công việc, tốt hơn nếu bạn có một số chẩn đoán. Ví dụ, nếu bạn biết rằng một trong những tính năng được coi là tính toán khoảng cách chính của bạn là quan trọng hơn, chỉ sử dụng này để giải quyết cà vạt.

Nếu không phải như vậy, hãy chọn ngẫu nhiên. Chạy nhiều lần chương trình của bạn trên cùng một tập kiểm tra, để kiểm tra xem sự lựa chọn ngẫu nhiên có quan trọng không.

Các vấn đề liên quan