Doc2Vec:ラベルのテキストを取得します

ペトルペトロフ

Doc2Vec予測を取得しようとしているモデルをトレーニングしました

私が使う

test_data = word_tokenize("Филип Моррис Продактс С.А.".lower())
model = Doc2Vec.load(model_path)
v1 = model.infer_vector(test_data)
sims = model.docvecs.most_similar([v1])
print(sims)

戻り値

[('624319', 0.7534812092781067), ('566511', 0.7333904504776001), ('517382', 0.7264763116836548), ('523368', 0.7254455089569092), ('494248', 0.7212602496147156), ('382920', 0.7092794179916382), ('530910', 0.7086726427078247), ('513421', 0.6893941760063171), ('196931', 0.6776881814002991), ('196947', 0.6705600023269653)]

次に、私はこの番号のテキストが何であるかを知りたいと思いました

model.docvecs['624319']

しかし、それは私にベクトル表現だけを返します

array([ 0.36298314, -0.8048847 , -1.4890883 , -0.3737898 , -0.00292279,
   -0.6606688 , -0.12611026, -0.14547637,  0.78830665,  0.6172428 ,
   -0.04928801,  0.36754376, -0.54034036,  0.04631123,  0.24066721,
    0.22503968,  0.02870891,  0.28329515,  0.05591608,  0.00457001],
  dtype=float32)

それで、モデルからこのラベルのテキストを取得する方法はありますか?電車のデータセットの読み込みには時間がかかるので、別の方法を見つけようとしています。

J.テイラー

docベクトルを元のテキストに直接変換する方法はありません(語順などの情報は、テキストの縮小の過程で失われます->ベクトル)。

しかし、あなたがすることができ、あなたの作成しているとき、あなたのコーパスリストにそのインデックスの各文書をタグ付けすることによって、元のテキストを取得TaggedDocumentするために秒Doc2Vec()と呼ばれるリストに含まれている文/ドキュメントのコーパスがあるとしましょうtextsenumerate()このように使用iして、各文に一意のインデックスを生成し、それをtags引数として渡しますTaggedDocument

tagged_data = []
for i, t in enumerate(texts):
    tagged_data.append(TaggedDocument(words=word_tokenize(c.lower()), tags=[str(i)]))

model = Doc2Vec(vector_size=VEC_SIZE,
                window=WINDOW_SIZE,
                min_count=MIN_COUNT,
                workers=NUM_WORKERS)

model.build_vocab(tagged_data)

次に、トレーニング後、から結果を取得model.docvecs.most_similar()すると、各タプルの最初の番号が、コーパステキストの元のリストへのインデックスになります。したがって、たとえば、実行model.docvecs.most_similar([some_vector])して取得した場合

[('624319', 0.7534812092781067), ('566511', 0.7333904504776001), ('517382', 0.7264763116836548), ('523368', 0.7254455089569092), ('494248', 0.7212602496147156), ('382920', 0.7092794179916382), ('530910', 0.7086726427078247), ('513421', 0.6893941760063171), ('196931', 0.6776881814002991), ('196947', 0.6705600023269653)]

...次に、次の('624319', 0.7534812092781067)コマンドを使用して最初のコーパスリストにインデックスを付けることにより、最初の結果の元のドキュメントを取得できますtexts[624319]

または、ループして最も類似したテキストをすべて取得したい場合は、次のようにすることができます。

most_similar_docs = []
for d in model.docvecs.most_similar([some_vector]):
    most_similar_docs.append(texts[d[0]])

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

doc2vecは人工的な「テキスト」で機能しますか?

分類Dev

gensim Doc2Vecは、ポジティブコンテキストとネガティブコンテキストの同じ文を区別しますか?

分類Dev

クラスタリングのためにDoc2Vecのドキュメント出力ベクトルを正規化しない理由はありますか?

分類Dev

Gensim doc2vecモデルをプレーンテキスト(.txt)として保存する方法はありますか?

分類Dev

gensim 0.11.1のDoc2Vecからドキュメントベクトルを取得するにはどうすればよいですか?

分類Dev

Doc2Vecを使用して2つのドキュメント間の類似性を測定します

分類Dev

Doc2Vec文を段落ベクトルに結合する

分類Dev

Doc2Vecモデルは、ドキュメントタグをシンボルに分割します

分類Dev

doc2vecの階層トレーニング:同じドキュメントの文に同じラベルを割り当てるとどのように機能しますか?

分類Dev

Gensim Doc2vecモデル:事前にトレーニングされたdoc2vecモデルを使用して取得されたコーパスの類似性を計算する方法は?

分類Dev

段落/ doc2vecベクトルをクラスタリングする場合の適切な距離メトリックは何ですか?

分類Dev

Doc2vecは、2つのドキュメントベクトルではなく、1つのドキュメントのみのデータを出力します。

分類Dev

テキストデータが徐々に増加している場合、doc2vecを使用できますか?

分類Dev

ラベルから可視テキストのリストを取得します

分類Dev

TensorflowでDoc2Vecのベクターを使用する方法

分類Dev

新しいドキュメントのためのkmeansを使用したDoc2Vecクラスタリング

分類Dev

ラベルのテキスト値の現在の値を取得します

分類Dev

AngularJS-フィールドのラベルテキストを取得します

分類Dev

gensim word2vecまたはdoc2vecを使用してvocaburayを2回ビルドできますか?

分類Dev

Doc2Vecはタグの表現を学習しますか?

分類Dev

Python word2vec、doc2vecを使用して2つのドキュメント間の類似性を計算する

分類Dev

Doc2vecモデルの精度を測定する方法は?

分類Dev

Doc2Vecの最も類似したベクトルが入力ベクトルと一致しません

分類Dev

単語ベクトルは、doc2vec DBOWの段落ベクトルとどのように共同トレーニングされますか?

分類Dev

doc2vec: 推論されたドキュメントからドキュメントをプルする

分類Dev

doc2vecモデルを使用して、ドキュメントと比較した1つの単語またはいくつかの単語の類似性を計算するにはどうすればよいですか?

分類Dev

doc2vecモデルから語彙サイズを取得する方法はありますか?

分類Dev

gensim doc2vecは、事前にトレーニングされたモデルからより多くのドキュメントをトレーニングします

分類Dev

最初のdivのテキストボックスからコンテンツを取得し、ラベル形式で2番目のdivに表示しますか?

Related 関連記事

  1. 1

    doc2vecは人工的な「テキスト」で機能しますか?

  2. 2

    gensim Doc2Vecは、ポジティブコンテキストとネガティブコンテキストの同じ文を区別しますか?

  3. 3

    クラスタリングのためにDoc2Vecのドキュメント出力ベクトルを正規化しない理由はありますか?

  4. 4

    Gensim doc2vecモデルをプレーンテキスト(.txt)として保存する方法はありますか?

  5. 5

    gensim 0.11.1のDoc2Vecからドキュメントベクトルを取得するにはどうすればよいですか?

  6. 6

    Doc2Vecを使用して2つのドキュメント間の類似性を測定します

  7. 7

    Doc2Vec文を段落ベクトルに結合する

  8. 8

    Doc2Vecモデルは、ドキュメントタグをシンボルに分割します

  9. 9

    doc2vecの階層トレーニング:同じドキュメントの文に同じラベルを割り当てるとどのように機能しますか?

  10. 10

    Gensim Doc2vecモデル:事前にトレーニングされたdoc2vecモデルを使用して取得されたコーパスの類似性を計算する方法は?

  11. 11

    段落/ doc2vecベクトルをクラスタリングする場合の適切な距離メトリックは何ですか?

  12. 12

    Doc2vecは、2つのドキュメントベクトルではなく、1つのドキュメントのみのデータを出力します。

  13. 13

    テキストデータが徐々に増加している場合、doc2vecを使用できますか?

  14. 14

    ラベルから可視テキストのリストを取得します

  15. 15

    TensorflowでDoc2Vecのベクターを使用する方法

  16. 16

    新しいドキュメントのためのkmeansを使用したDoc2Vecクラスタリング

  17. 17

    ラベルのテキスト値の現在の値を取得します

  18. 18

    AngularJS-フィールドのラベルテキストを取得します

  19. 19

    gensim word2vecまたはdoc2vecを使用してvocaburayを2回ビルドできますか?

  20. 20

    Doc2Vecはタグの表現を学習しますか?

  21. 21

    Python word2vec、doc2vecを使用して2つのドキュメント間の類似性を計算する

  22. 22

    Doc2vecモデルの精度を測定する方法は?

  23. 23

    Doc2Vecの最も類似したベクトルが入力ベクトルと一致しません

  24. 24

    単語ベクトルは、doc2vec DBOWの段落ベクトルとどのように共同トレーニングされますか?

  25. 25

    doc2vec: 推論されたドキュメントからドキュメントをプルする

  26. 26

    doc2vecモデルを使用して、ドキュメントと比較した1つの単語またはいくつかの単語の類似性を計算するにはどうすればよいですか?

  27. 27

    doc2vecモデルから語彙サイズを取得する方法はありますか?

  28. 28

    gensim doc2vecは、事前にトレーニングされたモデルからより多くのドキュメントをトレーニングします

  29. 29

    最初のdivのテキストボックスからコンテンツを取得し、ラベル形式で2番目のdivに表示しますか?

ホットタグ

アーカイブ