110
114

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

KaggleのKernel手法まとめ[テーブル時系列データ編]

Last updated at Posted at 2019-12-28

この記事では、Kaggleコンペにおいてデータ型ごとの定石みたいなものを書いていきます。また、コンペ関係なく精度が出ない時のヒントなどになれば良いなと思います。

alt

今回は以下のコンペ・データセットに触れていきます。コンペの場合はKernelがないので、Notebooksをまとめて行こうと思います。
Predict Future Sales
Avocado Prices

1.Predict Future Sales

タイプ:回帰
概要:店の名前、商品の名前などから翌月1ヶ月での商品の売り上げ個数を予測

1.1Time series Basics : Exploring traditional TS

実行した分析 結果
特徴量のヒストグラムの可視化 カテゴリに偏りがある事を発見
時系列順に特徴量のプロット 季節ごと、またトレンドの入れ替わりがある事がわかる
ADF,KPSS,PPでステーショナリティ(周期性)をチェック 周期性の有無を知る
AR, MA, ARMAモデルなどを試す

他にもHierarchical time series(ヒエラルキー時系列)におけるアプローチの仕方、ボトムアップ、トップダウン、ミドルアウトを紹介しています。

とりあえず時系列データは時期によるアップダウンをどんな風に数式に落としていくかが大事なんですねー

関連

Forecasting Hierarchical Time Series using R

Rで計量時系列分析:AR, MA, ARMA, ARIMAモデル, 予測

###1.2 Feature engineering, xgboost

実行した分析 結果
特徴量を可視化 ノイズデータを見つけたので他の数値で補間
特徴量エンジニアリング(月平均を日ごとの売り上げから出す、ある期間における売り上げの平均を特徴量として追加など) 精度の向上
xgboostで予測

時系列としての情報を地道に特徴量エンジニアリングで特徴量に落とし込んで、xgboostで予測するという形でした。この地道な特徴量エンジニアリングすごい〜

関連

過去に特徴量エンジニアリングについて記事を書いたのでこちらも是非
特徴量エンジニアリング備忘録

1.3 A beginner guide for sale data prediction

実行した分析 結果
特徴量の可視化 季節ごとのパターンを発見・特徴量に落とす事を決めた
LSTMで予測

1.4 1st place solution - Part 1 - "Hands on Data"

実行した分析 結果
特徴量エンジニアリング(売り上げが数ヶ月ない店をグルーピングする、店の名前の重複を発見、名前からカテゴリを抽出et) 精度の向上

まとめ

ここからわかるように、
データの可視化 -> データの傾向を見る -> 特徴量エンジニアリング -> モデルに突っ込む

というルーティーンが共通しています。

2.Avocado Prices

続いて、時系列データセットの方からもう一つ紹介したいと思います。ここからは使用した手法を中心にみていきます

タイプ:回帰・分類両方
概要:過去のアボカドの売り上げのデータ

2.1 Price of Avocados || Pattern Recognition Analysis

このカーネルは可視化が綺麗すぎる&細かいです。感動。

使用した手法
Smoothing Moving Average
Seasonal Naive Method
Drift Method
ARIMA

2.2 Explore avocados from all sides!

これもめっちゃ可視化が綺麗。
これはオーガニックのアボカドかそうじゃないかっていう分類問題にしています。

使用した手法
logistic regression
RandomForest
KNeighborsClassifier

2.3 Predicting prices of avocados

使用したツール
prophet

2.4 EDA + Lasso

こちらも分類問題に落とし込んでいます。

使用した手法
DecisionTree
RandomForest
KNeighbours
SVM
AdaBoostClassifier
GradientBoostingClassifier
Xgboost
Lasso
Ridge
Bayesian Ridge
ElasticNet
HuberRegressor

まとめ

特徴量エンジニアリングと可視化が大事!
alt

リンク

代表的な機械学習手法一覧

110
114
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
110
114

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?