イベント情報を AI 需要予測に活用するための 3 つの壁

突然ですが、観客数日本一を誇る「江戸川区花火大会」の来場者数をご存じでしょうか。
実に、 139 万人( 2020 年開催)です。
この規模のイベントともなると、周辺の施設・店舗でも来客数が増え、欠品してしまったり人手が足りなくなったりと少なからぬ影響を受けます。

さて、AI需要予測において、このイベント情報を学習させることができたら、よりきめ細かい予測ができそうです。
そんなわけで、弊社『ソトミル』でも天気、SNS の他に、イベントも取り扱うことになりました。

イベント情報を AI 需要予測に活用するための 3 つの壁

イベント情報の収集にいそしんだわけですが、すぐさま壁にぶつかりました。
一つは、どのイベント情報を取得するか。
一つは、信頼性の高いイベント情報をどうやって入手するか。
一つは、どうやって需要予測に使うか。

順番にお話していきます。


どのイベント情報を取得するか。

作業を始めてすぐに、世にある有象無象のイベントのまとまった情報源が存在しないことに気がつきました。というのも、イベントと一口に言っても色々ありすぎるのです。

例えば、お花見、クリスマス、プロ野球観戦など、世間では日々さまざまなイベントが開催されています。周辺店舗の来客数に影響を与えると言う意味では、自治体主催の地元のお祭りや小学校の運動会など小さなものでも拾っていく必要があるかもしれません。

また、新型コロナウイルス感染症緊急事態宣言も、人出に影響を与えるという意味で、ある種の「イベント」と言えるでしょう。

細かい話になりますが、実際にデータを取得するという具体的なことを考え出すと、国や自治体、小学校などは各自のホームページで情報発信をしており、フォーマットも異なるため、それらひとつひとつを WEB スクレイピングするのは現実的ではありませんでした。お花見や花火大会などの季節イベントも、それぞれのまとめサイトはあるものの、全国を網羅し、かつ、信頼のおける情報発信源は少なそうでした。試しにジモティをスクレイピングしてみたら、数十人規模のイベントがほとんどで、これは使えないなと断念。

図. GCPのBigQueryに流し込んだスクレイピング結果

プロ野球観戦やライブのようなチケット系はまた別で、チケット販売のまとめサイトを選ぶ必要がありました。最近ではオンライン開催というのも多く、これも除外しなければなりません。
そこで、まずは種類と規模という軸で、以下のように整理し、的を絞ることを考えました。

 規模:大、中、小
 種類:人流が増える、減る、影響なし

弊社の取引先に多いメーカーや卸など、物流の上流にいる全国展開している規模の会社からすると、5 万人規模のイベントでも影響は受けません。むしろ、予測時にはノイズになってしまう可能性も高く、 30 万人規模以上のイベントに絞って考え直してみました。
すると、自治体や小学校など地元のイベントはもちろん、プロ野球観戦(東京ドームに満員でも 5.5万人)なども拾う必要がないことに気がつきました。

信頼性の高いイベント情報をどうやって入手するか。

取得したいイベント情報はある程度絞り込めたものの、自分たちで WEB スクレイピングする場合、記載ミスや中止情報などは拾いきれません。一件ずつ、開催元に電話して確かめる、という人海戦術も使えないので、やはり、信頼できる情報源が必要でした。
いろいろと探してみて、旅行ガイドブック『るるぶ』で有名な JTB パブリッシング様にご協力いただけることになりました。

信頼性の高いデータで、フォーマットも統一されている上に、定期的に開催元に確認して中止などのアップデートもされています。開催場所の緯度経度、駐車場の有無まで含まれており、まさにお宝データ。
これを、全国の観光・イベント情報として定期的に API でいただく形で落ち着きました。

弊社 GCP 環境に自動で取り込めるようにデータパイプラインを作成し、データポータルで視覚化したものがこちら。

図2. API 取得した『るるぶ』データの視覚化(GCP)
※データはサンプルです

クレンジングもほとんど必要ありませんでした。バッチリ、全国網羅されております。


イベント情報を、どうやって需要予測に使うか。

イベント情報(日時・場所・来場者数)に含まれる「来場者数」は、あくまで目安の数値。AI 需要予測に数値データとしてそのまま使うのではなく、昨年度の来場者数からイベントによる影響度ランク(五段階)として使うことにしました。

ただ、例えば気温のような数値データであれば、商品の売れ行きと大きく相関がみられるなど分析の精度も上がるため、イベントも同様に、よりダイレクトな数値データ(人数)も欲しいと考えています。

日本国内で考えるなら、イベント情報の日時・場所と、DoCoMo や KDDI 等の人流データを重ねれば、精度の極めて高いイベント情報になりそうで、検討中です。

この辺の話はまた別の回で紹介します。

まとめ

 ・イベントにも色々ある
 ・イベント情報はスクレイピング取得には不向き
 ・イベント情報は人流と重ねるとさらに精度向上が見込まれる

次回、少し技術的な内容ですが、このイベントAPIを視覚化するまでのGCPの裏側の仕組みについて解説します。技術ネタですが、エンジニアじゃない人でも読める簡単な記事になっております。