Adam

Adam を説明している以下の文で空欄に入る適切な単語を 1 ~ 3 から選んでください.

Adam は,( Q1 ____ ) を組みわせた最適化アルゴリズムである.Adam は適応学習率アルゴリズムであるため,学習率はデフォルトで
( Q2 ___ ) を使えることが多い.

[Q1の選択肢]
1. Momentum 最適化と確率的勾配降下方と
2. Momentum 最適化と RMSprop 最適化
3. Momentum 最適化と NAG

[Q2の選択肢]
1. 0.001
2. 0.9
3. 0

RMSprop の実装

Tensorflow を用いて、AdaGrad を実装してください.

learning_rate = 5e-1
momentum = 0.9
Aoptimizer = ##########

1. tf.train.RMSpropOptimizer(momentum=momentum, learning_rate = learning_rate, epsilon=1e-10)
2. tf.train.RMSpropOptimizer(momentum=momentum, learning_rate = learning_rate, epsilon=1e-10, nesterov=False)
3. tf.train.Afagradoptimizer(momentum=momentum, learning_rate = learning_rate, epsilon=1e-10, rmsprop=False)
4. tf.train.Afagradoptimizer(momentum=momentum, learning_rate = learning_rate, epsilon=1e-10, rmsprop=True)

Adam

Momentum 最適化の説明として正しいもの選択肢から選んでください.

1. 任意の決められたステップに従って勾配を下っていくことで、コスト関数が採用となるハイパーパラメータを見つける手法である.
2. 勾配に慣性を与えることで、コスト関数の最小値を高速で見つけることができる.
3. 慣性の更新のために、慣性方向の少し先の勾配を利用する.
4. 重みの更新時に、それまでの全ての勾配を均一に加味して学習率を徐々に小さくしてくことで、高速で解にたどり着ける.
5. 重みの更新に近い過去の勾配の情報を用いることで、高速に解へたどり着ける.
6. 慣性最適化に適応学習率の考えを取り入れることで、高速かつ安定に解へたどり着くことができる.

AdaGrad

Momentum 最適化の説明として正しいもの選択肢から選んでください.

1. 任意の決められたステップに従って勾配を下っていくことで、コスト関数が採用となるハイパーパラメータを見つける手法である.
2. 勾配に慣性を与えることで、コスト関数の最小値を高速で見つけることができる.
3. 慣性の更新のために、慣性方向の少し先の勾配を利用する.
4. 重みの更新時に、それまでの全ての勾配を均一に加味して学習率を徐々に小さくしてくことで、高速で解にたどり着ける.
5. 重みの更新に近い過去の勾配の情報を用いることで、高速に解へたどり着ける.
6. 慣性最適化に適応学習率の考えを取り入れることで、高速かつ安定に解へたどり着くことができる.

ネステロフ慣性最適化

ネストロフ最適化の説明として正しくないものを選択肢から選んでください.

1. ネステロフ最適化は、ほとんどのケースで Momentum 最適化よりも早く解にたどり着く.
2. ネステロフ最適化は NAG とも呼ばれる.
3. TensorFlow にはネステロフ最適化のためのクラスが存在している.
4. データセットによっては、まれに Adam などのオプティマイザーよりもネステロフ最適化を用いた方がモデルの汎化性能が向上することがある.

ネステロフ慣性最適化の実装

Tensorflow を用いて、Momentum 最適化を実装してください.( 慣性は 0.9 )
M_optimizer = ##########

1. tf.train.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=True)
2. tf.train.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=False)
3. tf.optimizer.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=True)
4. tf.optimizer.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=False)

ネステロフ慣性最適化の実装

Tensorflow を用いて、ネステロフ慣性最適化を実装してください.( 慣性は 0.9 )
N_optimizer = ##########

1. tf.train.MomentumNesteerov(learning_rate=learning_rate, momentum=0.9)
2. tf.train.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=False)
3. tf.train.MomentumOptimizer(learning_rate=learning_rate, momentum=0.9, use_nesterov=True)

ネステロフ慣性最適化

Momentum 最適化の説明として正しいもの選択肢から選んでください.

1. 任意の決められたステップに従って勾配を下っていくことで、コスト関数が採用となるハイパーパラメータを見つける手法である.
2. 勾配に慣性を与えることで、コスト関数の最小値を高速で見つけることができる.
3. 慣性の更新のために、慣性方向の少し先の勾配を利用する.
4. 重みの更新時に、それまでの全ての勾配を均一に加味して学習率を徐々に小さくしてくことで、高速で解にたどり着ける.
5. 重みの更新に近い過去の勾配の情報を用いることで、高速に解へたどり着ける.
6. 慣性最適化に適応学習率の考えを取り入れることで、高速かつ安定に解へたどり着くことができる.

AdaGrad

AdaGrad を説明している以下の文で空欄に入る適切な単語を選択肢からそれぞれ選んでください.

AdaGrad では,勾配に応じて ( Q1 ___ ) を変化させていくことで訓練を最適化する.
具体的には,勾配が大きな時,つまり傾斜が急な場合には学習率を大きくし,傾斜が緩やかになると学習率を小さくする.
これを (Q2 ___ ) と呼ぶ.ただし ( Q3 ___ ) では,学習率が下がりすぎてしまい,全体の最適解が求まる前に訓練が終了することがある.
AdaGrad は単純な ( Q4 ___ ) 問題では効率よく最適解を見つけ出すことができる.

[Q1の選択肢]
1. 慣性
2. 勾配降下速度
3. 学習率
4. 勾配降下加速度

[Q2の選択肢]
1. 適応学習率
2. 最適化学習率
3. Ada 学習率

[Q3, Q4の選択肢]
1. SVM
2. 2 次元
3. 2 次元以上
4. 深層 DNN

AdaGrad

AdaGrad を説明している以下の文で空欄に入る適切な単語を選択肢からそれぞれ選んでください.

AdaGrad では,勾配に応じて ( Q1 ___ ) を変化させていくことで訓練を最適化する.
具体的には,勾配が大きな時,つまり傾斜が急な場合には学習率を大きくし,傾斜が緩やかになると学習率を小さくする.
これを (Q2 ___ ) と呼ぶ.ただし ( Q3 ___ ) では,学習率が下がりすぎてしまい,全体の最適解が求まる前に訓練が終了することがある.
AdaGrad は単純な ( Q4 ___ ) 問題では効率よく最適解を見つけ出すことができる.

[Q1の選択肢]
1. 勾配降下速度
2. 勾配降下加速度
3. 学習率
4. 慣性

[Q2の選択肢]
1. 適応勾配率
2. 適応慣性率
3. 適応学習率

[Q3, Q4の選択肢]
1. ユニット数の小さい DNN モデル
2. 深層な DNN モデル
3. 高次元
4. 2 次元