AI プロンプトでハフモデルを行う方法

ハフモデルは、消費者が、任意の商材を購入する際、どの店舗を選択するかを推定するための空間分析モデルです。

店舗の魅力度(規模など)と顧客からの距離を考慮して、居住地などをもとに各顧客の各店舗を訪れる確率を計算します。

ハフモデルの基本的な考え方は、大きな店舗ほど魅力的で、遠い店舗は訪問されにくいというシンプルな原理に基づいています。

私たちが店を選ぶとき、品揃えが豊富な大きな店には惹かれますが、そこへ行くまでの道のりが遠ければ「面倒だ」という心理的なブレーキがかかります。この直感を論理的に整理したのがこのモデルです。

具体的には、顧客が特定の店舗を選択する確率を以下の式で計算します。

来店確率 = 魅力度 / 全店舗の魅力度の合算値

この式が示すのは、ある店の選ばれやすさは、その店単体の良さだけで決まるのではなく、周辺にあるすべてのライバル店の魅力度を合計した中での「シェア」で決まるということです。

ここで鍵となるのが、以下の魅力度の定義です。

魅力度 = 店舗規模 / 距離^距離抵抗係数

魅力度は店舗の規模に比例して大きくなりますが、距離の「累乗」で割られるため、遠くなればなるほど急激に低下します。

この低下の度合いを左右するのが「距離抵抗係数」であり、業種や商品特性によって変化させるべき重要なパラメータです。

この係数が大きいほど、距離が店舗選択に与える影響が強くなります。

一般的な目安として、コンビニやスーパーといった日常的な最寄り店舗で購入するような商品を扱っている店舗では、わずかな距離の差が判断を左右するため係数を2.0〜3.0程度と高く設定します。

一方で、家電量販店や家具店などで購入するような、ある商品を購入するために、いくつかの店舗を回って比較検討するような商品は、多少遠くても品揃えを優先して比較検討したいため、係数を1.0〜1.5程度にします。

さらに、ブランド店や高級レストラン、嗜好性の高い専門品などの場合は、わざわざ遠出する価値があるため、さらに低い係数として、0.5〜1.0程度と小さくなり、距離が遠くても魅力度が落ちにくいと考えます。

このように、店舗のサイズという「引力」と、商品ごとに異なる「移動の心理的ハードル」を組み合わせることで、ハフモデルは消費者のリアルな行動を推定しています。

ハフモデルの活用

ハフモデルを活用することで、企業は店舗戦略の最適化と市場機会の特定を実現できます。

顧客の店舗選択行動を定量的に予測することで、新規出店計画の立案、既存店舗の売上予測、商圏分析、競合分析など、様々な戦略的意思決定の精度を向上させることができます。特に、複数の店舗が競合する環境において、各店舗がどの程度の集客力を持つかを客観的に評価できる点が大きな強みです。

必要なデータ

ハフモデルを実行するには、以下の情報を含む2つの種類のデータが必要です。

顧客データ

1行が1人の「顧客」または分析対象となる居住エリアの代表点を表し、以下の情報を列に持つデータが必要です。

  • 顧客を一意に識別できる情報(顧客ID、会員番号、エリアIDなど)
  • 顧客の現在地や居住地の位置情報(緯度・経度)

店舗データ

1行が1つの「店舗」を表し、以下の情報を列に持つデータが必要です。

  • 店舗を一意に識別できる情報(店舗ID、店舗名、支店番号など)
  • 店舗の魅力度の基準となる数値(売り場面積、品揃え数、従業員数、ブランド評価スコアなど)
  • 店舗の緯度・経度

ハフモデルの分析では、これら2つのデータを組み合わせて、1行が「1人の顧客と1つの店舗のペア」を表す分析用データを作成します。

AI プロンプトを使って、ハフモデルを実行する

今回は、顧客データと店舗データを使って、AIプロンプトでハフモデル分析を実行します。(顧客データはこちらから、店舗データはこちらからダウンロードいただけます)

なお、顧客データには、顧客IDと顧客の位置情報(緯度・経度)が含まれています。

店舗データには、店舗名、店舗規模(売り場面積など)、および店舗の位置情報(緯度・経度)が含まれています。

顧客データを開いたら「AI データ加工」のボタンをクリックします。

AI プロンプトのダイアログが開いたら、@をタイプして、同じプロジェクト内の「店舗情報」のデータフレームを選択します。

続いて、以下のようなテキストを入力し、実行します。

@店舗情報を使ってハフモデルを実行する

するとハフモデルを実行するためのコードが生成されます。

生成されたコードでは、顧客データと店舗データを結合し、両者間の距離を計算し、店舗の魅力度と各顧客の来店確率を算出します。

使用している関数の説明や期待される結果を確認し、「ステップとして実行」ボタンをクリックします。

ステップが追加され、ハフモデルのためのデータを作成できました。

結果データには、各顧客と各店舗の組み合わせごとに、距離、魅力度、来店確率が計算されています。また、各顧客について最も来店確率が高い店舗も識別されています。

後はチャートで可視化するだけです。今回は地図上に「顧客ごとに最も来店確率が高い店舗」を表示します。

チャート・ビューに移動して、タイプには「地図 - 緯度/経度」を選択し、経度には顧客の経度情報、緯度には顧客の緯度情報を選択します。

続いて、「色で分割」には店舗を一意に特定する列を選択します。

元のデータには、全ての顧客と店舗のペアが含まれるため、この段階では「顧客ごとに最も来店確率が高い店舗」は表示されておらず、全て店舗情報が重なっています

そこで、チャート上部のフィルタの追加ボタンをクリックして、「最も来店確率が高い店舗」を選択し、演算子が TRUE であることを確認したら実行します。

これで、最も来店確率が高い店舗のみが表示されていることを確認できます。

最後にサイズに「来店確率」を選択することで、顧客ごとに最も来店確率が高い店舗と、その確率の大きさを可視化できます。

距離抵抗係数を指定する

距離抵抗係数は業種や商品特性に応じて調整できます。

例えば、以下のように、m商品種別を指定したり、距離抵抗係数を直接指定するプロンプトを実行することが可能です。

@店舗情報を使って距離抵抗係数2.0でハフモデルを実行する

@店舗情報を使って嗜好品のハフモデルを実行する

Export Chart Image
Output Format
PNG SVG
Background
Set background transparent
Size
Width (Pixel)
Height (Pixel)
Pixel Ratio