1
4

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 5 years have passed since last update.

Course 2 > Week 1 Practical aspects of Deep Learning(Coursera Deep Learning Specialization 受講記録)

Last updated at Posted at 2018-06-07

Coursera > Deep Learning Specialization > Course 2 : Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization > Week 1 Practical aspects of Deep Learning の個人的な受講記録。

概要

Course 2 では、モデルの精度を上げたり学習速度を向上させるための基本的なテクニックを学ぶ。3週分の講座から構成される。

  1. Week 1 Practical aspects of Deep Learning
  2. Week 2 Optimization algorithms
  3. Week 3 Hyperparameter tuning, Batch Normalization and Programming Frameworks

今回は Week 1 の受講記録。


Setting up your Machine Learning Application

Train / Dev / Test sets

データの分割について。(Train/Dev/Test)
ビッグデータを扱う場合はDev/Testデータセットの比率は少なくても良い(1%やそれ未満など)。TrainとDevデータセットの Distributions (日本語だと「分散」?)が異なることはしばしばあり得るが、DevとTestのデータの Distributions は揃えるべき。DevとTestで全然違うところから持ってきたデータを使っちゃうとデータの傾向が異なるからうまくいかないよ、ということかと。

Bias / Variance

high bias → under fitting
high variance → over fittng

Basic Recipe for Machine Learning

high bias (under fitting) の対策

  • bigger network
  • train longer
  • (Neural Network Architecture の見直し)

high variance (over fitting) の対策

  • more data
  • regularization
  • (Neural Network Architecture の見直し)

最近のディープラーニングの世界においては、high biasとhigh varianceは必ずしもtrade offの関係ではない。

Regularizing your neural network

Regularization

over fitting を解消するためのテクニックのひとつ、Regularization(正則化)。L2 norm や L1 norm がある。L2 regularization のほうが一般的。L1 regularization はスパース化(Wベクトルの要素の多くが0になる)の効果が期待できるが、L2のほうがずっとよく使われる。
※そしてこの講座でもこれ以降は L2 regularization のみ使われているっぽい。
Weight Decayとも呼ばれる。

Why regularization reduces overfitting?

Wの値が抑制され、ネットワークがシンプルな方向に訓練される。

Dropout Regularization

Dropout も Regularization の手法のひとつで、 OverFitting の解消に効果がある。
訓練時、各レイヤの keep_prob の割合だけユニットを残して、それ以外はOFFにする。
Inverted Dropout

Understanding Dropout

ドロップアウトを直感的に理解するための説明
・・・だと思うけど、いまいち理解できず。大勢に影響はなさそうなので気にせず飛ばす。

Other regularization methods

その他のRegularization手法。

  • Data Augmentation
  • データの水増し(画像サイズの反転、切り抜き、回転など)
  • Early Stopping
  • error値が悪化する前に訓練を切り上げる

Setting up your optimization problem

Normalizing inputs

データの正規化
訓練のスピードをアップすることができる
入力データの平均を0、分散を1にする

Vanishing / Exploding gradients

勾配消失、勾配爆発

Weight Initialization for Deep Networks

重みの初期化。
たいていのアクティベーション関数にはHe initialization
TanH(Sigmoidも?)はXavier initialization

Numerical approximation of gradients

微分の近似値の求め方

Gradient checking

勾配確認
バックプロパゲーション処理のデバッグ手法のひとつ。
コスト関数を2回呼び出して偏微分の近似値を求める

Gradient Checking Implementation Notes

Gradient checkingはあくまでもデバッグ目的。トレーニング時は無効にすること。
Dropout時は使えない

Programming assignments

Initialization

0で初期化、ランダム初期化、heの初期化で成績を比較する

Regularization

Non Regularization、L2 Regularization、Dropout で比較する

Gradient Checking

Gradient Checkingによってバックプロパゲーション関数の正当性を評価する

Heroes of Deep Learning (Optional)

Yoshua Bengio interview

あとで見ます・・

1
4
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
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?