0
を使用してモデルをdoc2vec再教育するためにどのように、私は、モデルを訓練し、以下のファイルが保存されている:Gensim:Doc2Vecモデリングでは、以前のword2vecモデル
1. model
2. model.docvecs.doctag_syn0.npy
3. model.syn0.npy
4. model.syn1.npy
5. model.syn1neg.npy
しかし、私は文書をラベル付けするための新しい方法を持っているし、訓練したいです再びモデル。単語ベクトルは以前のバージョンからすでに取得されているからです。そのモデルを再利用する方法はありますか(たとえば、以前のw2vの結果をトレーニングの初期ベクトルとして使用するなど)。誰もそれをする方法を知っていますか?
(1)新しい 'sentences'に新しい単語/タグがある場合、それらは未知としてスキップされます。 (2)新しい「文章」の長さが異なる場合、進捗報告と学習率の低下が適切に更新されないことがある。 (3)有用な値に対してモデルをわずかに「先頭」にし、最初の語彙検索をスキップすることもできますが、 'train()'自体はそれ以上高速化することはありません。 – gojomo
@gojomo、それに良いアイデアは? – HappyCoding
すべての例を混在させてトレーニングするのが最善です。コーパスサイズのヒントとして適切なパラメータを指定して 'train()'を呼び出すと、以前にロードされたモデルから開始することができます。あるいは、新しいボキャブラリ/タグに適応するためには、新しい組み込みコーパスを使用して 'build_vocab()'を実行することができます。その後、元のモデルからベクトルを手作業でコピーすることによって、モデルを '先頭開始'にします。 – gojomo