問題タブ [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.
php - 5000 個の文字列を PHP レーベンシュタインと比較する
配列には 5000 個、場合によってはそれ以上の番地の文字列があります。それらすべてをレーベンシュタインと比較して、同様の一致を見つけたいと思います。すべての 5000 をループして、他のすべての 4999 と直接比較せずに、どうすればこれを行うことができますか?
編集:誰かに提案があれば、別の方法にも興味があります。全体的な目標は、ユーザーが送信した住所に基づいて類似のエントリを見つける (および重複を排除する) ことです。
java - プロジェクト間のCPD/PMD?
うまくいけば、この質問をもう少しわかりやすく、理解しやすいものにするために言い換えています。
単一のWebアプリケーションに組み込まれる約30個のコンポーネント(内部)があります。つまり、独自の個別のPOMを持つ30の異なるプロジェクトを意味します。私はPOMで継承をかなり使用しているので、継承するものの1つは、コードの重複を防ぐためのPMD/CPD構成です。
CPD / PMDを実行していますが、同じプロジェクト内の重複コードのみが検出されます。リファクタリングできるプロジェクト間で共有されているコードがあるかどうかを、私のプロジェクトのいずれかで検出したいと思います。さらに、(同じ概念/パターンを使用して)他のオープンソースの依存関係間でコードが共有されていないことを確認できるものを探していました。
ソースjarで動作することを除いて、CPD/PMDになります。すべてのプロジェクトとその依存関係をスキャンして重複を確認すると、このタスクは大量のメモリを消費します。今は、それを社内プロジェクトに適用したいと思います。それが機能する場合、それをスケールアウトすることは比較的簡単/簡単です。
ウォルター
java - tfidfの類似性
類似性の計算にTF/IDFを使用しています。たとえば、次の2つのドキュメントがあるとします。
通常、類似度は50%ですが、TF/IDFを計算すると。以下の通りです
DocAのTf値
DocBのTf値
DocAのIDF値
DocBのIDF値
DocAのTF/IDF値
DocBのTF/IDF値
これで、-0.20275の類似性があるように見えます。それは...ですか?それとも私は何かが足りないのですか?それとも次のステップはありますか?私も計算できるように教えてください。
ウィキペディアが言及したtf/idf式を使用しました
java - ジャワ:イクレーター?(オブジェクトのコレクションから重複を削除する)
class のオブジェクトがたくさんありますPuzzle
。と をオーバーライドequals()
しhashCode()
ました。ユーザーに解決策を提示するときが来たら、(私が定義した基準によって) "類似" しているすべてのパズルを除外して、ユーザーにはそれぞれのパズルが 1 つだけ表示されるようにします。
類似度は推移的です。
例:
この場合、A または D および B または C のみがユーザーに表示されますが、2 つの類似したパズルは表示されません。2 つの類似したパズルは、同じように有効です。両方がユーザーに表示されないことだけが重要です。
これを実現するために、重複を禁止する ADT を使用したいと考えました。ただし、代わりに類似性に関する値を返すようにequals()
andメソッドを変更したくありません。この場合に使用できるのようなものhashCode()
はありますか? または、これを行うべき別の方法はありますか?Equalator
Comparator
私が取り組んでいるクラスは、文字のグリッドを維持するパズルです。(スクラブルのように。) パズルに同じ単語が含まれていても、方向が異なる場合、類似していると見なされます。したがって、パズルを解くには次のようにします。
次のようになります。
java - コサイン類似度
2 つのドキュメントの tf/idf 値を計算しました。tf/idf 値は次のとおりです。
ドキュメントは次のようなものです。
これらの値を使用してコサイン類似度を計算するにはどうすればよいですか?
内積を計算し、距離を求めて内積を割ります。自分の値を使用してこれを計算するにはどうすればよいですか?
もう 1 つの質問:両方の文書の単語数が同じであることが重要ですか?
metrics - セット群間の類似度の計算
次の 4 つのセットがあるとします。
s1={1,2,3,4};
s2={2,3,4};
s3={2,3,4,5};
s4={1,3,4,5};
この 4 セットのグループの類似度を表す標準的なメトリックはありますか?
ジャカード方式のご提案ありがとうございます。ただし、ペアワイズのようです。セットのグループ全体の類似度を計算するにはどうすればよいですか?
php - php+gdでの画像比較
php とGraphic Draw (GD) Libraryを使用して 2 つの画像を比較する最良の方法は何ですか?
これはシナリオです:
画像があり、特定のセットのどの画像がそれに最も似ているかを見つけたいと考えています。最も類似した画像は、実際には同じ画像であり、ピクセル完全一致ではなく、同じ画像です。意味を理解しやすくするために、例の番号 1 を使用して 2 つの画像の違いを脚色しました。
一貫した結果は得られませんでしたが、私のアプローチは、imagecopyresampled関数を使用して画像を 1 ピクセルに縮小し、画像間の RGB 値がどれだけ近いかを確認することでした。
可能な一致の赤、緑、青の 10 進相当値から赤、緑、青の 10 進相当値を差し引いた値の合計は、非類似度指数を与えてくれました。ほとんどの RGB 類似画像がターゲット画像であり、使用可能なターゲットから画像を選択するために使用できました。
4 つの画像をターゲット画像 (この場合はリンゴのロゴ) と比較した場合の出力のサンプルを次に示します。この画像はそれらの 1 つに一致しますが、完全には同じではありません。
元の画像:
比較対象:
http://a1.twimg.com/profile_images/571171388/logo-twitter_normal.png 赤:183 緑:212 青:212 類似度指数 56
赤:117 緑:028 青:028 と非類似度 530 のインデックス
赤:218 緑:221 青:221 と非類似度13 の指標が正しく一致しました。
赤:061 緑:063 青:063 と非類似度の指標 491
私がすでに得ているものよりも良い結果を出すことさえできないかもしれませんし、私はここで時間を無駄にしていますが、経験豊富なphpプログラマーがたくさんいるように見えるので、改善方法について正しい方向に私を向けることができると思います.これ。
iMagick、Gmagick、Cairo for phpなどの他の画像ライブラリを使用できますが、php 以外の言語の使用は避けたいと思います。
前もって感謝します。
algorithm - 2D座標の複数のセットに対する適切な類似性メトリック
私は2D座標セットのコレクション(各セットに100K〜500Kポイントのスケールで)を持っており、1つのセットと他のセットの類似性を測定する最も効率的な方法を探しています。私はいつものことを知っています:Cosine、Jaccard / Tanimotoなど。しかし、類似性を測定するための高速で効率的なもの、特に類似性によってクラスター化できるものについての提案を期待しています。
編集1:画像は私がする必要があることを示しています。すべての赤、青、緑を形や向きなどでクラスター化する必要があります。
arrays - int配列の「類似性」を比較します-加重平均よりも正確ですか?
およそ±100の範囲の符号付き整数を含む長さ12の配列が多数あるとすると、これらの配列の「署名」または「調和コンテンツ」を、より正確な方法で相互に比較するにはどうすればよいですか。単純な加重平均?
ニューラルネットワークを調べる必要がありますか(これが適切である場合でも、tbhはわかりません)、それとももっと簡単な方法がありますか?
編集:
グラフ上で、x軸のインデックスとy軸の値を想像してください。正規化後にグラフの形状が類似している場合、2つの配列は非常に類似しています。
この問題に適切な言葉を見つけるのは難しいと思います。