Xây dựng trình phân loại nhị phân chỉ với dữ liệu tích cực và không có nhãn


11

Tôi có 2 bộ dữ liệu, một bộ có các trường hợp tích cực về những gì tôi muốn phát hiện và một bộ có các trường hợp không được gắn nhãn. Tôi có thể sử dụng phương pháp nào?

Ví dụ, giả sử chúng tôi muốn hiểu phát hiện email spam dựa trên một vài đặc điểm email có cấu trúc. Chúng tôi có một bộ dữ liệu gồm 10000 email spam và một bộ dữ liệu gồm 100000 email mà chúng tôi không biết liệu chúng có phải là thư rác hay không.

Làm thế nào chúng ta có thể giải quyết vấn đề này (mà không dán nhãn thủ công bất kỳ dữ liệu chưa được gắn nhãn nào)?

Chúng tôi có thể làm gì nếu chúng tôi có thêm thông tin về tỷ lệ thư rác trong dữ liệu chưa được gắn nhãn (nghĩa là nếu chúng tôi ước tính rằng từ 20 đến 40% trong số 100000 email không được gắn nhãn là thư rác) thì sao?


1
Bài đăng nên được thêm các thẻ bán giám sát và pu-learning. Các thẻ này vẫn không tồn tại và hiện tại tôi không thể tạo chúng.
DaL

@DanLevin Vâng, [tag: semi-giám sát-học tập] có ý nghĩa. Đã thêm :) Tôi không chắc chắn với phần pu-learning (ít nhất là tôi không biết về nó), vì vậy người khác có thể làm điều đó!
Dawny33

1
Học tập PU là một trường hợp cụ thể của học tập bán giám sát. Nó ít phổ biến hơn (7K kết quả tại Google) sau đó được giám sát bán (kết quả 298K tại Google) rằng câu hỏi này là PU (bộ dữ liệu được dán nhãn chỉ là tích cực). Trong khi chủ đề được thảo luận về học viện (ví dụ: cs.uic.edu/~liub/NSF/PSC-IIS-0307239.html ) có thể câu hỏi này sẽ ở một mình với thẻ này trong một thời gian khá lâu.
DaL

Câu trả lời:


7

Đề xuất của tôi sẽ là cố gắng xây dựng một số loại phân cụm trên dữ liệu chưa được gắn nhãn của bạn mà gần như một bộ dữ liệu được gắn nhãn. Lý do là nhiều hay ít như sau:

  • Bạn có một số vectơ đặc trưng để thể hiện các tài liệu của bạn
  • Dựa trên vectơ đặc trưng đó, bạn có thể đưa ra một số cụm khác nhau, với các phương thức phân cụm mờ, thô hoặc dựa trên lớp
  • Biết một ví dụ tích cực trông như thế nào, bạn có thể nhanh chóng đánh giá sự tương đồng tổng thể của một cụm với cụm tích cực của bạn
  • Biết rằng thực sự chỉ nên có hai cụm, bạn có thể điều chỉnh các siêu đường kính trên phương pháp phân cụm của mình để hai số liệu trên gần hơn và gần hơn với sự hài lòng
  • Với hai cụm, bạn có khả năng xấp xỉ gần đúng với một tập dữ liệu được gắn nhãn, sau đó bạn có thể sử dụng như một tập hợp tiêu chuẩn bạc để sắp xếp mô hình của mình

Hy vọng điều đó có ý nghĩa, nếu bạn đặc biệt tìm kiếm các thuật toán phân cụm, một số ít mà cá nhân tôi thích có thể tốt trong kịch bản này là FLAMEtsne . Thay phiên, nhìn vào thư viện gensim ngoạn mục trong python sẽ giúp bạn đi một chặng đường dài về phía cụm bạn đang tìm kiếm.

Hy vọng rằng sẽ giúp và có ý nghĩa, để lại nhận xét nếu bạn có bất kỳ câu hỏi.


Cảm ơn câu trả lời của bạn. Tôi có hiểu đúng không: điểm bắt đầu của bạn là hợp nhất 2 bộ dữ liệu?
nassimhddd

@ cafe876 Đó chắc chắn là một cách để bắt đầu, và sau đó cố gắng cơ bản tạo lại một cụm gần đúng với bản gốc.
indico

3

Vấn đề của bạn thuộc về khuôn khổ học tập PU (chỉ tích cực, rất nhiều không ghi nhãn).

Nó cũng gần với các khuôn khổ phổ biến hơn của việc học có giám sát Semi (một vài mặt tích cực và tiêu cực, rất nhiều thứ không được gắn nhãn).

Có nhiều tài liệu khảo sát mà bạn có thể tra cứu trên thực địa.

Một phương pháp cổ điển trong lĩnh vực, cũng đã được thử nghiệm về thư rác như trong trường hợp của bạn, là đồng đào tạo Trong khi đào tạo, bạn xây dựng hai người học độc lập (ví dụ: một dựa trên nội dung thư và một dựa trên sơ đồ gửi) và bạn sử dụng kết quả của một trong những để đào tạo người khác và ngược lại.


2

Huấn luyện 2 mô hình tổng quát, một mô hình cho mỗi tập dữ liệu (chỉ spam, spam cộng với ham), sẽ cung cấp cho bạn xác suất để một biểu dữ liệu được rút ra từ cùng một phân phối xác suất của dữ liệu đào tạo. Chỉ định email là thư rác hoặc ham dựa trên mô hình nào cung cấp cho bạn xác suất cao nhất của tài liệu phát sinh từ dữ liệu đào tạo được sử dụng để đào tạo nó. Các mô hình thế hệ ví dụ là RBM, autoencoder (trong trường hợp đó, mô hình nào có lỗi tái cấu trúc thấp nhất). Có khả năng một số mô hình thế hệ Bayes cũng sẽ gán xác suất cho một điểm dữ liệu dựa trên một số dữ liệu đào tạo.

Mặc dù vậy, lựa chọn tốt nhất là dành thời gian để sắp xếp một tập dữ liệu thứ hai chỉ chứa ham. Điều đó sẽ cung cấp cho bạn độ chính xác phân loại cao hơn. Giả sử tỷ lệ thư rác thấp hơn để ham email, điều đó không quá khó. Bạn thậm chí có thể sử dụng Mechanical Turk nếu bạn thiếu thời gian hoặc tài nguyên (hoặc thực tập sinh \ sinh viên tốt nghiệp hoặc lao động giá rẻ khác).


Cảm ơn câu trả lời của bạn. Đó là một ví dụ tuyệt vời về những gì các mô hình thế hệ có thể làm mà các mô hình phân biệt đối xử không thể.
nassimhddd
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.