データ品質

信頼度スコア:その数値を構成するもの

0から1までの1つの数値として示される信頼度スコアは、一見すると単純に見えます。一致がどれだけ確かかを示す複数の異なるシグナルを組み合わせた出力ではなく、1つの直接的な測定値であるかのようです。その数値に何が入っているのかを大まかに理解しておけば、あまり考えずに選んだ任意のしきい値の上か下かで絞り込む不透明な確率として扱うよりも、はるかに役立つものになります。

主な入力の1つは、元のクエリが基になる参照データにどれだけ完全に一致したかです。番地、通り名、地域、郵便番号といったすべての構成要素が、既知の1つのレコードときれいに揃って完全に一致した住所は、一部の構成要素が欠けていたり、綴りが誤っていたり、最も妥当な候補を見つけるためにあいまい一致で推測しなければならなかったりした住所よりも高い信頼度になります。ジオコーダーが推測したり欠落を補ったりしなければならなかった度合いが大きいほど、その不確かさはスコアを下げる方向に反映されるのが妥当です。

2つ目の入力は一致そのものの曖昧さで、具体的には同じ入力に対して妥当な候補が複数存在したかどうかです。指定された市のなかで一意の通り名は、同じ広い検索範囲内の複数の異なるエリアに存在する通り名よりも確かな一致になります。後者の場合、ジオコーダーは1つの明確な結果に解決するのではなく、実際に存在する複数の候補のなかから最も可能性の高いものを選ばなければならないからです。

3つ目の入力は、その特定の場所における基になるデータの品質と密度です。これは、別の記事で取り上げた農村部と都市部の差や、郵便データの品質の国ごとのばらつきといったパターンに直接関係します。参照データのなかでもまばらで検証の頻度が低いエリアに対する一致は、密にマッピングされ頻繁に検証されている都市部に対する同等の一致よりも、どちらも技術的には結果を見つけて返しているとしても、信頼度が低くなるのが妥当です。

こうしたことを踏まえると、自分のアプリケーションで信頼度スコアを扱う最も有用な方法は、理論ではなく実証に基づくものです。自分の実際のクエリから代表的なサンプルを実行し、正しいか誤りかを独自に検証できる結果について信頼度がどのように分布するかを確認し、抽象的にはもっともらしく聞こえる想定上の基準値ではなく、その分布に基づいて自分のしきい値を設定してください。誤った結果が実際のコストにつながる配送先住所の検証に適したしきい値は、ときどき不正確な一致があってもほとんど問題にならない大まかな地域分析に適したしきい値よりも厳しくするのが妥当です。

ジオコーディング逆ジオコーディングはどちらも精度とあわせて信頼度を返します。それはまさに、ゼロを超えるすべての一致を等しく信頼できるものとして扱うのではなく、このように調整されたユースケース固有のしきい値を構築できるようにするためです。