Contoh: Saya memiliki kalimat dalam deskripsi pekerjaan: "Java senior engineer in UK".
Saya ingin menggunakan model pembelajaran yang mendalam untuk memperkirakannya sebagai 2 kategori: English
dan IT jobs
. Jika saya menggunakan model klasifikasi tradisional, hanya dapat memprediksi 1 label dengan softmax
fungsi di lapisan terakhir. Dengan demikian, saya dapat menggunakan 2 model jaringan saraf untuk memprediksi "Ya" / "Tidak" dengan kedua kategori, tetapi jika kita memiliki lebih banyak kategori, itu terlalu mahal. Jadi apakah kita memiliki model pembelajaran dalam atau mesin untuk memprediksi 2 atau lebih kategori pada saat yang sama?
"Edit": Dengan 3 label dengan pendekatan tradisional, itu akan dikodekan oleh [1,0,0] tetapi dalam kasus saya, itu akan dikodekan oleh [1,1,0] atau [1,1,1]
Contoh: jika kita memiliki 3 label, dan sebuah kalimat mungkin cocok dengan semua label ini. Jadi jika output dari fungsi softmax adalah [0,45, 0,35, 0,2] kita harus mengklasifikasikannya menjadi 3 label atau 2 label, atau mungkin satu? masalah utama ketika kita melakukannya adalah: apakah ambang yang baik untuk diklasifikasikan menjadi 1, atau 2, atau 3 label?
sumber
Jawaban:
Anda dapat mencapai klasifikasi multi-label ini dengan mengganti softmax dengan aktivasi sigmoid dan menggunakan crossentropy biner alih-alih crossentropy kategoris sebagai fungsi loss. Maka Anda hanya perlu satu jaringan dengan unit output / neuron sebanyak yang Anda miliki label.
sumber