前回のパンダアップデート対策の記事、プログラミング側からシステム側から行なう対策の記事でした。
この記事の中で参考になる数字としてあげている「レーベンシュタイン距離」を簡単に出せないかと言うコメントをFacebookにて頂きました。
▼Facebookページ「海外発のWEB戦略・戦術情報を共有しよう!」
なので、原文のようにPHPは使わずJavaScriptですが作ってみました。
JavaScriptの元ネタはこちらです。
▼Levenshteinenator
http://andrew.hedges.name/
experiments/levenshtein/
また、これ以外にも「levenshtein Javascript」で検索すれば結構出てきます。
ただの計算式なので、どんな言語でもいけるかと。
元記事ではPHPでしたがPHPはそもそもビルトインで関数を持っています。
注意点
本来原文ではDB内のテキストを比較する、という趣旨で紹介されている物です。
DB内に格納されているテキストで類似な物がないかを調べるという趣旨です。
こうやってオンラインツールとして使うに当たっては以下をご注意下さい。
- 銀の弾丸ではありません。あくまで参考値です。これ以上ならNG!と決められる物ではありません。
- 色々な要素に左右されますので、できるだけ誤差を出さないために「コンテンツ部分の文章」だけで比較をすることをお勧め致します。
- 試した感覚としては
「500以下だと類似してるかな」「700や800以上あれば違うな」「1000あったら相当違うな」
でしょうか - 「100以下なら相当類似している」かと。
- ご自身のコンテンツでいくつかテストしてみて、閾値を決めてみて下さい。
レーベンシュタイン類似度チェックツール
先ほどの注意点をご留意頂き、便利に使ってもらえれば幸いです。何かありましたらFacebookページなどで一声おかけ頂ければ幸いです。
Discussion about this post