1

私はレコード リンケージ プロジェクトに取り組んでおり、さまざまな文字列コンパレータについて調査作業を行う必要があります。私が見ているものは次のとおりです。

ジャロ・ウィンクラー、レーベンシュタイン距離、最長共通部分文字列、完全一致。

私は疑問に思っていますが、どれがいつ使用するのに適しているかを判断するために何か作業が行われましたか? つまり、Jaro-Winkler は名前には適しているように見えますが、社会保障番号を完全に一致させる方がよい場合があります。アドレスにはどれを使用しますか? Jaro-Winkler には他の製品より優れている点はありますか?

誰かが私に指摘できるホワイトペーパーはありますか?

ありがとう。

4

3 に答える 3

2

良い出発点は、 William W. Cohenらの論文「A Comparison of String Distance Metrics for Name-Matching Tasks」です。この論文では、いくつかのストリング距離メトリックを比較しています。

また、 SecondString プロジェクト内でそれらのほとんどを実装しました。これは「おおよその文字列照合手法のオープン ソース Java ベース パッケージ」であるため、自分ですべてを実装しなくても、さまざまなメトリックを簡単に比較できます。

どのメトリックが最適かを判断することはほぼ不可能です。あなたが言うように、Jaro-Winkler は名前に適しています。アドレスを比較するには、コーエンが説明したように、TFIDF や SoftTFIFD などのトークンベースのメトリックを使用するのが理にかなっています。

決定を下せるようにするには、基礎となるアルゴリズムの複雑さと関連する実行時間も考慮する必要があります。

于 2012-05-03T12:03:44.790 に答える
0

Googleの学者がこの論文を見つけたことが判明

http://www.amstat.org/sections/srms/Proceedings/y2006/Files/JSM2006-000855.pdf

于 2011-12-13T23:11:37.990 に答える
0

名前、特に英語の姓の場合、Caverphone アルゴリズムは一見の価値があります。私は自分のデータセットでいくつかをテストしましたが、少なくとも私のニーズに対しては最高のパフォーマンスを発揮しました。

于 2015-09-19T05:05:49.227 に答える