問題タブ [lsa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
446 参照

java - HashingTF が一意のインデックスを提供しない

eclipse Mars、Java 8、spark spark-assembly-1.6.1-hadoop2.4.0.jar を使用して、Latent Semantic Analysis LSA を実装しています。ドキュメントをトークンとして渡し、SVD などを取得しました。

1つを除いて、すべてが完全に機能します。それは、ハッシュTFから用語のインデックスを取得しようとするときです

同じインデックスを持つ用語がたくさんあることがわかりました。それらは私が得たいくつかです

0 : ターム
1 : すべて
1 : 次
2 : tt
3 : ザ
7 : ドキュメント
9 : そのような
9 : マトリックス
11 : ドキュメント
11 : 約
11 : それぞれ
12 : 関数
12 : チャンス
14 : これ
14 : 提供
する用語のベクトルを何かに取得しようとすると、同じインデックスを持つ別のベクトルを取得する可能性があります。レンマタイゼーションとストップワードの削除後にそれを行いましたが、それでも同じエラーが発生しました。見逃したものはありますか?または更新が必要なコンポーネント (MLip など) のエラー。各用語を一意に保つにはどうすればよいですか。

0 投票する
0 に答える
1226 参照

elasticsearch - ElasticSearch でのセマンティック検索

ES にセマンティクスを追加する最良の方法は何ですか? 私はこれを読みました:NLPとelasticsearchを使用したセマンティック検索ですが、ここには多くの手動のものがあり、その上、これはかなり古いものです。例: 教師なしタスクでは、トピックのリストとドキュメントが属するトピックを事前に知ることはできません。また、この問題はドキュメントのクラスタリングとは異なります。クラスタリングを通じて、すべてのドキュメントが類似していると言えます。しかし、クエリがこれらの類似したドキュメントである必要があると言う方法はありますか?

例: 「機械学習」クエリは、重み付きの「機械オペレーター」ドキュメントではなく、「データ サイエンス」、「データ マイニング」、または「パターン認識」ドキュメントを取得する必要があります。ここでは、クラスタリング (LDA の可能性があります) が役立つかもしれませんが、クエリ用のドキュメントを提供するのはドキュメントを正確にクラスタリングすることではなく、おそらくその拡張です (私にはわかりません)。それとも、ドキュメントをクラスタリングし、TF ベースのアルゴリズムを使用するときに検索スペースを削減するだけですか。クラスター上。

この問題に LSA を使用してみました。LSA は (SVD を介して) 縮小されたマトリックスを提供しますが、この結果を ES でどのように使用しますか? これを行ったとしても、どのようにスケールしますか?

より良いアプローチはありますか?

0 投票する
1 に答える
1147 参照

text - ドキュメントの類似性に対する異なるアプローチ (LDA、LSA、コサイン)

短いドキュメントのセットがあります(それぞれ 1 つまたは 2 つの段落)。ドキュメントの類似性には 3 つの異なるアプローチを使用しました: - tfidf 行列に対する単純なコサイン類似性 - コーパス全体に LDA を適用し、LDA モデルを使用して各ドキュメントのベクトルを作成し、コサイン類似性を適用しました。-コーパス全体にLSAを適用し、LSAモデルを使用して各ドキュメントのベクトルを作成し、コサイン類似度を適用しました。

実験に基づいて、LDAまたはLSAを使用しないtfidfマトリックスの単純なコサイン類似性でより良い結果が得られています。私が読んだことに基づいて、LDAまたはLSAは結果を改善するはずですが、私の場合はそうではありません! なぜ LDA や LSA の方が結果が悪いのか、何か考えはありますか? LDA と LSA の両方で、1000 ラウンドを超えるトレーニングを行った場合、90% を超える確率で完全に無関係ないくつかのドキュメント間で類似性が検出されます。

その正当な理由はありますか?

ありがとう

0 投票する
1 に答える
1030 参照

python - 単語を潜在的意味分析 (LSA) ベクトルに変換する

Python と scikit-learn を使用してドキュメントの単語を LSA ベクトルに変換する方法について何か提案はありますか? ドキュメント全体を lsa ベクトルに変換する方法を説明しているこれらのサイトをここここで見つけましたが、個々の単語自体を変換することに興味があります。

最終結果は、すべての文からすべてのベクトル (各単語を表す) を合計し、連続した文を比較して意味の類似性を評価することです。

0 投票する
0 に答える
998 参照

r - Rのドキュメント全体を使用した潜在テキスト分析(lsaパッケージ)

R の lsa パッケージを使用して、短い引用に対して潜在テキスト分析を正常に実行するコードがあります (以下を参照)。ただし、より大きなドキュメントのテキストに対してこの方法を使用したいと思います。各引用スペースにすべてをコピーして貼り付けるのは非常に非効率的です。機能しますが、実行には永遠の時間がかかります。データベースまたはデータフレームから各「引用」(この場合はドキュメント) を直接インポートする方法はありますか? もしそうなら、それはどのような形式である必要がありますか?txt 形式のドキュメントは、R にインポートすると自動的に段落に分割されますが、これが lsa パッケージによって実行される分析と互換性があるかどうかはわかりません。

0 投票する
2 に答える
3705 参照

python - テキスト クラスタリングを行うときに K-Means の前に LSA を使用する理由

K-Means を使用したテキスト クラスタリングに関する Scikit Learn のこのチュートリアルに従っています: http://scikit-learn.org/stable/auto_examples/text/document_clustering.html

この例では、必要に応じて LSA (SVD を使用) を使用して次元削減を実行します。

なぜこれが便利なのですか?次元 (機能) の数は、"max_features" パラメーターを使用して TF-IDF ベクトライザーで既に制御できます。

LSA (および LDA) もトピック モデリング手法であることは理解しています。クラスタリングとの違いは、ドキュメントが複数のトピックに属しているが、1 つのクラスターにしか属していないことです。K-Means クラスタリングのコンテキストで LSA が使用される理由がわかりません。

コード例: