Tôi đang đọc báo cáo về giải pháp chiến thắng của một cuộc thi Kaggle ( Phân loại phần mềm độc hại ). Các báo cáo có thể được tìm thấy trong bài diễn đàn này . Vấn đề là một vấn đề phân loại (chín lớp, số liệu là tổn thất logarit) với 10000 phần tử trong tập tàu, 10000 phần tử trong tập kiểm tra.
Trong cuộc thi, các người mẫu được đánh giá so với 30% của bộ thử nghiệm. Một yếu tố quan trọng khác là các mô hình đã hoạt động rất tốt (độ chính xác gần 100%)
Các tác giả đã sử dụng các kỹ thuật sau đây:
Một kỹ thuật quan trọng khác mà chúng tôi đưa ra là Học tập Semisupervised. Trước tiên, chúng tôi tạo nhãn giả của bộ thử nghiệm bằng cách chọn xác suất tối đa của mô hình tốt nhất của chúng tôi. Sau đó, chúng tôi dự đoán bộ thử nghiệm một lần nữa theo kiểu xác thực chéo với cả dữ liệu huấn luyện và dữ liệu thử nghiệm. Ví dụ: tập dữ liệu kiểm tra được chia thành 4 phần A, B, C và D. Chúng tôi sử dụng toàn bộ dữ liệu đào tạo và dữ liệu kiểm tra A, B, C với nhãn giả của chúng, cùng với tập huấn luyện mới và chúng tôi dự đoán kiểm tra đặt D.
Phương pháp tương tự được sử dụng để dự đoán A, B và C. Cách tiếp cận này, được phát minh bởi Xiaozhou, hoạt động tốt một cách đáng ngạc nhiên và nó làm giảm mất xác nhận chéo cục bộ, mất LB công cộng và mất LB riêng. Mô hình học tập Semisupervised tốt nhất có thể đạt được 0,0023 trong mất nhật ký LB riêng, đây là điểm số tốt nhất trong tất cả các giải pháp của chúng tôi.
Tôi thực sự không thấy làm thế nào nó có thể cải thiện kết quả. Có phải vì 30% bộ kiểm tra đã bị "rò rỉ" và đó là một cách để sử dụng thông tin này?
Hoặc có bất kỳ lý do lý thuyết giải thích tại sao nó hoạt động?