Apa n-gram menjadi kontraproduktif?

13

Saat melakukan pemrosesan bahasa alami, seseorang dapat mengambil corpus dan mengevaluasi probabilitas kata berikutnya yang muncul dalam urutan n. n biasanya dipilih sebagai 2 atau 3 (bigrams dan trigram).

Adakah titik yang diketahui di mana pelacakan data untuk rantai ke-n menjadi kontraproduktif, mengingat jumlah waktu yang diperlukan untuk mengklasifikasikan korpus tertentu satu kali pada tingkat itu? Atau mengingat jumlah waktu yang diperlukan untuk mencari probabilitas dari kamus (struktur data)?

jonsca
sumber
terkait dengan utas lainnya tentang kutukan dimensionalitas
Antoine

Jawaban:

2

Adakah titik yang diketahui di mana pelacakan data untuk rantai ke-n menjadi kontraproduktif, mengingat jumlah waktu yang diperlukan untuk mengklasifikasikan korpus tertentu satu kali pada tingkat itu?

Anda harus mencari tabel atau plot yang membingungkan dengan ukuran n-gram .

Contoh:

http://www.itl.nist.gov/iad/mig/publications/proceedings/darpa97/html/seymore1/image2.gif :

masukkan deskripsi gambar di sini

http://images.myshared.ru/17/1041315/slide_16.jpg :

masukkan deskripsi gambar di sini

http://images.slideplayer.com/13/4173894/slides/slide_45.jpg :

masukkan deskripsi gambar di sini

Kekacauan tergantung pada model bahasa Anda, ukuran n-gram, dan kumpulan data. Seperti biasa, ada trade-off antara kualitas model bahasa, dan berapa lama waktu yang dibutuhkan untuk menjalankannya. Model bahasa terbaik saat ini didasarkan pada jaringan saraf, sehingga pilihan ukuran n-gram kurang menjadi masalah (tetapi kemudian Anda harus memilih ukuran filter jika Anda menggunakan CNN, di antara hyperparameter lainnya ...).

Franck Dernoncourt
sumber
12

Ukuran Anda "kontra produktif" bisa sewenang-wenang - mis. dengan banyak memori cepat dapat diproses lebih cepat (lebih masuk akal).

Setelah mengatakan itu, pertumbuhan eksponensial masuk ke dalamnya dan dari pengamatan saya sendiri tampaknya berada di sekitar tanda 3-4. (Saya belum melihat studi khusus).

Trigram memang memiliki keunggulan dibandingkan bigrams tetapi kecil. Saya tidak pernah menerapkan 4 gram tetapi peningkatannya akan jauh lebih sedikit. Mungkin urutan besarnya serupa berkurang. Misalnya. jika trigram meningkatkan hal-hal 10% dari bigrams, maka perkiraan yang masuk akal untuk 4-gram mungkin peningkatan 1% dari trigram.

Namun pembunuh sebenarnya adalah memori dan pengenceran jumlah numerik. Dengan10,000 corpus kata yang unik, maka model bigram perlu 100002nilai-nilai; model trigram perlu100003; dan 4 gram akan dibutuhkan100004. Sekarang, oke, ini akan menjadi array yang jarang, tetapi Anda mendapatkan gambarannya. Ada pertumbuhan eksponensial dalam jumlah nilai, dan probabilitasnya menjadi jauh lebih kecil karena dilusi jumlah frekuensi. Perbedaan antara pengamatan 0 atau 1 menjadi jauh lebih penting dan pengamatan frekuensi masing-masing 4-gram akan turun.

Anda akan memerlukan corpus besar untuk mengimbangi efek dilusi, tetapi Hukum Zipf mengatakan corpus besar juga akan memiliki kata-kata yang lebih unik ...

Saya berspekulasi bahwa inilah mengapa kita melihat banyak model bigram dan trigram, implementasi, dan demo; tetapi tidak ada contoh 4-gram yang berfungsi penuh.

menang
sumber
2
Ringkasan yang bagus. Halaman 48-53 ("diatribe sinis panjang bertele-tele") dari makalah berikut memberikan rincian lebih lanjut tentang itu (makalah ini mencakup beberapa hasil untuk n-gram pesanan lebih tinggi juga) research.microsoft.com/~joshuago/longcombine.pdf
Yevgeny
2
Tautannya sudah mati. Berikut referensi lengkap dan tautan ke versi arXiv: Joshua T. Goodman (2001). Sedikit Kemajuan dalam Pemodelan Bahasa: Versi Diperpanjang. Penelitian Microsoft: Redmond, WA (AS). Laporan teknis MSR-TR-2001-72.
scozy