精度を上げたい時用の参考にメモ。
4位のモデル
この方も過去のコンペを参考にしたそうです。
https://www.kaggle.com/c/the-nature-conservancy-fisheries-monitoring
https://www.kaggle.com/c/the-nature-conservancy-fisheries-monitoring
https://www.kaggle.com/c/state-farm-distracted-driver-detection
https://www.kaggle.com/c/yelp-restaurant-photo-classification
前処理と特徴エンジニアリングについて
前処理と特徴エンジニアリングにはほとんど時間をかけなかった。
トリミング、シャーリング、回転、フリップなど、たくさんの画像をオーギュメンテーションした。
学習方法について
Kerasのシンプルな畳み込みニューラルネットワーク(CNN)を最初から構築しましたが、ほとんどの場合、VGG16、VGG19、Inception V3、Xception、およびResNetsのさまざまなモデルを使用しました。
アンサンブルとスタッキングがすごい。
weighted average:重要度を加味した平均を加重平均
http://mathwords.net/kajuheikin
scaled weighted average:って何だろ。。
3位のモデル
この方はこれを受講してた。
http://www.fast.ai/
スタンフォードのCS231nコースのオンラインノート
kaggle winerインタビュー
http://blog.kaggle.com/category/winners-interviews/
など参考にした。
前処理について
無作為にデータを分割して、訓練セットのわずか8%を含む検証セットを作成。
必要に応じてデータを破棄あるは正規化、増加させた。
学習について
VGG16 ImageNetに事前訓練し、微調整。
ResNet50 ImageNetに事前訓練し、微調整。
ConvNetについてはスルー。。。
ゼロから訓練を受けたResNet50。
3つのXceptionモデルImageNetに事前訓練し、微調整。
事前訓練InceptionV3、Resnet50、VGG16、Xception、lightGBM及び5層ニューラルネットワークから抽出された特徴。
InceptionV3はgooglenetから進化してきた。仮面ライダーv3みたいなイメージ。
XceptionはInceptionの層を分けることで、計算処理を早めたようなイメージを持ってる。
LightGBMはxgboostみたいなやつ。
http://qiita.com/TomokIshii/items/3729c1b9c658cc48b5cb
比較的低レベルのモデルをミックスすることによる効果に驚いた。
ReLUからLeaky ReLU、Randomized Leaky ReLUに変えることで大きな影響があった。