4

エラスティックサーチの初心者です。Python ElasticSearch クライアントを介して ElasticSearch を使用してインデックスを作成した一連のテキスト ドキュメントがあります。次に、Python と scikit-learn を使用して、ドキュメントで機械学習を行いたいと考えています。私は以下を達成する必要があります。

  1. ElasticSearch アナライザーを使用してテキストを処理します (ステミング、小文字など)。
  2. 処理されたドキュメント (または分析されたトークン) をインデックスから取得します。
  3. 処理されたドキュメントを分類のために Term-Document Matrix に変換します (おそらく scikit-learn の CountVectorizer を使用します)。あるいは、ElasticSearch から直接 TDM を取得する方法があるかもしれません。

これについて正しい方法を考えるのに苦労しています.ElasticSearchからの簡単な実装はないようです.

たとえば、未分析のドキュメントを ES から取得して Python で処理することはできますが、ES のアナライザーを利用したいと考えています。ES から一連のドキュメントを照会するたびに ES のアナライザーを使用できますが、既に分析されてインデックスに格納されているはずなので、何かを 2 回実行しているように思えます。または、ES に各ドキュメントの用語ベクトルを取得し、各ドキュメントの結果からトークンとカウントを手動で抽出し、トークンとカウントを指定して TDM を手動でコード化するように指示できると思います。それが今のところ私が考えることができる最も直接的な方法のようです。

機械学習パッケージを操作するために、ES インデックスから Python に分析されたテキストの TDM を取得するための、より簡単で直接的な方法はありますか?

4

1 に答える 1