UserWarning: Discrepancy between trainable weights and collected trainable weights, did you set `model.trainable` without calling `model.compile` after ? 'Discrepancy between trainable weights and collected trainable'
时间: 2024-01-09 16:03:18 浏览: 207
解决在keras中使用model.save()函数保存模型失败的问题
5星 · 资源好评率100%
这个警告通常是在使用 Keras 框架训练模型时出现的,它表示模型中可训练的权重数与实际可训练的权重数不一致。这通常是由于在设置 `model.trainable` 时没有调用 `model.compile` 导致的。
为了解决这个问题,可以尝试在调用 `model.trainable` 后立即调用 `model.compile`,并将相应的优化器、损失函数和指标传递给它。例如:
```
model.trainable = True
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
```
如果你已经编译了模型,但是仍然收到此警告,请确保在调用 `fit` 或 `train_on_batch` 之前设置了 `model.trainable` 和 `model.compile`。
阅读全文