Phân loại với dữ liệu không xác định một phần


11

Giả sử tôi muốn tìm hiểu một bộ phân loại lấy một vectơ số làm đầu vào và đưa ra một nhãn lớp làm đầu ra. Dữ liệu đào tạo của tôi bao gồm một số lượng lớn các cặp đầu vào-đầu ra.

Tuy nhiên, khi tôi đến thử nghiệm trên một số dữ liệu mới, dữ liệu này thường chỉ hoàn thành một phần. Ví dụ: nếu vectơ đầu vào có độ dài 100, chỉ 30 phần tử có thể được cung cấp các giá trị và phần còn lại là "không xác định".

Để làm ví dụ cho điều này, hãy xem xét nhận dạng hình ảnh trong đó người ta biết rằng một phần của hình ảnh bị chặn. Hoặc xem xét phân loại theo nghĩa chung nơi người ta biết rằng một phần của dữ liệu bị hỏng. Trong mọi trường hợp, tôi biết chính xác các phần tử trong vectơ dữ liệu là các phần chưa biết.

Tôi đang tự hỏi làm thế nào tôi có thể học một trình phân loại sẽ hoạt động cho loại dữ liệu này? Tôi chỉ có thể đặt các phần tử "chưa biết" thành một số ngẫu nhiên, nhưng cho rằng thường có nhiều phần tử chưa biết hơn các phần tử đã biết, điều này có vẻ không phải là một giải pháp tốt. Hoặc, tôi có thể thay đổi ngẫu nhiên các yếu tố trong dữ liệu huấn luyện thành "không xác định" và huấn luyện với các dữ liệu này thay vì dữ liệu hoàn chỉnh, nhưng điều này có thể yêu cầu lấy mẫu toàn bộ tất cả các kết hợp của các yếu tố đã biết và chưa biết.

Cụ thể tôi đang nghĩ về các mạng lưới thần kinh, nhưng tôi mở cho các phân loại khác.

Có ý kiến ​​gì không? Cảm ơn!


en.m.wikipedia.org/wiki/Missing_data có thể là một nơi để bắt đầu.
Hatshepsut

Tôi nghĩ rằng học tập bán giám sát là trường hợp dữ liệu đào tạo không được dán nhãn đầy đủ. Trong trường hợp của tôi, tất cả dữ liệu đào tạo của tôi được dán nhãn, nhưng các phần riêng lẻ của dữ liệu kiểm tra là "không xác định".
Karnivaurus

Học bán giám sát với mạng Ladder: github.com/CquilAI/ladder
itdxer

Câu trả lời:


2

Tôi nghĩ rằng có một cách hợp lý để làm cho nó hoạt động với Mạng nơ-ron.

Đặt giá trị của bạn không xác định là 0. Bây giờ trong đào tạo, bạn chọn một đầu vào và đặt ngẫu nhiên một số giá trị của nó về 0 với xác suất , trong đó p là phần dự kiến ​​của các đầu vào bị thiếu trong thời gian thử nghiệm. Lưu ý rằng cùng một đầu vào ở các lần lặp khác nhau sẽ có 0 ở các vị trí khác nhau.p

Tôi chưa từng thấy nó được thực hiện trước đây nhưng điều này sẽ rất giống với thực hiện Dropout (một phương pháp chính quy hóa nổi tiếng trong Mạng nơ-ron) trong các nơ-ron đầu vào của bạn, thay vì các nơ-ron ẩn. Tôi không nghĩ rằng đó là một ý tưởng tốt để làm điều đó nói chung, nhưng nếu bạn bị ép buộc (như trường hợp của bạn), thì ít nhất nó đủ gần về mặt lý thuyết với một cái gì đó đã được biết là có tác dụng.


1

Tôi nghĩ rằng có một số lựa chọn hoạt động với bất kỳ phân loại:

  • Áp đặt các giá trị còn thiếu bằng một giá trị duy nhất, như giá trị trung bình hoặc trung bình từ tập huấn luyện hoặc một số giá trị được dự đoán từ các phần được quan sát của đầu vào, hoặc chỉ sử dụng một số ngẫu nhiên hoặc hằng số.
  • Sử dụng một số giá trị khác nhau cho ẩn số và tổng hợp kết quả, ví dụ: trung bình chúng

Ngoài ra, bạn có thể sử dụng các trình phân loại dựa trên cây (ví dụ như các khu rừng ngẫu nhiên) và nếu một cây cần đánh giá sự phân chia trên một tính năng bị thiếu, nó có thể chuyển dữ liệu xuống cả hai nút con.

Tùy chọn thứ ba là sử dụng bộ phân loại tổng quát mô hình phân phối khớp đầy đủ trong đó là đầu vào của bạn và là nhãn phân loại. Với điều đó, bạn sẽ lý tưởng hóa bên lề các phần chưa biết của , tức là bạn sẽ thử bất kỳ giá trị nào cho các phần chưa biết của và tính trung bình các kết quả có trọng số bởi xác suất của việc từ chối đó. Điều này có thể được thực hiện ở dạng phân tích ở dạng đóng đối với một số phân loại, ví dụ như mô hình Phân tích phân biệt tuyến tính, hoặc bằng cách lấy mẫu các ẩn số, ví dụ cho Máy Boltzmann bị hạn chế hoặc các biến thể sâu của chúng (có liên quan đến mạng nơ ron chuyển tiếp).p(x,y)xyxx


Tôi không nghĩ rằng nó sẽ làm việc. Sử dụng một ví dụ điển hình từ tầm nhìn máy tính, mỗi pixel của hình ảnh có thể được liên kết với phần khác nhau của một đối tượng. Ví dụ, pixel (50,50) của hình 1 là mắt của mèo, nhưng mèo được di chuyển một chút trong ảnh 2, vì vậy (50, 50) chỉ là một pixel của nền. Nếu vị trí của NA, tức là. tắc ngẫu nhiên, thay đổi theo quan sát, việc cắt cụt của bạn sẽ không hoạt động.
horaceT
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.