ゼロから作るDeep Learning まとめ(2)

今日は6章を読んだ.

6章 学習に関するテクニック

  • パラメータの更新方法
    • SGD: 勾配方向に動くので傾きがゼロになると終わる. ジグザグ降りていくことがあり無駄
    • Momentum: ボールを転がす. ジグザグが緩和
    • AdaGrid: 大きく更新されたものは学習率を小さくする
    • Adam: Momentum + AdaGrid
    • どれを使えばいいか?: SGDは悪い. Adamが流行ってる
  • 重みの初期値: アクティベーション(活性化関数の出力)において偏りがないことが良い条件. 偏りがある = いっぱいノード持ってる意味ないじゃん. 特に0,1に偏った場合, sigmoid的に傾き0になるため, 学習が出来なくなる(勾配消失)
    • 重みゼロは明らかにまずい. みんな同じになってしまう
    • Xavier: sigmoid, tanh向き
    • Han: ReLU向き
  • Batch Normalization
    • アクティベーションの分布を適度な広がりを持つように調整するレイヤ. 有能
    • 学習の高速化
    • 過学習の防止(Dropoutを使う必要が減る)
    • 重みの初期値に対してロバストになる
    • DLと相性が良い
  • 過学習 (overfitting)
    • Weight Decay: 正則項 = 大きなパラメータに対するペナルティ
    • Dropout: 過学習の要因の一つである「パラメータが多くて表現力がありすぎる」に対する解. ランダムにノードを落としていく
    • ハイパーパラメータの検証にはテストデータとは別のものを使う必要がある. (検証データという)
comments powered by Disqus
Built with Hugo
テーマ StackJimmy によって設計されています。