レベンスタイン距離アルゴリズムに問題があります。
レーベンスタイン距離アルゴリズムを使用して、製品名を製品名のリストと比較し、最も近いものを見つけています。ただし、少し微調整する必要があります。dotnetperls.comの例を使用しています。
私自身のデータベースから 2000 個の製品名のリスト A があるとします。私はこれらすべての製品を自分で販売しています。
それから突然、サプライヤーの 1 人から、製品名と各製品の新しい価格が記載されたリスト B を受け取りました。これは年に 1 回以上発生する可能性があるため、手動で作業を行うソフトウェアを開発したいと考えています。
問題は、このサプライヤーは一貫性があまり得意ではないということです。そのため、彼は時々名前に小さな変更を加えます。つまり、単純な文字列比較を行うことができません。
距離アルゴリズムを実装しましたが、私のニーズにはあまり合いません。- まだ!
サプライヤーリストを調べているときに、という製品に出くわしました
アメリカン クルー アンチ フケ シャンプー 250 ml
この製品は、私自身の製品とのマッチングに成功しました
アメリカン クルー アンチ フケ 250 ml。
10の距離で。
問題
という商品も見つけました。
アメリカン クルー 3-In-1 シャンプー 450 ml。
誤って一致したもの
アメリカン クルー デイリー シャンプー 450ml
私の代わりに
アメリカン クルー 3 イン 1 450 ml。
そして、その理由がわかります!しかし、ここからアルゴリズムをどのように変更すればよいかわかりません。
何か案は?
ところで、私はアルゴリズムがあまり得意ではありませんが、何らかの重み付けがここで役立つと信じています。
編集:
計算時間は実際には問題ではありません。完了するのに 10 時間かかったとしても、手動で行うよりもはるかに優れています :P