Kaggle -Recruit Restaurant Visitor Forecasting

この記事は約3分で読めます。

二つの予約システムの予約データと訪問データを使用して、今後のレストランへの訪問者の総数を予測するコンテスト。

評価関数は、平方平均二乗対数誤差で算出する。

データセットの概要

訓練データは2016年から2017年の、テストデータは、2017年の4月と5月の最後の週の二つの予約サイトの以下のデータ(店の場所、ジャンル、予約時刻、来客者数、日付が休日かどうかのデータ)結果はゴールデンウイークを含めたものの提出が必要だが、意図的に抜いている。

***_reserve.csv

  • ***_store_id – ***システムのレストランのID
  • visit_datetime – 予約時刻
  • reserve_datetime – 予約が行われた時刻
  • reserve_visitors – その予約による来客者

***_store_info.csv

  • ***_store_id
  • ***_genre_name – ジャンル
  • ***_area_name – 地域名
  • latitude – 緯度
  • longitude – 経度

store_id_relation.csv – 両方のシステムに登録されたレストランの、IDのリレーション。

  • hpg_store_id
  • air_store_id

air_visit_data.csv – air restaurantsの履歴データ

  • air_store_id
  • visit_date – 日付
  • visitors – その日のレストランへの訪問者の数

sample_submission.csv – 提出ファイルの形式を表示したもの。

  • id – idは、air_store_idとvisit_dateをアンダースコアで連結
  • visitors – 店舗と日付の組み合わせで予測される訪問者の数date_info.csv – 日付のデータ
  • calendar_date – 年月日
  • day_of_week – 曜日
  • holiday_flg – 日本の休日かどうか

結果予測のための主要な問題点

  • 訓練データにはない、ゴールデンウィークへの集客予測

よく行われている前処理、特徴量エンジニアリング

  • 週末/休日フラグによる重み付けの調整
  • 予約時間と訪問時間が異なるものを、ずれの範囲ごとに分類
  • 徒歩圏内の類似ジャンルの店舗数を集約
  • 年末年始に非常に高い予約者数になるので、外れ値を異常値としないよう処理
  • 各店舗の季節ごと、曜日ごとに重み付けを行う
  • データセットにはない気象データから、降水量と気温を作成
  • 二つの異なる予約サイトのデータのため、両方に登録されている店舗があるが、

成績上位者のモデルや工夫

  • さっとみた感じでは、モデルはニューラルネットワークなどのディープラーニングが中心。あと、LightGBMというのがあった。
  • トレーニングデータを使用、応用するだけでなく、他で公開されているデータを使用したりしている.
  • 必要なこと、足りないこと
  • 実践ではなんでもあり。業務知識、経験を短期間で見つける必要がある。
タイトルとURLをコピーしました