#Neural Network について
人間の脳の構造から頑張って作った柔軟で自由度の高いモデル
##学習の流れ
- 他のモデルとは異なって学習回数(=エポック数)がとても重要となる
→モデルが複雑だから- エポックはEarly Stoppingによって適度に打ち切る
-
Early Stopping
n回誤差が下がらなければ(=精度が上がらなければ)打ち切る手法
-
Early Stopping
- バッチはデータセットによって決める
- 基本的に$2^n$で適切なバッチサイズを決定する
- データセットの件数が数百件であれば32や64を試し,数万件であれば1024や2048を試す.
- エポックはEarly Stoppingによって適度に打ち切る
-
活性化関数
NNの各層において作用させる関数のこと. - 各層の重みの初期値について
- ゼロで始めるのではなくある程度truncated_normal(切断正規分布)などでランダムな値を入れることで学習しやすい傾向がある
-
One-Hot表現
Neural Networkで分類モデルを作る時,0と1で各分類を表現して出力ノードに割り当てるもの - 損失(誤差)関数
#三大Neural Networkモデル
- Neural Network
- Convolutional Neural Network
- @icoxfog417さんのコチラがとてもわかりやすい
- Recurrent Neural Network
#データセットについて
- 異常値について
- 人間やセンサーの記録ミスで,ありえない値を測定することがある.
- 異常値をそのままモデルの作成に用いると質の低いモデルができてしまう.
- 欠損値について
- 数値以外のデータが存在すると,機会が学習することができない
- 欠損値が含まれるサンプルそのものを除去する
- 欠損値の前後の値などの平均で補完(相関がある場合のみ)
- 数値以外のデータが存在すると,機会が学習することができない
- 質的変数のダミーについて
- 機械学習では基本的に数値のみの値しか用いることができないことから,血液型などの文字の分類に対してダミー数値を用いて置換する必要がある.
- 正規化について
- データのスケールを合わせる
- 標準化を行う(平均:0,分散1)
- クラスタリングやPCAには必須
- 学習速度の向上が見込める
- データのスケールを合わせる
#参考
この記事は私が勉強用に作っています.
間違いや古い内容で新しいことなどがあれば,ぜひご指摘いただきたいです.