2

gensim で、doc2vec モデルをトレーニングするための入力として文字列を指定すると、次のエラーが発生します。

TypeError('don't know how to handle uri %s' % repr(uri))

この質問Doc2vec : TaggedLineDocument()を参照しまし たが、入力形式についてはまだ疑問があります。

documents = TaggedLineDocument('myfile.txt')

myFile.txt には、各ドキュメントまたは文字列の各行に、リストのリストまたは個別のリストとしてトークンを含める必要がありますか?

For eg- 書類が 2 つあります。

Doc 1 : 機械学習は、パターン認識の研究から発展したコンピューター サイエンスのサブフィールドです。

Doc 2 : Arthur Samuel は、機械学習を「コンピューターに学習能力を与える研究分野」と定義しました。

それで、どのmyFile.txtように見えるべきですか?

ケース 1 : 各文書の各行の単純なテキスト

機械学習は、パターン認識の研究から発展したコンピューター サイエンスのサブフィールドです。

Arthur Samuel は、機械学習をコンピュータに学習能力を与える研究分野と定義しました。

ケース 2 : 各ドキュメントのトークンを持つリストのリスト

[ ["Machine", "learning", "is", "a", "subfield", "of", "computer", "science", "that", "evolved", "from", "the", "study", "of", "pattern", "recognition"]

["Arthur", "Samuel", "defined", "machine", "learning", "as", "a", "Field", "of", "study", "that", "gives", "computers" ,"the", "ability", "to", "learn"] ]

ケース 3 : 各ドキュメントのトークンのリストを別の行に表示する

["Machine", "learning", "is", "a", "subfield", "of", "computer", "science", "that", "evolved", "from", "the", "study", "of", "pattern", "recognition"]

["Arthur", "Samuel", "defined", "machine", "learning", "as", "a", "Field", "of", "study", "that", "gives", "computers" ,"the", "ability", "to", "learn"]

そして、テストデータでそれを実行しているとき、ドキュメントベクトルを予測したい文の形式は何ですか? 以下のケース1またはケース2のようにする必要がありますか?

model.infer_vector(testSentence, alpha=start_alpha, steps=infer_epoch)

testSentence は次のようになります。

ケース 1 : 文字列

testSentence = "Machine learning is an evolving field"

ケース 2 : トークンのリスト

testSentence = ["Machine", "learning", "is", "an", "evolving", "field"]
4

1 に答える 1

5

TaggedLineDocumentソース ファイル (またはファイルのようなオブジェクト) が、1 行に 1 つずつ、スペースで区切られたトークンであることを期待する便利なクラスです。(つまり、最初の質問で「ケース 1」と呼ばれるものです。)

ただし、このコーパスが (1) TaggedDocument のように、およびリストを持つオブジェクトを反復的に返す限りDoc2Vec、コーパスとしてgensim にフィードする独自の反復可能なオブジェクトを作成できます。(2)最初の語彙調査とその後のトレーニング パスの両方に複数のパスが必要なため、複数回繰り返すことができます。documentsnext()wordstagsDoc2Veciter

このメソッドは、個々の のようなオブジェクトの属性とinfer_vector()同様に、トークンのリストを取ります。(つまり、2 番目の質問で「ケース 2」と呼ばれるものです。)wordsTaggedDocument

于 2016-09-27T04:13:50.490 に答える