次のような word2vec C コードから生成されたバイナリ ファイルから事前トレーニング済みのベクトルをロードしています。
model_1 = Word2Vec.load_word2vec_format('vectors.bin', binary=True)
これらのベクトルを使用して、 にまだベクトルが存在しない可能性のある単語を含む文のベクトル表現を生成していますvectors.bin
。たとえば、vectors.bin
「ヨーグルト」という単語に関連付けられたベクトルがない場合、試してみます
yogurt_vector = model_1['yogurt']
これは理にKeyError: 'yogurt'
かなっています。私が望むのは、対応するベクトルを持たない文の単語を取り、それらの表現を に追加できるようにすることmodel_1
です。この投稿から、C ベクトルのトレーニングを続けることができないことを認識しています。では、新しいモデルをトレーニングする方法はありますか?たとえばmodel_2
、ベクトルのない単語に対して とマージmodel_2
しmodel_1
ますか?
あるいは、少なくとも KeyError を回避できるように、実際に単語を取得しようとする前に、モデルに単語が含まれているかどうかをテストする方法はありますか?