2017-02-23 8 views
7

私は、各テキストが急速に成長している大量のテキストを持っています。私は類似検索を実装する必要があります。テキスト類似性のためのelasticsearchを持つWord2vec

考えられるのは、各単語をword2vecとして埋め込み、各単語の埋め込みをベクトル加算することによって各テキストを正規化されたベクトルとして表現することです。テキストへの後続の追加は、新しい単語ベクトルをそれに追加することによって、得られたテキストのベクトルを洗練させるだけである。

各テキストの正規化されたベクトルの座標のみを文書に格納することで、余弦類似度にelasticsearchを使用できますか?もしそうなら、そのような検索のための適切なインデックス構造は何ですか?

答えて

3

このelasticsearch pluginは、この検索の複雑さは、文書の数の線形関数であるdelimited-payload-tokenfilter

を使用して格納するベクターのためのスコア関数(内積)を実装して、それが長期的なクエリにTF-IDFよりも悪いですES first searches on an inverted index以降はuses tf-idf for document scoresなので、tf-idfはインデックスのすべてのドキュメントで実行されません。ベクトルの場合、逆索引の利点がなく、余弦距離が小さい文書のベクトル空間が検索対象となります。

+0

この数量は文書の数とどのように比例しますか?これは単純に逆インデックスを保持するtf-idfよりもスケーラビリティ上の方がはるかに悪いですか? –

関連する問題