"Data Analysis Techniques to Win Kaggle" table of contents /「Kaggleで勝つデータ分析の技術」の目次

This is table of contents of a book "Data Analysis Techniques to Win Kaggle (amazon.co.jp) written in Japanese and published on Oct. 2019. Authors are threecourse, Jack, hskksk, maxwell .

en ja
Data Analysis Techniques to Win Kaggle Kaggleで勝つデータ分析の技術
Chapter I: What is data analysis competition? 第1章 分析コンペとは?
1.1 what is data analysis competition? 1.1 分析コンペって何?
1.1.1 what do you do in competition? 1.1.1 何をするものか
1.1.2 submission and leaderboard 1.1.2 予測結果の提出と順位表(Leaderboard)
1.1.3 team 1.1.3 チームでの参加
1.1.4 prize 1.1.4 入賞賞金・特典
1.2 data analysis competition platform 1.2 分析コンペのプラットフォーム
1.2.1 Kaggle 1.2.1 Kaggle
1.2.2 Rankings 1.2.2 Rankings(ランキング・称号制度)
1.2.3 Kernel 1.2.3 Kernel
1.2.4 Discussion 1.2.4 Discussion
1.2.5 Datasets 1.2.5 Datasets
1.2.6 API 1.2.6 API
1.2.7 Newsfeed 1.2.7 Newsfeed
1.2.8 types of competitions and examples 1.2.8 開催された分析コンペの種類と具体例
1.2.9 formats of competitions 1.2.9 分析コンペのフォーマット
1.3 from start to finish in competition 1.3 分析コンペに参加してから終わるまで
1.3.1 participate in competition 1.3.1 分析コンペに参加
1.3.2 concent to terms 1.3.2 規約に同意
1.3.3 download data 1.3.3 データをダウンロード
1.3.4 prediction 1.3.4 予測値の作成
1.3.5 submission 1.3.5 予測値の提出
1.3.6 check Public Leaderboard 1.3.6 Public Leaderboardをチェック
1.3.7 select final submissions 1.3.7 最終予測値を選ぶ
1.3.8 check Private Leaderboard 1.3.8 Private Leaderboardをチェック
1.4 what do you participate for? 1.4 分析コンペに参加する意義
1.4.1 prize 1.4.1 賞金を得る
1.4.2 performance tiers and ranking 1.4.2 称号やランキングを得る
1.4.3 experience to analyze real data 1.4.3 実データを用いた分析の経験・技術を得る
1.4.4 connection to data scentists 1.4.4 データサイエンティストとのつながりを得る
1.4.5 job oppotunity 1.4.5 就業機会を得る
1.5 key points to win 1.5 上位を目指すためのポイント
1.5.1 tasks and metrics 1.5.1 タスクと評価指標
1.5.2 feature engineering 1.5.2 特徴量の作成
1.5.3 modelling 1.5.3 モデルの作成
1.5.4 validation 1.5.4 モデルの評価
1.5.5 model tuning 1.5.5 モデルのチューニング
1.5.6 ensemble 1.5.6 アンサンブル
1.5.7 workflow in competition 1.5.7 分析コンペの流れ
column - computational resources Column 計算リソース
Chapter II Tasks and Metrics 第2章 タスクと評価指標
2.1 types of tasks 2.1 分析コンペにおけるタスクの種類
2.1.1 regression 2.1.1 回帰タスク
2.1.2 classification 2.1.2 分類タスク
2.1.3 recommendation 2.1.3 レコメンデーション
2.1.4 other tasks 2.1.4 その他のタスク
2.2 datasets 2.2 分析コンペのデータセット
2.2.1 table data 2.2.1 テーブルデー
2.2.2 external data 2.2.2 外部データ
2.2.3 time-series data 2.2.3 時系列データ
2.2.4 image and natural language 2.2.4 画像や自然言語などのデータ
2.3 evalution metrics 2.3 評価指標
2.3.1 what is evaluation metrics? 2.3.1 評価指標(evaluation metrics)とは
2.3.2 metrics for regression 2.3.2 回帰における評価指標
2.3.3 metrics for binary classification - when predict binary label 2.3.3 二値分類における評価指標〜正例か負例かを予測値とする場合
2.3.4 metrics for binary classification - when predict probability 2.3.4 二値分類における評価指標〜正例である確率を予測値とする場合
2.3.5 metrics for multi-class classification 2.3.5 多クラス分類における評価指標
2.3.6 metrics for recommendation 2.3.6 レコメンデーションにおける評価指標
2.4 evaluation metrics and objective function 2.4 評価指標と目的関数
2.4.1 difference between evaluation metrics and objective function 2.4.1 評価指標と目的関数の違い
2.4.2 custom metrics and custom objective function 2.4.2 カスタム評価指標とカスタム目的関数
2.5 metrics optimization 2.5 評価指標の最適化
2.5.1 approaches to metrics optimization 2.5.1 評価指標の最適化のアプローチ
2.5.2 optimize threshold 2.5.2 閾値の最適化
2.5.3 optimize threshold with out-of-fold 2.5.3 閾値の最適化をout-of-foldで行うべきか?
column - out-of-fold Column out-of-foldとは?
2.5.4 predicted probability and its adjustment 2.5.4 予測確率とその調整
2.6 cases of metrics optimization 2.6 評価指標の最適化の例
2.6.1 optimize balanced accuracy 2.6.1 balanced accuracyの最適化
2.6.2 optimize mean-F1 threshold 2.6.2 mean-F1における閾値の最適化
2.6.3 optimize quadratic weighted kappa threshold 2.6.3 quadratic weighted kappaにおける閾値の最適化
2.6.4 optimize MAE with custom objective function 2.6.4 カスタム目的関数での評価指標の近似によるMAEの最適化
2.6.5 approximate MCC with PR-AUC 2.6.5 MCCのPR-AUCによる近似とモデル選択
2.7 leakage 2.7 リーク(data leakage)
2.7.1 unexpected information leakage by host 2.7.1 予測に有用な情報が想定外に漏れている意味でのリーク
2.7.2 wrong validation scheme by participant 2.7.2 バリデーションの枠組みの誤りという意味でのリーク
Chapter III feature engineering 第3章 特徴量の作成
3.1 structure of this chapter 3.1 本章の構成
3.2 model and features 3.2 モデルと特徴量
3.2.1 model and features 3.2.1 モデルと特徴量
3.2.2 baseline feature engineering 3.2.2 ベースラインとなる特徴量
3.2.3 think as if I were a decision tree 3.2.3 決定木の気持ちになって考える
3.3 handle missing values 3.3 欠損値の扱い
3.3.1 use missing values as-is 3.3.1 欠損値のまま取り扱う
3.3.2 fill by statistic values 3.3.2 欠損値を代表値で埋める
3.3.3 predict missing values with other variables 3.3.3 欠損値を他の変数から予測する
3.3.4 create features from missing values 3.3.4 欠損値から新たな特徴量を作成する
3.3.5 recognize missing value in data 3.3.5 データ上の欠損の認識
3.4 transform numerical variable 3.4 数値変数の変換
3.4.1 standarization 3.4.1 標準化(standardization)
column - scaling using only train data or concatenating train and test data Column データ全体の数値を利用して変換を行うときに、
学習データのみを使うか、テストデータも使うか
3.4.2 min-max scaling 3.4.2 Min-Maxスケーリング
3.4.3 non-linear transformation 3.4.3 非線形変換
3.4.4 clipping 3.4.4 clipping
3.4.5 binning 3.4.5 binning
3.4.6 ranking 3.4.6 順位への変換
3.4.7 rankgauss 3.4.7 RankGauss
3.5 transform categorical variable 3.5 カテゴリ変数の変換
3.5.1 one-hot encoding 3.5.1 one-hot encoding
3.5.2 label encoding 3.5.2 label encoding
3.5.3 feature hashing 3.5.3 feature hashing
3.5.4 frequency encoding 3.5.4 frequency encoding
3.5.5 target encoding 3.5.5 target encoding
3.5.6 embedding 3.5.6 embedding
3.5.7 handle ordinal variable 3.5.7 順序変数の扱い
3.5.8 extract information from categorical variable 3.5.8 カテゴリ変数の値の意味を抽出する
3.6 transform datetime variable 3.6 日付・時刻を表す変数の変換
3.6.1 key points to transfrom datetime variable 3.6.1 日付・時刻を表す変数の変換のポイント
3.6.2 features from datetime variable 3.6.2 日付・時刻を表す変数の変換による特徴量
3.7 combine variables 3.7 変数の組み合わせ
3.8 merge other tables 3.8 他のテーブルの結合
3.9 aggregation and statistics 3.9 集約して統計量をとる
3.9.1 take simple statistics 3.9.1 単純な統計量をとる
3.9.2 take temporal statistics 3.9.2 時間的な統計量をとる
3.9.3 filter 3.9.3 条件を絞る
3.9.4 change aggregation units 3.9.4 集計する単位を変える
3.9.5 focus on item, not only user 3.9.5 ユーザ側でなく、アイテム側に注目する
3.10 time-series data 3.10 時系列データの扱い
3.10.1 time-series data 3.10.1 時系列データとは?
3.10.2 use only information prior to prediction point of time 3.10.2 予測する時点より過去の情報のみを使う
3.10.3 wide and long format 3.10.3 ワイドフォーマットとロングフォーマット
3.10.4 lag feature 3.10.4 ラグ特徴量
3.10.5 create feature correspoding to point of time 3.10.5 時点と紐付いた特徴量を作る
3.10.6 time range available for prediction 3.10.6 予測に使えるデータの期間
3.11 dimension reduction and unsupervised learning 3.11 次元削減・教師なし学習による特徴量
3.11.1 principal component analysis (PCA) 3.11.1 主成分分析(PCA)
3.11.2 non-negative matrix factorization (NMF) 3.11.2 非負値行列因子分解(NMF)
3.11.3 latent dirichlet allocation (LDA) 3.11.3 Latent Dirichlet Allocation(LDA)
3.11.4 linear discriminant analysis (LDA) 3.11.4 線形判別分析(LDA)
3.11.5 t-SNE, UMAP 3.11.5 t-SNE、UMAP
3.11.6 auto-encoder 3.11.6 オートエンコーダ
3.11.7 clustering 3.11.7 クラスタリング
3.12 other techniques 3.12 その他のテクニック
3.12.1 focus on mechanisms underlying 3.12.1 背景にあるメカニズムから考える
3.12.2 focus on relationship between records 3.12.2 レコード間の関係性に注目する
3.12.3 focus on relative values 3.12.3 相対値に注目する
3.12.4 focus on location 3.12.4 位置情報に注目する
3.12.5 NLP methods 3.12.5 自然言語処理の手法
3.12.6 apply NLP methods to data other than natural language 3.12.6 自然言語処理の手法の応用
3.12.7 apply topic model to transform categorical variables 3.12.7 トピックモデルの応用によるカテゴリ変数の変換
3.12.8 image features 3.12.8 画像特徴量を扱う手法
3.12.9 decision tree feature transformation 3.12.9 decision tree feature transformation
3.12.10 deanonymize anonymized data 3.12.10 匿名化されたデータの変換前の値を推測する
3.12.11 correct errors in data 3.12.11 データの誤りを修正する
3.13 cases of feature engineering in competition 3.13 分析コンペにおける特徴量の作成の例
3.13.1 Kaggle - Recruit Restaurant Visitor Forecasting 3.13.1 Kaggleの「Recruit Restaurant Visitor Forecasting」
3.13.2 Kaggle - Santander Product Recommendation 3.13.2 Kaggleの「Santander Product Recommendation」
3.13.3 Kaggle - Instacart Market Basket Analysis 3.13.3 Kaggleの「Instacart Market Basket Analysis」
3.13.4 KDD Cup 2015 3.13.4 KDD Cup 2015
3.13.5 other techniques in competition 3.13.5 分析コンペにおけるその他のテクニックの例
Chapter IV Modeling 第4章 モデルの作成
4.1 what is model? 4.1 モデルとは何か?
4.1.1 what is model? 4.1.1 モデルとは何か?
4.1.2 workflow of modeling 4.1.2 モデル作成の流れ
4.1.3 terms and points of modeling 4.1.3 モデルに関連する用語とポイント
4.2 models used in competition 4.2 分析コンペで使われるモデル
4.3 GBDT(gradient boosting decision tree) 4.3 GBDT(勾配ブースティング木)
4.3.1 overview of GBDT 4.3.1 GBDTの概要
4.3.2 characteristics of GBDT 4.3.2 GBDTの特徴
4.3.3 major libraries of GBDT 4.3.3 GBDTの主なライブラリ
4.3.4 how to use GBDT 4.3.4 GBDTの実装
4.3.5 points to use xgboost 4.3.5 xgboostの使い方のポイント
4.3.6 lightgbm 4.3.6 lightgbm
4.3.7 catboost 4.3.7 catboost
column - xgboost algorithm Column xgboostのアルゴリズムの解説
4.4. neural network 4.4 ニューラルネット
4.4.1 overview of neural network 4.4.1 ニューラルネットの概要
4.4.2 characteristics of neural network 4.4.2 ニューラルネットの特徴
4.4.3 major libraries of neural network 4.4.3 ニューラルネットの主なライブラリ
4.4.4 how to use neural network 4.4.4 ニューラルネットの実装
4.4.5 points to use keras 4.4.5 kerasの使い方のポイント
4.4.6 solution references - multi layer perceptron 4.4.6 参考になるソリューション - 多層パーセプトロン
4.4.7 solution references - recent neural network developments 4.4.7 参考になるソリューション - 最近のニューラルネットの発展
4.5 linear model 4.5 線形モデル
4.5.1 overview of linear model 4.5.1 線形モデルの概要
4.5.2 characteristics of linear model 4.5.2 線形モデルの特徴
4.5.3 major libraries of linear model 4.5.3 線形モデルの主なライブラリ
4.5.4 how to use linear model 4.5.4 線形モデルの実装
4.5.5 points to use linear model 4.5.5 線形モデルの使い方のポイント
4.6 other models 4.6 その他のモデル
4.6.1 k-nearest neighbor algorithm (kNN) 4.6.1 k近傍法(k-nearest neighbor algorithm、kNN)
4.6.2 random forest (RF) 4.6.2 ランダムフォレスト(Random Forest、RF)
4.6.3 extremely randomized trees (ERT) 4.6.3 Extremely Randomized Trees(ERT)
4.6.4 regularized greedy forest (RGF) 4.6.4 Regularized Greedy Forest(RGF)
4.6.5 field-aware factorization machines (FFM) 4.6.5 Field-aware Factorization Machines(FFM)
4.7 other points and techniques 4.7 モデルのその他のポイントとテクニック
4.7.1 when there are missing values 4.7.1 欠損値がある場合
4.7.2 when features are many 4.7.2 特徴量の数が多い場合
4.7.3 when target is not correspended to a record 4.7.3 目的変数に1対1で対応するテーブルでない場合
4.7.4 pseudo labeling 4.7.4 pseudo labeling
columns - structure of directories and classes for competition Column 分析コンペ用のクラスやフォルダの構成
Chapter V Validation 第5章 モデルの評価
5.1 what is validation? 5.1 モデルの評価とは?
5.2 validation methods 5.2 バリデーションの手法
5.2.1 hold-out 5.2.1 hold-out法
5.2.2 cross validation 5.2.2 クロスバリデーション
5.2.3 stratified k-fold 5.2.3 stratified k-fold
5.2.4 group k-fold 5.2.4 group k-fold
5.2.5 leave-one-out 5.2.5 leave-one-out
5.3 validation methods for time-series data 5.3 時系列データのバリデーション手法
5.3.1 temporal hold-out 5.3.1 時系列データのhold-out法
5.3.2 temporal cross validation(temporal order aware) 5.3.2 時系列データのクロスバリデーション(時系列に沿って行う方法)
5.3.3 temporal cross validation(temporal order ignorant) 5.3.3 時系列データのクロスバリデーション(単純に時間で分割する方法)
5.3.4 points of time-series data validation 5.3.4 時系列データのバリデーションの注意点
5.3.5 Kaggle - Recruit Restaurant Visitor Forecasting 5.3.5 Kaggleの「Recruit Restaurant Visitor Forecasting」
5.3.6 Kaggle - Santander Product Recommendation 5.3.6 Kaggleの「Santander Product Recommendation」
5.4 validation points and techniques 5.4 バリデーションのポイントとテクニック
5.4.1 purpose of validation 5.4.1 バリデーションを行う目的
5.4.2 mimic split of train and test data 5.4.2 学習データとテストデータの分割をまねる
5.4.3 when distribution between train and test data is different 5.4.3 学習データとテストデータの分布が違う場合
5.4.4 utilize leaderboard 5.4.4 Leaderboardの情報を利用する
5.4.5 "overfit" to validation data or Public Leaderboard 5.4.5 バリデーションデータやPublic Leaderboardへの過剰な適合
5.4.6 create feature for each cross validation split 5.4.6 クロスバリデーションのfoldごとに特徴量を作り直す
5.4.7 augment train data 5.4.7 使える学習データを増やす
Chapter VI Model Tuning 第6章 モデルのチューニング
6.1 hyper-parameter tuning 6.1 パラメータチューニング
6.1.1 hyper-parameter search methods 6.1.1 ハイパーパラメータの探索手法
6.1.2 things to set in parameter tuning 6.1.2 パラメータチューニングで設定すること
6.1.3 points in parameter tuning 6.1.3 パラメータチューニングのポイント
6.1.4 Bayesian optimization 6.1.4 ベイズ最適化でのパラメータ探索
6.1.5 GBDT parameters and tuning 6.1.5 GBDTのパラメータおよびそのチューニング
column - xgboost parameter tuning Column xgboostの具体的なパラメータチューニングの方法
6.1.6 neural net parameters and tuning 6.1.6 ニューラルネットのパラメータおよびそのチューニング
column - MLP parameter tuning Column 多層パーセプトロンの具体的なパラメータチューニングの方法
6.1.7 linear model parameter tuning 6.1.7 線形モデルのパラメータおよびそのチューニング
6.2 feature selection and feature importances 6.2 特徴選択および特徴量の重要度
6.2.1 univariate statistics 6.2.1 単変量統計を用いる方法
6.2.2 feature importances 6.2.2 特徴量の重要度を用いる方法
6.3.3 iterative selection 6.2.3 反復して探索する方法
6.3 imbalanced data 6.3 クラスの分布が偏っている場合
column - algorithms of Baysian Optimization and TPE Column ベイズ最適化およびTPEのアルゴリズム
Chapter VII Ensemble 第7章 アンサンブル
7.1 what is ensemble? 7.1 アンサンブルとは?
7.2 simple ensemble methods 7.2 シンプルなアンサンブル手法
7.2.1 average and weighted average 7.2.1 平均、加重平均
7.2.2 voting and weighted voting 7.2.2 多数決、重みづけ多数決
7.2.3 points and other techniques 7.2.3 注意点とその他のテクニック
7.3 stacking 7.3 スタッキング
7.3.1 overview of stacking 7.3.1 スタッキングの概要
7.3.2 stacking as a method to create feature 7.3.2 特徴量作成の方法としてのスタッキング
7.3.3 how to use stacking 7.3.3 スタッキングの実装
7.3.4 points of stacking 7.3.4 スタッキングのポイント
7.3.5 ensemble using hold-out prediction 7.3.5 hold-outデータへの予測値を用いたアンサンブル
7.4 what models should be included for ensemble? 7.4 どんなモデルをアンサンブルすると良いか?
7.4.1 diverse models 7.4.1 多様なモデルを使う
7.4.2 different hyper-paramters 7.4.2 ハイパーパラメータを変える
7.4.3 different features 7.4.3 特徴量を変える
7.4.4 differnet interpretation of task 7.4.4 問題のとらえ方を変える
7.5.4 model selection for ensemble 7.4.5 スタッキングに含めるモデルの選択
7.5 cases in competition 7.5 分析コンペにおけるアンサンブルの例
7.5.1 Kaggle - Otto Group Product Classification Challenge 7.5.1 Kaggleの「Otto Group Product Classification Challenge」
7.5.2 Kaggle - Home Depot Product Search Relevance 7.5.2 Kaggleの「Home Depot Product Search Relevance」
7.5.3 Kaggle - Home Credit Default Risk 7.5.3 Kaggleの「Home Credit Default Risk」