Khi nào tôi nên vượt ra ngoài k hàng xóm gần nhất


9

Đối với nhiều dự án máy học mà chúng tôi thực hiện, chúng tôi bắt đầu với trình phân loại k Neighbor Neighbor. Đây là một phân loại bắt đầu lý tưởng vì chúng ta thường có đủ thời gian để tính toán tất cả các khoảng cách và số lượng tham số bị giới hạn (k, số liệu khoảng cách và trọng số)

Tuy nhiên, điều này thường có hiệu ứng mà chúng tôi gắn bó với phân loại knn vì sau này trong dự án không có chỗ để chuyển sang phân loại khác. Điều gì sẽ là lý do tốt để thử một phân loại mới. Rõ ràng là những hạn chế về bộ nhớ và thời gian, nhưng có trường hợp nào khi một bộ phân loại khác thực sự có thể cải thiện độ chính xác?


Đây hoàn toàn là học thuật hay nó sẽ được sử dụng trong công nghiệp?
Bác sĩ Rob Lang

1
Hầu hết các ứng dụng của chúng tôi được triển khai trong ngành (vì vậy thời gian tính toán và thời gian tính toán là vấn đề)

Câu trả lời:


3

k-NN khái quát theo nghĩa rất hạn chế. Nó chỉ đơn giản là sử dụng các linh mục trơn tru (hoặc giả định liên tục). Giả định này ngụ ý rằng các mẫu gần với không gian đặc trưng rất có thể thuộc về cùng một lớp. Không có sự đều đặn về chức năng trong phân phối mẫu có thể được phục hồi bằng k-NN.

Do đó, nó đòi hỏi các mẫu đào tạo đại diện, có thể cực kỳ lớn, đặc biệt là trong các trường hợp không gian đặc trưng chiều cao. Tệ hơn, những mẫu này có thể không có sẵn. Do đó, nó không thể học bất biến. Nếu các mẫu có thể chịu một số biến đổi mà không thay đổi nhãn của chúng và mẫu đào tạo không chứa các mẫu được chuyển đổi theo tất cả các cách được chấp nhận, k-NN sẽ không bao giờ nhận ra các mẫu biến đổi không được trình bày trong quá trình đào tạo. Điều này đúng, ví dụ, đối với các hình ảnh bị thay đổi hoặc xoay, nếu chúng không được biểu diễn dưới dạng bất biến trước khi chạy k-NN. k-NN thậm chí không thể trừu tượng từ các tính năng không liên quan.

Một ví dụ hơi giả tạo khác đang theo sau. Hãy tưởng tượng rằng mẫu thuộc về các lớp khác nhau được phân phối định kỳ (ví dụ: theo sin - nếu nó nhỏ hơn 0, thì các mẫu thuộc về một lớp và lớn hơn, thì các mẫu thuộc về một lớp khác). Tập huấn luyện là hữu hạn. Vì vậy, nó sẽ nằm trong một khu vực hữu hạn. Bên ngoài khu vực này lỗi nhận dạng sẽ là 50%. Người ta có thể tưởng tượng hồi quy logistic với các hàm cơ sở định kỳ sẽ hoạt động tốt hơn nhiều trong trường hợp này. Các phương pháp khác sẽ có thể học các quy tắc khác trong phân phối mẫu và ngoại suy tốt.

Vì vậy, nếu một người nghi ngờ rằng tập dữ liệu có sẵn không phải là đại diện và cần phải đạt được một số biến đổi của các mẫu, thì đây là trường hợp, trong đó người ta phải vượt ra ngoài k-NN.


Cảm ơn câu trả lời của bạn (và cảm ơn BartoszKP vì đã cố gắng cải thiện nó). Đúng là knn không thể tìm thấy các mẫu yêu cầu chuyển đổi (trừ khi bạn bắt đầu sử dụng số liệu khoảng cách kỳ lạ (và không chính xác)). Đó là một lý do tốt để thử một phân loại khác, tôi đoán rằng Svm là một lựa chọn rõ ràng sau đó. Tôi không đủ quen thuộc với svm để nói, nhưng nó sẽ không đòi hỏi kiến ​​thức cụ thể về mẫu bạn đang tìm kiếm để xác định kernel?

Đúng. Việc lựa chọn kernel sẽ phụ thuộc vào các mẫu. Hạt nhân Gaussian sẽ có các thuộc tính tương tự như phương pháp k-NN. Các hạt nhân tiêu chuẩn khác có thể cũng không phù hợp. Tuy nhiên, ít nhất, người ta có thể thử sử dụng chúng.

Như được ngụ ý bởi @ Necro0x0Der, bất kỳ sự cải thiện nào dọc theo các dòng này sẽ phụ thuộc vào mẫu (trong ví dụ sin, tính tuần hoàn) là tự nhiên đối với tham số. Đó là, tham số hóa (lựa chọn kernel) xác định cấu trúc (hiệu quả, số liệu) của không gian biểu diễn. Nếu bạn có thể xác định (có lẽ bằng cách đoán có giáo dục) một số cấu trúc phù hợp bằng một số phương tiện, thì hãy thử tham số mẫu cho phù hợp. Lưu ý rằng cuối cùng, điều này cho phép trình phân loại của bạn dễ dàng tìm thấy một số loại tính năng có liên quan.

3

Nếu bạn bị hạn chế bởi độ phức tạp tính toán, cây quyết định (Quinal, 1986) rất khó bị đánh bại (đặc biệt là khi khung cung cấp chuyển đổi trực tiếp mô hình DT thành một loạt các ifcâu lệnh - như Accord.NET ).

Đối với dữ liệu chiều cao, khái niệm khoảng cách, dựa trên k-NN, trở nên vô giá trị (Kriegel, Kröger, Zimek, 2009) (cũng: bài viết Wikipedia ). Vì vậy, các phân loại khác, như SVM (Corter, Vapnik, 1995) hoặc Rừng ngẫu nhiên (Breiman, 2001) , có thể hoạt động tốt hơn.

Người giới thiệu:


Tất nhiên, kích thước cao không phải là một giới hạn cố định, trong hầu hết các trường hợp, các tính năng của chúng tôi đủ biểu cảm rằng khoảng cách hoạt động. Tất nhiên đây có thể là một điểm quan trọng. Có lẽ tôi nên làm rõ với một ví dụ. Giả sử chúng tôi có một trình phân loại có độ chính xác 93%, điều này có thể chấp nhận được, nhưng bây giờ chúng tôi có thể cố gắng cải thiện trình phân loại hoặc tìm các tính năng mới. Tất cả phụ thuộc vào các tính năng mới và dữ liệu, nhưng tôi đang tìm hướng dẫn về quyết định này.

@Rhand Có vẻ như đó là một quyết định cấp quản lý dự án. Nếu giải pháp hiện tại là chấp nhận được, tại sao tinker với nó? Thật là phí thời gian. Nếu nó không được chấp nhận, hãy xác định chính xác hơn những gì bạn muốn cải thiện (tốc độ, độ chính xác, v.v.).
BartoszKP

Không chỉ quản lý dự án, câu hỏi là làm thế nào để có được độ chính xác tối đa (đây là câu hỏi của tôi) và hướng nào là tốt nhất để thực hiện. Bạn đề nghị svm và rừng ngẫu nhiên vì kích thước có thể quá cao, đó là một khả năng tôi có thể thử nghiệm để xem độ chính xác có cải thiện không và đó là loại câu trả lời tôi đang tìm kiếm.

Vâng, điều này mặt khác là một câu hỏi rất rộng. Không có quy tắc chung nào cho thấy trình phân loại X tốt hơn Y. Bạn chỉ nên thử một số số phân loại và sau đó thực hiện xác thực chéo để chọn mô hình chẳng hạn.
BartoszKP

3

kNN là hữu ích cho các mẫu dữ liệu lớn

Tuy nhiên nhược điểm của nó là:

  1. Xu hướng theo giá trị của k.
  2. Độ phức tạp tính toán
  3. Giới hạn bộ nhớ
  4. Là một thuật toán lười học có giám sát
  5. Dễ bị lừa bởi các thuộc tính không liên quan.
  6. Độ chính xác dự đoán có thể nhanh chóng suy giảm khi số lượng thuộc tính tăng lên.

Nó thường chỉ hiệu quả nếu dữ liệu đào tạo lớn và đào tạo rất nhanh.


Tôi không nhìn vào phân cụm, nhưng tại phân loại

@ Hãy đến đây chúng tôi đi, cảm ơn vì ghi chú iliasfl
Iancovici
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.