見出し画像

GIS (地理情報システム)におけるジオコーディング技術

UPWARD CTOの門畑です。今回はシニアエンジニアの加賀谷が主担当で開発を推進しているGeographic Information System (GIS: 地理情報システム) におけるジオコーディング技術について解説します。

ジオコーディングとは?

ジオコーディングとは、住所文字列を緯度経度などの座標に変換する処理を指す技術です。また、それを行う仕組みをジオコーダと呼びます。 地理空間データベースを提供するUPWARD ENGINEではお客様のCustomer Relationship Management (CRM: 顧客関係管理) と連携し、取引先やリード(見込み顧客) などの住所情報をジオコーダーを用いて緯度経度に変換します。それにより、CRMのデータを現実世界と繋げることができます。また、緯度経度情報と、地域やコミュニティに関する情報、天気、人口構成、地価等のデータと連携することで、新しい関連性の発見や営業施策の再現性の向上につなげることができると考えられます (図1) 。

図1. UPWARD ENGINE: CRMに基づいたジオコーディングと様々なデータとの連携

例えば、顧客がどの地域に集中しているのか、どの地域に営業チャンスがあるのかなど、地理的な情報をもとにした戦略を立てることができます。さらに、天気や人口構成などの情報と組み合わせることで、ターゲット顧客のニーズに応じたマーケティング施策を展開することが可能になります。

日本の住所表記の特有性

日本の住所は、海外の住所と比較して複雑な構造を持っており、都道府県、市区郡、町村、丁目・大字・字、番地、地番、枝番、北海道の支庁、京都の通り名などが含まれます。これらの要素を組み合わせることで、日本の住所が構成されます。CRMの住所データには、表記の揺れや省略、誤記が存在することがあります。例えば、「1丁目2番地3号」と「1-2-3」は同じ住所を示しているにも関わらず、表記が異なります。また、「県」や「市」、字・大字の省略などもよく見られます。 人間は、これらの違いをある程度判断し、解釈することができますが、コンピュータにとっては判断が困難となるケースが発生します。

UPWARD ENGINEにおけるジオコーダ

UPWARDのジオコーダは、現在ClassicジオコーダとStableジオコーダの2種類のバージョンを提供しています。

Classicジオコーダ

Classicジオコーダは、基本的な書式に沿った住所情報に対して高い精度で緯度経度への変換が可能です。Classicジオコーダは、住所の区切りを要素として数値で置き換え、要素毎の辞書から検索する方法を採用しています(図2)。そのため、正確でない住所や曖昧な住所においてはジオコーディングの精度が低下することがあります。

図2. Classicジオコーダによりジオコーディング例

Stableジオコーダ

Stableジオコーダは、一方で、上述の日本における住所の特有性の課題に対して速度と曖昧な住所への対応力を向上させることを目的として開発されたジオコーディングです。Stableジオコーダでは、住所の要素のつながりを階層ごとに細かく作成した辞書データをメモリ上に配置することで、検索にかかるコストを削減・検索速度向上の工夫をしています(図3) 。

図3. Stableジオコーダにおけるデータ構造

Classicジオコーダとは異なり、一定のルールでの曖昧さも受け入れることが可能で、特に手入力での住所など「正確な」住所とは異なる場合でもジオコーディング精度の向上が期待できます。また、豊富なコンピュータ資源を有効に活用できるよう設計されており、20倍以上の速度での処理が可能になっています。これらの特徴により、Stableジオコーダーは大量の住所データを効率的に処理することができます。特に、1000万件を超える状況においては、Stableエンジンがより適切な選択肢となります。

UPWARDのジオコーディングのこれから

GISにおけるジオコーディングはUPWARDのコア技術の1つです。引き続き、地理空間データの価値をいち早くご体験頂けるよう、アルゴリズムの最適化、データセットの拡充などお客様のビジネスに寄与できるサービスとしての改善・高度化を進めていきます。

さいごに

UPWARDでは採用を以下の通り積極的に行っております。

部門問わず、少しでもUPWARDにご興味いただいた方は、まずはカジュアルにwebでお話しすることも可能ですので、ぜひコンタクトをお待ちしております。
つながり申請もお待ちしております。
Linkedin
twitter

この記事が気に入ったらサポートをしてみませんか?