Saya sedang bekerja untuk meningkatkan classifier yang diawasi yang ada, untuk mengklasifikasikan urutan {protein} milik kelas tertentu (Neuropeptide hormone precursors), atau tidak.
Ada sekitar 1.150 "positif" yang diketahui, dengan latar belakang sekitar 13 juta sekuens protein ("Tidak diketahui / latar belakang beranotasi buruk"), atau sekitar 100.000 protein relevan yang ditinjau, dijelaskan dengan berbagai sifat (tetapi sangat sedikit dijelaskan dalam secara eksplisit) cara "negatif").
Implementasi saya sebelumnya melihat ini sebagai masalah klasifikasi biner: Set positif = Protein ditandai sebagai Neuropeptida. Set negatif: Sampel acak sebanyak 1.300 sampel (total) dari antara protein yang tersisa dari distribusi panjang yang kira-kira sama.
Itu berhasil, tetapi saya ingin sangat meningkatkan kemampuan diskriminatif mesin (Saat ini, sekitar 83-86% dalam hal akurasi, AUC, F1, diukur oleh CV, pada beberapa set negatif yang diambil secara acak).
Pikiranku adalah untuk: 1) Membuat ini masalah multikelas, memilih 2-3 kelas protein yang pasti akan menjadi negatif, berdasarkan sifat / kelas fungsionalnya, bersama dengan (mungkin) set sampel acak lainnya. (Prioritas di sini adalah himpunan negatif yang memiliki karakteristik / fitur yang serupa dengan himpunan positif, sementara masih memiliki karakteristik yang menentukan). 2) Pembelajaran satu kelas - Akan menyenangkan, tetapi seperti yang saya pahami, ini dimaksudkan hanya untuk deteksi anomali, dan memiliki kinerja yang lebih buruk daripada pendekatan diskriminatif.
*) Saya pernah mendengar pembelajaran PU, yang kedengarannya rapi, tapi saya pemrograman N00b, dan saya tidak tahu ada implementasi yang ada untuk itu. (Dalam Python / sci-kit, pelajari).
Jadi, apakah pendekatan 1 masuk akal dalam POV teoretis? Apakah ada cara terbaik untuk membuat beberapa set negatif? (Saya juga bisa menggunakan protein "negatif" [50K] besar-besaran, tetapi semuanya sangat berbeda satu sama lain, jadi saya tidak tahu seberapa baik penggolong akan menangani mereka sebagai satu campuran besar, tidak seimbang). ). Terima kasih!