【发布时间】:2019-07-10 19:16:10
【问题描述】:
我一直在试用 TensroFlow v2 beta,并且正在试用 tf.keras 模型。
当我编译模型并选择优化器作为字符串'adam' 时。模型可以正确训练:
model.compile(optimizer='adam', loss='categorical_crossentropy')
model.fit(x, y)
但是当我尝试使用默认优化器 tf.keras.optimizers.Adam() 时,它无法被训练并在每次迭代时输出 nan 损失。
adam = tf.keras.optimizers.Adam()
model.compile(optimizer=adam, loss='categorical_crossentropy')
model.fit(x, y)
字符串'adam' 不应该是默认的亚当优化器还是我遗漏了什么?我尝试了几个超参数(learning_rate、beta_1、beta_2 等),但似乎都没有。这很重要,因为我可能不想一直使用默认超参数。
谁能解释这种行为?
【问题讨论】:
标签: python tensorflow machine-learning keras deep-learning