【実験】ディズニーランドの混雑を予測!!!【弊社のPhantom AI】ならfacebookの予測エンジンも超えることができる!?

いきなりですが、、、


渋滞による経済損失12兆円ってご存知ですか??

https://www.sapjp.com/blog/archives/10833



私は関西出身で、並ぶのが好きでありません。笑

東京に来て驚いたことは、みんな並ぶの好きすぎません?笑

日々遊ぶ時、食事の時も人気店で並ぶより、

適度な混雑でコスパのいいお店、遊びを探しています!(谷口)


そんな短気。。

いや、合理的な人間の方に必見です!!!




例えば、、、

ディズニーランド、どうにか空いてる日を狙って遊びに行きたいですよね??



そこで、我々の未来予測エンジンであるPhantom AI と Facebook の未来予測エンジン Prophet を使って、

ディズニーランドの混雑度を予測してみました!






すると、

Phantom AI は 驚異の 88.9%!!

なんと、、、、Facebookの需要予測エンジン  Prophetの的中率を上回りました!!!!!


では、詳細へ!

*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

Phantom AIを使って予測してみる!

我々のPhantom AIを使って予測するのはとても簡単です !
(ご興味のある事業会社の方は是非お問い合わせください)

「データ読み込み」をクリックして、「Choose File」をクリックし、データが入っているCSVファイルを入力します。


今回入力するデータは、東京ディズニーランドの2013年1月1日から2019年6月14日までの混み具合(全入場者数、データファイルではintakeの列)のデータです。

次に、「データ列指定」をクリック。「時系列の指定」には、データファイルの「2013-01-01」のような年日時が入っている列を指定します。次に、未来を予測したい対象のデータの列を「予測対象の指定」に指定します。

なんとこれで終了です!あとは、「予測結果」に移動しましょう。
すると、Phantom AIは上のような結果を出力してくれます。

一番上の2つの図は、予測の結果と、予測の要因の内訳を示してくれています。

「予測に対する統計的評価」は、今回の予測がどれくらい正しそうであるかを示してくれています。今回の例では、東京ディズニーランドの2019年5月13日から2019年6月14日のデータが仮に無かったとみなし、それより前のデータからこの期間の予測を出します。その予測と、実際のデータと比較した結果がこの「予測に対する統計的評価」です。「標準偏差」とは、簡単に言えば「データのばらつき具合」のことです。予測した値が、実際の値に±標準偏差以上離れていなければ、「正解」とみなしています。

その「正解」が、Phantom AIではなんと約88.9パーセントもありました!



「平均」は皆さんお分かりかと思いますが、「標準偏差」は聞き慣れない言葉かと思いますのでザックリご説明します。

今回の場合だとディズニーランドの入場者数が日々どのくらい変化しているものかを統計的に把握するための数字で、例えば昨日の入場者数が3万人だった時、本日の入場者数は3万人±7800人くらいの範囲に、標準的(約68%の確率)に入ってきます、というものです。



逆にいうと、想定できるブレの範囲内に予測数字を納めることが出来る中心値を推定できれば、エンジンとしては優秀という指標になります。これは、入場者数が30000人でも35000人でもそこまで大きな変化は感じないけれども、4万人になったら結構混んできたと感じるという感覚を数値化したもので、1標準偏差内の誤差であれば実務上は許容できるということの裏返しでもあります。



FB Prophetを使って予測してみる!

次に、Facebook が開発している 時系列データ分析・未来予測モジュールである、
Prophet(https://facebook.github.io/prophet/) を用いて予測してみましょう。

先ほどと同じように、東京ディズニーランドの2019年5月13日から2019年6月14日のデータが仮に無かったとみなし、それより前のデータからこの期間の予測を出します。そのあと、予測と実際のデータとの答え合わせをして評価します。なお、言語はPythonを使用しています。

まずはじめに、データを、train (予測を行うための、2019年5月12日まで)データと testデータに分けます。そして、この状態で予測させ待つこと半日・・・zzz

m = Prophet()
m.fit(train)
future = m.make_future_dataframe(periods=31)

なんと80%の正解率!

決して悪くない、悪くないですよ。
68%→80%への向上なので、その辺のAIエンジンとは比較にならない精度!

ですが、Phantom AIの88.9%と比べるとちょっと見劣りしますね・・・

そこでパラメータを追加してどこまで近づけるか予測精度の向上を目指します!

今回変えるパラメーターはCapacity、Changepoint、Holiday and Seasonalityです。

Capacityについて

Capacityとは、予測対象のデータが取りそうな値の限界の値のことです。

今回のデータでは、TDLが入園制限をするのはだいたい6万人前後からと言われているので、

future['cap'] = 60

と設定します。

Changepoint について

Changepointとは、データ中で、「トレンドが大きく変わったと思われる」点のことです。

東京ディズニーランドは入園料の値上げをデータがあるの期間内で2回(2015年4月1日と、2016年4月1日)行ったそうです。

この図によると、2回目の値上げからトレンドが下がったのように見えます。そこで、2回目の値上げをchangepointとして設定します。

m = Prophet(changepoints=['2016-04-01'])

Seasonality について

Seasonalityとは、季節変動のことです。客足の季節変動を周期的に変化する量と見て、周期関数の和として表現します。 

ここで重要なのは1周期の長さとfourier_order(いくつの関数で表現するか)です。fourier_orderが大きすぎると、計算に時間がかかってしまいます。デフォルトではこの値は10です。

m.add_seasonality(name='monthly', period=30.5, fourier_order=2)

と設定します。

結果

パラメータを加えて、前情報を追加インプットすることで、なんとか85.7パーセントへ持って行くことが出来ました。

予測を図に表すとこんな感じです。

まとめ

いかがでしたか。今回は、Phantom AIとProphetと使って東京ディズニーランドの混み具合を予測してみました。Phantom AIは操作が手軽で、そしてデフォルトの設定のまま数秒待つだけで高い予測精度が出せたことが確認出来ました! Facebookのエンジンよりも1万倍速くて精度で勝っている!

Facebookのエンジン「Prophet」は、決して悪いエンジンではなく、これを超えるエンジンは(当社を除いて)ほとんど無いくらいグローバルスタンダードなエンジンです。チューニングを繰り返すことで、もう少しPhantom AIに近付けることが出来るかも。


ユニバの入場者数も予測できますね!!!!

うぃんがーでぃあんれびおーさー!!!!笑

財産ネット株式会社's job postings
3 Likes
3 Likes

Weekly ranking

Show other rankings