問題タブ [similarity]

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 投票する
5 に答える
7827 参照

php - PHPでスペルミスのある単語に似た単語を見つける方法は?

私の問題を説明します:

というデータベース テーブルがありますcountry。と の 2 つの列がIDありnameます。

を検索したい'paris'が、単語のスペルを間違えた場合: 'pares'('e'の代わりに'i')、DB から結果が得られません。

検索に役立つ類似の単語をシステムに提案してもらいたい。

そのため、パリ、パレデスなどの類似した単語を含む DB からの提案を行うスクリプトを作成するためのヘルプを探しています。

0 投票する
6 に答える
2456 参照

colors - ある画面の色を別の画面と同じように見せるための方法

2台の別々のコンピューターがある場合、各画面で色がほぼ同じように投影されるようにするにはどうすればよいでしょうか。

IEでは、ある画面の明るさが別の画面より50%高い場合があるため、1つの画面では色がくすんで見えます。あるコンピューターの1人のアーティストは、別のコンピューターとは異なる方法で写真を見る可能性があります。同じレベルで見ることが重要です。

あなたができるソフトウェアを介したある種のキャリブレーションテクニックはありますか?何かテクニックはありますか?それとも、ハードウェアソリューションが唯一の方法ですか?

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

python - Pythonで辞書を介してテキストを渡す

私は現在、コサイン類似度を使用して2つのテキストを比較するPythonコードを持っています。ここでコードを取得しました。

私がやりたいのは、類似度を計算する前に、最初に2つのテキストを取得し、それらを辞書(Python辞書ではなく、単語の辞書)に通すことです。辞書は大きなリストになりますが、単語のリストになります。難しいことではなく、何かをつまずく可能性があることはわかっていますが、それも効率的にしたいと思います。ありがとう。

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

similarity - コサイン類似度測定による n-gram 文類似度

私は文の類似性に関するプロジェクトに取り組んでいます。SOで何度も尋ねられたことは知っていますが、私がやっている方法で問題を解決できるかどうか、または問題へのアプローチを変更する必要があるかどうかを知りたいだけです。大まかに言えば、システムは記事のすべての文を分割し、システムに供給される他の記事の中から類似の文を見つけることになっています。

私は tf-idf 重みで余弦類似度を使用しています。それが私が行った方法です。

1- まず、すべての記事を文に分割し、次に文ごとにトライグラムを生成して並べ替えます (すべきでしょうか?)。

2- トリグラムの tf-idf 重みを計算し、すべての文のベクトルを作成します。

3- 元の文と比較する文の内積と大きさを計算します。次に、コサイン類似度を計算します。

しかし、システムは期待どおりに機能しません。ここで、いくつか疑問があります。

私が tf-idf の重みについて読んだ限りでは、同様の「ドキュメント」を見つけるのにより便利だと思います。私は文に取り組んでいるので、tf および idf 定義の式のいくつかの変数を変更して、アルゴリズムを少し変更しました (ドキュメントの代わりに、文ベースの定義を考え出そうとしました)。

tf = 文中のトライグラムの出現回数 / 文中のすべてのトライグラムの数

idf = 全記事の全文数 / トライグラムが出現する文数

この問題にそのような定義を使用しても問題ないと思いますか?

もう1つは、コサイン類似度を計算するときに正規化が何度も言及されているのを見たことです。トライグラムのベクトルが同じサイズではない可能性があるため、これは重要であると推測しています(私の場合はめったにありません)。トライグラム ベクトルのサイズが x で、もう一方のベクトルが x+1 の場合、最初のベクトルを x+1 のサイズとして扱い、最後の値は 0 です。これは正規化の意味ですか? そうでない場合、正規化を行うにはどうすればよいですか?

これらに加えて、間違ったアルゴリズムを選択した場合、そのような問題に他に何が使用できますか(できればn-gramアプローチを使用)?

前もって感謝します。

0 投票する
4 に答える
2732 参照

algorithm - 大規模なデータセット間で重複/類似したテキストを検出しますか?

私は数千のレコードを持つ大規模なデータベースを持っています。ユーザーが自分の情報を投稿するたびに、同じ/類似のレコードがすでに存在するかどうかを知る必要があります。この問題を解決するためのアルゴリズムやオープンソースの実装はありますか?

私たちは中国語を使用しています。「類似」とは、レコードの内容が最も同じで、80%〜100%が同じである可能性があることを意味します。各レコードは大きくなりすぎず、約2k〜6kバイトになります

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

algorithm - 「WebクロールのNearDuplicatesの検出」で説明されているアイデアの実装はありますか

論文: http://www2007.org/papers/paper215.pdf

その論文の第3章の実装があるのだろうかと思っています。simhash だけでなく、大規模なデータセット間でクエリを実行することを意味します (simhash の実装を見つけるのは簡単です)。

ありがとう〜

0 投票する
4 に答える
1268 参照

machine-learning - 距離関数は何種類使用できますか?

私はパターン認識に関するものを読んでいました。最近は、ベクトルの類似性を評価する方法について調査したいと思っています。私の知る限り、ユークリッド距離、マハラノビス距離、コサイン距離があります。検索する名前やキーワードをもっと提示してくれる人はいますか?

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

image - 同じオブジェクトの2つの類似した画像間の対応またはマッピングを見つける方法

私は家の写真を2枚持っていますが、カメラは2枚目の写真の位置から約1メートルまたは約1フィートしか移動していません。したがって、1枚目と2枚目の写真はほとんど同じですが、遠近法に若干の違いがあります。

最初の写真と2番目の写真の間の対応であるマッピングを生成したいと思います。最初の写真のピクセルについて、2番目の写真の反対方向のどこにマップされているのか知りたいです。

写真間で類似した構造を検出する方法があると思います。この方法を使用すると、ピクセルがどこに移動したかを大まかに推測できます。

この質問の2番目の部分では、家とカメラの間に木があるなど、一部の機能が非表示または表示されている場合、この問題をどのように解決できますか。そのため、カメラと家の間にあるため、カメラを移動すると、ツリーにいくつかのピクセルが表示され、一部が非表示になります。

0 投票する
4 に答える
8471 参照

matlab - MATLABで類似性行列を作成するにはどうすればよいですか?

複数の画像の比較に取り組んでいます。私はこれらの画像データを「画像」と呼ばれる行列の列ベクトルとして持っています。最初にユークレディアン距離を計算して、画像の類似性を評価したいと思います。次に、複数のランダムウォークを実行できるマトリックスを作成します。現在、私のコードは次のとおりです。

ただし、私の行列Mは、主対角線に沿って1の値を持ち、他の場所ではゼロになります。各行の最初のいくつかの要素には「大きい」値、列インデックスが4より大きい要素には「小さい」値を期待しています。誰かが何が悪いのか説明してもらえますか?アドバイスをいただければ幸いです。

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

sql - 2人のユーザーの共通の隣人を数え、類似性を計算する方法は?

Monthly_connectionsテーブルには列が含まれていますcalling_party, called_party, common_neighbors, neighborhood_overlap

したがって、この表は、接続されているユーザーを示しています。ユーザーの類似性の尺度の1つは、次のように定義される近隣の重複です。

Neighborhood_overlap =(calling_partyとcalled_pa​​rtyの両方のネイバーであるノードの数)/(calling_partyまたはcalled_pa​​rtyの少なくとも1つのネイバーであるノードの数)

2人のユーザーの共通ネイバーの数を計算しようとして、次のクエリを作成しました。

上記のクエリは、ユーザー10D149A4356E1AA3A8AF604BD992BBA141DB53D2および9F7334BCF9000CD68D40302DC4801E60C027A7D1の共通ネイバーの数を計算します。

目標は、テーブル内の接続の各ペアの列の共通ネイバーとネイバーフッドオーバーラップの値を設定するクエリを作成することです。

誰かが列common_neighborsとneighborhood_overlapを更新するクエリを書く方法を知っていますか?

一般的な隣人のために、私は次のクエリを書き始めましたが、それは正しくありません: