問題タブ [text-mining]

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 に答える
617 参照

performance - シングルプリンティングは実際にどのように機能しますか?

ドキュメントの類似性を測定するためにシングルプリンティングを使用しようとしています。このプロセスには、次の手順が含まれます。

  1. 2 つのドキュメント D1、D2 の5 シングリングを作成します。
  2. 各シングルを 64 ビット ハッシュでハッシュする
  3. 0 から 2^64-1 までの数値のランダムな順列を選択し、シングル ハッシュに適用します
  4. ドキュメントごとに、結果の値の最小値を見つけます
  5. 一致する場合は正の例としてカウントし、一致しない場合は負の例としてカウントします
  6. 3.~5.を数回繰り返す
  7. positive_examples / total examples類似度として使用

ステップ 3 では、非常に長いシーケンスのランダム順列を生成します。Knuth-shuffle を使用することは問題外のようです。これにはいくつかのショートカットがありますか?最終的に、結果の順列の単一の要素のみが必要であることに注意してください。

0 投票する
7 に答える
15435 参照

algorithm - テキスト分類/分類アルゴリズム

私の目的は、[半]自動的にテキストをさまざまなカテゴリに割り当てることです。ユーザー定義のカテゴリのセットと、各カテゴリのテキストのセットがあります。理想的なアルゴリズムは、人間が定義した分類から学習し、新しいテキストを自動的に分類できる必要があります。そのようなアルゴリズムと、おそらく ше を実装する .NET ライブラリを提案できる人はいますか?

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

java - 2 人の人物間の類似性スコアを取得するための Java のベクトル空間モデル アルゴリズム

Java でベクトル空間モデル アルゴリズムを使用/実装して、キーワードに基づいて 2 人の人物の類似性スコアを取得しようとしています。だから私は次のクラスを持っています:

Person - キーワードのリストがあります。

キーワード - 文字列テキスト。整数スコア。

キーワードスコアは、その人がキーワードに対して行った言及の数です。

Javaでこれを実装する方法について何か提案はありますか?

よろしく

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

nlp - マレットを使用したトピックモデリング

Mallet でトピック モデリングを使用しようとしていますが、質問があります。

モデルをいつ再構築する必要があるかを知るにはどうすればよいですか? たとえば、Web からクロールしたこの量のドキュメントがあり、Mallet が提供するトピック モデリングを使用して、モデルを作成し、それを使用してドキュメントを推測できる可能性があります。しかし、時間の経過とともに、私がクロールした新しいデータにより、新しい主題が現れる可能性があります. その場合、モデルを最初から現在まで再構築する必要があるかどうかはどうすればわかりますか?

毎月クロールするドキュメントに対してそうしようと考えていました。誰かアドバイスしてもらえますか?

したがって、トピック モデリングは、一定量のトピック (入力パラメーター k、トピック数) の下のテキストにより適しています。そうでない場合、使用する番号を実際にどのように決定しますか?

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

matlab - MATLAB でのテキストのクラスタリング

MATLAB でテキストに対して階層的凝集クラスタリングを実行したいと考えています。たとえば、私には 4 つの文があります。

上記の 4 つの文をクラスター化して、どちらがより類似しているかを確認したいと思います。pdist統計ツールボックスには、ペアごとの距離を測定linkageしたり、クラスターの類似性を計算したりするなどのコマンドがあることを知っています。次のような単純なコード:

正常に動作し、デンドログラムを返します。

上記のように、これらのコマンドをテキストで使用できるのだろうか。何かご意見は ?


更新:

アムロに感謝。文字列間の距離を理解して計算しました。コードは次のとおりです。

文字列を入力すると、4 つの保存された文字列がありました。ここで、関数を使用してペアワイズ距離を計算しましたlevenshtein_distance。行列を返しますX=[ 17 0 16 18 16]

** これは私のペアごとの距離行列だと思います。pdist が行うことと同様です。それは...ですか ?

** 今、私は X を入力して次のようなリンケージを計算しようとしています

私が得ている出力は次のとおりです。

93 での ==> リンケージの使用エラー Y のサイズは PDIST 関数の出力と互換性がありません。

==> Untitled2 の 20 Z=linkage(X,'single') のエラー。

なんでそうなの ?連携機能は使えるの?助けていただければ幸いです。

更新 2

エラー: ???非セル配列オブジェクトからセルの内容を参照しています。==> Untitled2 at 22 D(kk,jk)= levenshtein_distance(S1{kk},S2{jk}); のエラー

また、最初のループ内のファイルからイベントを読み取るのはなぜですか? 論理的ではないようです。この方法で作業できる場合、またはコード内にすべての文字列を入力することが唯一の解決策である場合、少し混乱します。大変助かります。

アップデート

2 つの文を比較するコード:

出力 D=18。

WITH 異なる文字列:

D=28。

距離に基づいて、まったく異なる文が似ているように見えます。私がやろうとしているのは、ニューヨークに火を保存した場合、保存しませんNY catches fire。ただし、最初のケースでは、情報が新しいので保存します。

これを行うにはLDで十分ですか?助けていただければ幸いです。

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

matlab - 2 つの文の類似度を計算する方法 (構文的および意味的)

毎回 2 つの文を取り、それらが類似しているかどうかを計算することになっています。同様に、構文的にも意味的にも意味があります。

INPUT1: オバマは法律に署名します。新しい法律がオバマによって署名されました。

INPUT2: バスはここで停止します。ここに車が停車します。

INPUT3: NYで火事。NY全焼。

INPUT4: NYで火事。NY火災で50人死亡。

オントロジーツリーを魂として使いたくありません。文間のレーベンシュタイン距離(LD) を計算し、2 番目の文かどうかを判断するコードを作成しました。

  • 無視できます (INPUT1 および 2)。
  • 最初の文を置き換える必要があります (入力 3)、または
  • 最初の文 (INPUT4) と共に保存します。

LD は構文レベルのみを計算するため、コードに満足していません (他にどのような方法がありますか?)。セマンティックをどのように組み込むことができますか (バスは一種の乗り物ですか?) .

コードは次のとおりです。

どんな助けでも大歓迎です。

0 投票する
3 に答える
1448 参照

r - Rでキーワード頻度表を作成するより良い方法はありますか?

私の bibtex 文献データベースを csv エクスポートして、キーワードと雑誌の相関関係を分析したいと考えています。文献ごとに 1 つの行を含む csv ファイルから始めます。各行にはジャーナル名と、スラッシュで区切られたリストであるキーワード リストが含まれます。キーワードとカウントによるジャーナルのマトリックスのいずれかになりたいです。

現在、私はこのコードを書いていますが、もっと良い方法があるはずです。誰かアイデアはありますか?

これが私のデータの構造です。合計で 3,000 行を代表する (ように見える) 20 行を取得しました。

これが私のサンプルデータです。ここでは、データを手動でループし、狭い結果のデータフレームを構築します。これは、melt/reshape を使用して目的の結果に変えることができます。

これで、最高スコアを取得して、「ヒートマップ」スタイルのグラフをプロットできます。

他に何か提案したい人はいますか?

頭に浮かぶ他のことは次のとおりです。

  • 同じ意味を持つ一連のキーワードを除外する (R で) 良い方法はありますか (つまり、猫、猫、猫、猫はすべて猫に置き換えることができます)。
  • ループせずにテーブルを構築する方法はありますか

編集:ダミーデータをより代表的なものに置き換えました。

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

nlp - 文脈に従ってテキストから単語を抽出する方法

ユーザーが提供したテキストステートメントから関連する単語を抽出したい。例えば。「長方形には何辺ありますか?」という質問に対して 単語は 'rectangles' 、 'sides' 、 'many' 、 'how' でなければなりません。

まさに私が目指しているのは、NLP の質問応答システムであることがわかりました。しかし今は、質問から必要なキーワードのみを抽出したいと考えています。質問のドメインはそれほど広大ではありません。

さまざまなデータ マイニング ツールに出くわしましたが、それらが実際にこれに役立つかどうかはよくわかりません。それらは少し高度すぎるか、正確に関連していないようです。

要件に合ったツールがあるかどうか、または自分でコーディングしてみる必要があるかどうかを教えてください。

役立つと思われるあらゆる種類のポインターを提供してください。

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

r - Rを使用したテキスト検索

私はRのテキストマイニングパッケージとその本当に素晴らしいツールを使用してきました。検索サポートが見つからないか、不足している機能がある可能性があります。Rのテキストマイニングパッケージを使用して、単純なVSMモデルをどのように実装できますか?