チラ裏備忘録

情報整理

Tensorflow 2.x 最適化手法を"インスタンス"で渡す時と"文字"で渡す時の違い

参考: 最適化 - Keras Documentation

from tensorflow import keras
#(中略)
sgd = keras.optimizers.SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='mean_squared_error', optimizer=sgd) # 上行で作成したSGDインスタンスを指定

#もしくはmodel.compile(loss='mean_squared_error', optimizer='sgd')

最適化手法をcompileメソッドに渡す際,上記のようにkeras.optimizers.(最適化手法)のインスタンスを指定する場合と,最適化手法の名前(str型)を渡す場合の2通りがある.

違い

前者: 学習係数(lr)や重み減衰(decay)を自由に設定できる.
後者: 各最適化手法のデフォルトパラメータが利用される.


記事にするほどでもなさそう…
通常の使用なら文字指定でいいんだろうか(初心者並感)