Bagaimana word2vec dapat digunakan untuk mengidentifikasi kata-kata yang tidak terlihat dan menghubungkannya dengan data yang sudah terlatih

11

Saya sedang mengerjakan model gensim word2vec dan merasa sangat menarik. Saya tertarik menemukan bagaimana kata yang tidak diketahui / tidak terlihat ketika diperiksa dengan model akan bisa mendapatkan istilah yang sama dari model yang dilatih.

Apakah ini mungkin? Bisakah word2vec di-tweak untuk ini? Atau pelatihan corpus perlu memiliki semua kata yang ingin saya temukan kesamaan.

gaurus
sumber

Jawaban:

9

Setiap algoritma yang berhubungan dengan data teks memiliki kosakata. Dalam kasus word2vec, kosakata terdiri dari semua kata dalam corpus input, atau setidaknya yang di atas ambang frekuensi minimum.

Algoritma cenderung mengabaikan kata-kata yang berada di luar kosa kata mereka. Namun ada beberapa cara untuk membingkai ulang masalah Anda sehingga pada dasarnya tidak ada kata-kata Kosakata Keluar.

Ingat bahwa kata-kata hanyalah "token" di word2vec. Mereka bisa berupa ngrams atau bisa juga berupa surat. Salah satu cara untuk mendefinisikan kosakata Anda adalah dengan mengatakan bahwa setiap kata yang muncul setidaknya X kali ada dalam kosakata Anda. Kemudian "suku kata" yang paling umum (ngram huruf) ditambahkan ke kosakata Anda. Kemudian Anda menambahkan huruf individual ke kosakata Anda.

Dengan cara ini Anda dapat mendefinisikan kata apa saja sebagai salah satu

  1. Sepatah kata dalam kosakata Anda
  2. Seperangkat suku kata dalam kosakata Anda
  3. Gabungan huruf dan suku kata dalam kosakata Anda
jamesmf
sumber
3

word2vec memperlakukan kata sebagai atom. Untuk mendapatkan vektor yang bermakna untuk kata-kata yang tidak dikenal, Anda juga harus melakukannya

  • ubah apa atom-atom ini, misalnya beralih ke huruf n-gram seperti pada jawaban jamesmf, atau
  • gunakan model berbeda yang secara eksplisit melihat apa yang ada di dalam kata-kata Anda, misalnya model CWE di https://github.com/Leonard-Xu/CWE mudah digunakan.
Joachim Wagner
sumber
1
github.com/facebookresearch/fastText tampaknya berfungsi dengan baik
Joachim Wagner
ya, saya mencobanya tetapi tidak berhasil dengan tugas-tugas seperti segmentasi morfologis.
gaurus
2

Korpus pelatihan harus memiliki semua kata yang ingin Anda temukan kesamaannya.

Franck Dernoncourt
sumber
0

Word2Vec dan FastText gagal jika kata itu tidak ada dalam kosakata. Melempar kesalahan Ini memberikan daftar skor untuk kata-kata yang berhubungan Tapi kata yang tak terlihat tidak akan ada dalam kosakata bukan? Jadi, bagaimana cara memecahkan masalah kata yang tak terlihat?

Sam
sumber