機械学習

【106位】SIGNATEコンペに挑戦!Jリーグの観客動員数予測

2018年7月5日

SIGNATEコンペに挑戦!Jリーグの観客動員数予測
https://signate.jp/competitions/27/
[blogcard url="https://signate.jp/competitions/27/"]

Jリーグの観客数を予測する問題です。

■データ確認・前処理

ざっと見、欠損は無さそう。

とりあえずデータが複数テーブルに分かれているので、以下のように結合します。

・「モデル学習用試合データ (train.csv)」と「モデル学習用試合追加データ (train_add.csv)」
・「試合詳細データ (condition.csv)」と「試合詳細追加データ (condition_add.csv)」
・学習用試合データと「スタジアムデータ (stadium.csv)」を「name」をキーを元に結合。試合詳細データも「id」をキーに結合

あと基本ですが、trainとtestはくっつた上でまとめて書加工していきます。

■1回目

XGBoostで3,467(106位/456人)

■2回目

入場観客数は、季節やデーゲーム/ナイトゲーム区分によって明らかに異なると思うので、以下特徴量を追加

season:3~5月:spring 6~8月:summer 9~12月:autumn ※12月のゲームはほとんど無く、しかも12/上旬のみだったのでautumnに含めてまいました。
kickofftime:time(キックオフ時間)が時分単位だったので、時単位に丸め。12時台、20時台は値が少ないのでそれぞれ13時、19時に。
yyyymmdd:yearとgamedayを結合
祝日フラグ:祝日は1、その他は0

→スコアは悪化し、リッジ回帰:3,767。うーん・・・

■3回目

各特長量の型をしっかり定義してみました。

→スコア:リッジ回帰で3,767 全く変わらず・・・
XGBoostでも3,551。なんか余計なことしないほうが精度が良いという結果になってしまいました泣

追記:4回目 2018/09/08

全然調べないまま開始してしまった私ですが、これ勉強会などで題材に取り上げられたみたいで、レポートを発見しました。

[blogcard url="https://www.datascientist.or.jp/dssjournal/2016/08/22/lecturereport_n06/"]
[blogcard url="https://www.datascientist.or.jp/dssjournal/2016/09/06/lecturereport_n07/"]

偉大なる先人達の考え方をパクらせて頂いて、暫定評価3,370.10641をsubmitし145位→74位 へ。

[st_af id="2474"]

-機械学習