Mengapa Lucene IDF memiliki +1 yang tampaknya tambahan?

8

Dari dokumen Lucene

IDF=1+log(numDocsdocFreq+1)

Dalam referensi lain (mis. Wikipedia ), IDF biasanya dihitung sebagai atau untuk menghindari menyelam oleh 0.log(numDocsdocFreq)catatan(numDocsdocFreq+1)

Saya juga menyadari Lucene menggunakan daripada untuk menghitung TF, tetapi pemahaman saya adalah bahwa ini hanya transformasi yang disukai, mungkin untuk menghindari .xcatatan(x)catatan(0)

Adakah yang bisa menjelaskan +1 tambahan itu dalam istilah IDF?

Greg Dean
sumber

Jawaban:

9

Semua skema pembobotan TF-IDF hanyalah metode heuristik untuk memberikan bobot lebih pada ketentuan yang tidak biasa. Saya tidak yakin bahwa skema TF-IDF umumnya memiliki dasar statistik yang kuat di belakangnya (lihat referensi 1), kecuali untuk pengamatan bahwa TF-IDF cenderung menghasilkan hasil yang lebih baik daripada jumlah kata yang sederhana. Karena kualitas hasil adalah pembenaran utama (satu-satunya?) Untuk TF-IDF di tempat pertama, orang bisa berpendapat bahwa mencoba metode Anda dengan dan tanpa +1 dan memilih yang terbaik akan baik-baik saja.

Jika saya membaca utas belajar sckit ini dengan benar, tampaknya Anda bukan orang pertama yang mengajukan pertanyaan serupa tentang menambahkan 1 ke skor IDF. Konsensus di utas itu adalah +1 juga berperilaku tidak standar. Saya hanya membaca skimnya, tetapi utas yang muncul tidak berisi dukungan atau justifikasi +1 yang tegas.

Jadi pilihan +1 memiliki efek menempatkan batas bawah pada semua nilai IDF di 1 daripada di 0. Ini sama dengan menambahkanedokumen yang berisi setiap kata untuk korpus Anda. Tidak yakin mengapa itu bisa membantu, tapi mungkin itu dalam konteks tertentu. Seseorang bahkan mungkin memperlakukan beberapa parameterc di c+catatan(numDocsdocFreq +1) sebagai parameter penyetelan, untuk memberi Anda rangkaian skema IDF yang lebih fleksibel c sebagai batas bawah mereka.

Ketika batas bawah IDF adalah nol, produk frekuensi istilah×IDFmungkin 0 untuk beberapa istilah, sehingga istilah-istilah itu tidak diberi bobot sama sekali dalam prosedur pembelajaran; secara kualitatif, istilah tersebut sangat umum sehingga tidak memberikan informasi yang relevan dengan tugas NLP. Ketika batas bawah bukan nol, istilah ini akan memiliki pengaruh lebih besar.

  1. John Lafferty dan Guy Lebanon. " Kernel Difusi pada Manifold Statistik ." Jurnal Pembelajaran Mesin. 2005
Sycorax berkata Reinstate Monica
sumber
Terima kasih atas jawaban yang baik. Saya berharap mendapatkan ide yang lebih baik mengapa batas bawah 1 untuk IDF berguna. Menarik bahwa orang lain memiliki pertanyaan yang sama, tanpa jawaban nyata.
Greg Dean
@GregDean Saya khawatir penjelasan ini adalah yang terbaik yang bisa saya kelola. Saya melakukan penelitian lebih lanjut untuk mencoba dan menemukan sesuatu yang lebih pasti, tetapi tidak memiliki banyak keberuntungan.
Sycorax berkata Reinstate Monica