日本語の処理をしているときに厄介なのが表記揺れですよね。 「コンピューター」と「コンピュータ」、「問い合わせ」と「問い合せ」など。人間が見れば同じ単語だと分かっても、プログラムで処理する際に単純に等号で比較してしまうと別の単語扱いになってしまいます。 今回は類似度を用いて二つの単語を評価することで、表記揺れの問題に対処してみます。 単語間の類似度を算出する 単純に文字列が 等しいか/異なるか 二者択一で評価するのではなく、類似度 を用いて評価してみましょう。 類似度は 0~1 の float で表される値で、二つの単語が全く異なれば 0 、全く一致すれば 1 に評価されます。 そして、全て一致しないにしても似ている単語同士であれば 1に近い少数 に評価されます。 「一致はしないけど、まぁまぁ似てるから同じ単語なんちゃう?」というファジーな評価をするわけですね。 今回は Python を使い