問題タブ [fuzzy-comparison]
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.
c# - MinHash を使用して 2 つの画像の類似点を見つける
MinHash アルゴリズムを使用して、画像間で類似の画像を見つけています。MinHashアルゴリズムHow can I recognize slightly modified images?
を指摘したこの投稿に出くわしました。
このブログ投稿の C# 実装を使用していましたSet Similarity and Min Hash
。
しかし、実装を使用しようとしているときに、2 つの問題に遭遇しました。
- 値をどの値に設定すればよい
universe
ですか? - イメージ バイト配列を に渡す場合
HashSet
、個別のバイト値のみが含まれます。したがって、1 ~ 256 の値を比較します。
これuniverse
は MinHash で何ですか?
また、C# MinHash の実装を改善するにはどうすればよいですか?
HashSet<byte>
最大 256 の値が含まれているため、類似度の値は常に 1 になります。
の C# MinHash 実装を使用するソースは次のSet Similarity and Min Hash
とおりです。
comparison - フロートを比較するためのこの関数に何か問題がありますか?
私のFloating-Point Guideが昨日slashdot で公開されたとき、提案された比較関数に対して多くの批判を受けましたが、これは実際には不十分でした。そこで私はついに賢明なことを行い、テスト スイートを作成して、それらすべてをパスできるかどうかを確認しました。これが私のこれまでの結果です。そして、これは一般的な (つまり、アプリケーション固有ではない) float 比較関数で得られるものと同じくらい良いのか、それともいくつかのエッジ ケースをまだ見落としているのか疑問に思います。
(エラーを修正するためにコードが更新されました)
sql - 2つのハッシュテーブルにあいまい一致しますか?
文字列のキーと値のペアを含む2つのハッシュテーブルを最もよく一致させる方法についてのアイデアを探しています。
私が直面している実際の問題は次のとおりです。データベースにインポートされる構造化データがあります。すでにDBにあるレコードを更新する必要がありますが、ソースの任意の値が変更される可能性があるため、信頼できるIDがありません。
ソースとDBの2つの行をあいまい一致させることを考えており、更新または挿入する必要があるかどうかを「知識に基づいて」推測します。
任意のアイデアをいただければ幸いです。
解決
ソリューションはBenRobinsonの投稿に基づいています。かなりうまく機能し、あちこちで小さな不一致があり、カスタムキーベースの重みがあります。
python - float の近似比較を使用して、Python で 2 つのファイルの「あいまいな」差異を生成します
2 つのファイルの比較に問題があります。基本的に、私がやりたいことは、2 つのファイル間の UNIX のような diff です。たとえば、次のようになります。
$ diff -u 左ファイル 右ファイル
ただし、私の 2 つのファイルにはフロートが含まれています。また、これらのファイルは異なるアーキテクチャで生成された (ただし計算は同じ) ため、浮動小数点値はまったく同じではありません (たとえば、1e-10 だけ異なる場合があります)。しかし、ファイルを「比較」することで私が求めているのは、重要な違いと思われるものを見つけることです (たとえば、違いは 1e-4 を超えています)。UNIX コマンド diff を使用しているときに、浮動小数点値を含むほとんどすべての行が異なっています。それが私の問題です:「diff -u」が提供するような結果の差分を取得するにはどうすればよいですか?フロートの比較に関する制限は少なくなりますか?
私はそれを行うために Python のスクリプトを作成しようと考え、diff のような比較を提供するモジュール difflib を見つけました。しかし、私が見つけたドキュメンテーションは、それをそのまま(単一のメソッドを介して)使用する方法を説明し、内部オブジェクトを説明していますが、必要に応じてdifflibオブジェクトをカスタマイズする方法に関するものは何も見つかりません(比較メソッドのみを書き直すか、そのような)...解決策は、統一された違いを取得し、それを「手動で」解析して「誤った」違いを削除することであると思います。これはエレガントではありません。既存のフレームワークを使用したいと思います。
それで、私が求めていることができるように、このライブラリをカスタマイズする方法を知っている人はいますか? または、少なくとも私を正しい方向に向けてください... Pythonではない場合、シェルスクリプトで仕事ができるでしょうか?
どんな助けでも大歓迎です!ご回答ありがとうございます。
python - Pythonで正規URLを比較しますか?
Python で URL 比較を行うツールはありますか?
たとえば、私が持っていhttp://google.com
てgoogle.com/
、それらが同じサイトである可能性が高いことを知りたい場合.
ルールを手動で作成する場合は、それを大文字にしてから、その部分を取り除き、http://
最後の英数字の後にあるものをすべて削除します..
これを行うライブラリはありますか?どのようにしますか?
fuzzy-comparison - 類似のニュース記事をグループ化/比較する方法
私が作成しているアプリに、ニュース記事をグループ化する機能を追加したいと思います。異なるソースからの同じトピックに関するニュース記事を同じグループにグループ化したい。たとえば、CNNとMSNBCのXYZに関する記事は同じグループに含まれます。ある種のファジー論理の比較だと思います。技術的な観点からこれを行うにはどうすればよいですか?私のオプションは何ですか?まだアプリを起動していないので、使える技術に制限はありません。
助けてくれてありがとう!
oracle - ジャロウィンクラーを使用してテーブル内の最も近い値を見つけるにはどうすればよいですか?
データベースにジャロウィンクラーアルゴリズムの実装があります。私はこの関数を書きませんでした。この関数は2つの値を比較し、一致する確率を示します。
したがって、jaro(string1、string2、matchnoofchars)は結果を返します。
2つの文字列を比較する代わりに、matchnoofcharsを使用して1つの文字列を送信し、95%より高い確率で結果セットを取得したいと思います。
たとえば、現在の関数はjaro( "Philadelphia"、 "Philadelphlaa"、9)に対して97.62%を返すことができます。
この関数を微調整して、「フィラデルフィア」の入力に対して「フィラデルフィア」を見つけられるようにしたいと思います。これを実現するには、どのような変更を加える必要がありますか?
Oracle9iを使用しています。
c# - ファジー トレランス アルゴリズムを使用したペン ストロークを暗号化キーとして使用する
ファジートレランスで暗号化/復号化するにはどうすればよいですか?
InkCanvas で Stroke を暗号化のキーとして使用できるようにしたいのですが、再度復号化するときに、ユーザーはまったく同じシンボルを描画する必要はなく、似ているだけです。これは .NET C# で実行できますか?
--- 更新 (9 月 9 日) ---
私が理想的に望んでいるのは、いくつかのベースキーと許可された違いを定義する関数に基づいて、特定の範囲のキーを受け入れる暗号化アルゴリズムです..
すべての暗号化/復号化をローカルで行っているため、ネットワーク経由で安全に何かを送信する必要はありません。また、暗号化に使用するキーを保存したくないので、比較するものはありません。同様のストロークごとに同じキーを生成する方法を考え出すことはできますが、文字だけでなく、あらゆる種類の記号を受け入れたい場合は簡単ではありません。もう1つのオプションは、暗号化キーが設計により何らかの方法で同様のキーを受け入れることができるかどうかですが、それが可能かどうかはわかりません...?
java - クエリの長いリストのあいまい一致API
私は人々が事前定義されたクエリを尋ねることができるアプリケーションを持っています。ただし、そのようなクエリのリストは長すぎます。したがって、現在のアプローチでは、ユーザーが検索ボックスに単語を入力し、クエリのリストから一致する可能性が高いものを表示できるようにします。(グーグルの「もしかして」機能と非常によく似ています。)
これに利用できるJavaのAPIはありますか?クエリのリストを提供できるはずです。APIはあいまい一致機能を提供する必要があるため、スペルが間違っていても問題ありません。(これが、正確な文字列照合アルゴリズムでは不十分な理由です)
lucene.net - Lucene.net ファジー フレーズ検索
私はかなりの期間これを自分で試し、ネットのいたるところを見てきましたが、Lucene.NET 2.9.2 を介して検索するファジー フレーズの例を見つけることができませんでした。( C# )
これを詳細に行う方法やサンプルコードを提供する方法をアドバイスできる人はいますか?