Tensorflow tf.keras.optimizer('fo')中的optimizer.weights是什么?

Tensorflow tf.keras.optimizer('fo')中的optimizer.weights是什么?,tensorflow,keras,Tensorflow,Keras,听起来它给出了一个与优化器工作方式相关的变量列表,我不必担心这一点。但是,我怀疑这也与我试图最小化的事情和我使用的变量有关。这是真的吗?换句话说,在我的神经网络中只使用一个具有多个目标函数的优化器安全吗?或者我应该为每个优化器实例化一个单独的优化器吗?通常,您坚持使用一个优化器 你把所有损失加起来 total_loss = loss1+loss2+lossN 如果你认为一种损失比另一种损失更大,你可以将它们相互权衡: total_loss = 0.01*unimportant+regular+

听起来它给出了一个与优化器工作方式相关的变量列表,我不必担心这一点。但是,我怀疑这也与我试图最小化的事情和我使用的变量有关。这是真的吗?换句话说,在我的神经网络中只使用一个具有多个目标函数的优化器安全吗?或者我应该为每个优化器实例化一个单独的优化器吗?

通常,您坚持使用一个优化器

你把所有损失加起来

total_loss = loss1+loss2+lossN
如果你认为一种损失比另一种损失更大,你可以将它们相互权衡:

total_loss = 0.01*unimportant+regular+10.0*low_rare_and_important

不打算使用多个优化器。这可能会导致更高的内存消耗。不过,并不严格禁止您拥有多个。

这一点很清楚。但是,假设我决定分别优化每个损失。对所有这些对象使用相同的优化器对象安全吗?从技术上讲,优化器只需根据可训练参数得到损失的导数。因此,如果它是任何一种加速优化器,那么无论您使用的是单个优化器还是多个优化器,它都应该是不一致的