- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我制作一个模型,然后使用add_loss
:
model.add_loss(myLoss1(...))
后来想在同一模型上使用不同的损失,例如,我该如何删除 myLoss1
并将其替换为 myLoss2
?
我尝试了model.losses.clear()
,但这似乎没有效果。我知道我可以将权重保存到磁盘,用所需的损失重新制作模型并重新加载权重,但这似乎是一种黑客行为。
最佳答案
您可以使用现有模型的配置创建一个新模型,然后再次调用 add_loss()
以设置新的损失。恢复模型权重也是如此。
weights = model.get_weights()
# Instantiate model again to remove old loss
model = model.from_config(model.get_config())
model.set_weights(weights)
# Set new loss
model.add_loss(myLoss2(...))
(可选)您可能希望在开始使用新损失训练模型之前重置全局状态,但这取决于您的用例。
# For Tensorflow's Keras
tf.keras.backend.clear_session()
# For Standalone Keras
keras.backend.clear_session()
关于tensorflow - 如何删除使用 add_loss() 添加的损失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68821605/
如果我制作一个模型,然后使用add_loss: model.add_loss(myLoss1(...)) 后来想在同一模型上使用不同的损失,例如,我该如何删除 myLoss1 并将其替换为 myLos
如果我制作一个模型,然后使用add_loss: model.add_loss(myLoss1(...)) 后来想在同一模型上使用不同的损失,例如,我该如何删除 myLoss1 并将其替换为 myLos
我正在尝试在 Keras 中实现 VAE 风格的网络。我计算负对数似然和 KL 散度,并分别使用 model.add_loss(NLL) 和 model.add_loss(KL) 将它们添加到我的模型
我正在看关于 making a custom layer 的 tensorflow 教程并找到了类似这样的代码: # A layer that creates an activity regulari
我很疑惑model.compile()中的add_loss和传统的loss有什么区别?? 我的代码如下: from time import time import numpy as np import
目前,我偶然发现了变分自动编码器,并尝试使用 keras 使它们在 MNIST 上工作。我在 github 上找到了一个教程. 我的问题涉及以下代码行: # Build model vae = Mod
过去,每当我使用tensorflow的keras api时,我都会使用model.compile为模型指定损失函数。我目前正在开发一个存储库,它使用“add_loss”来指定 model.call 内
我在 TensorFlow 文档中找不到这个问题的答案。我曾经读到,应该从 tf.nn 函数中添加损失,但对于 tf.losses 中的函数则没有必要。因此: 什么时候应该使用tf.losses.ad
我之前在预训练网络上的 Tensorflow.keras 中使用层上循环添加激活和/或内核的正则化: if regul_what is 'kernel': for layer in model
问题一 我们知道我们可以使用 tf.stop_gradient(B) 来防止变量 B 在反向传播中被训练。但是我不知道如何在某些损失中停止 B 。 简单来说,假设我们的损失是: loss = cate
我是一名优秀的程序员,十分优秀!