我有一个 TensorFlow 2 模型,其中包含来自 TensorFlow Hub 的预训练 Keras 层。我想微调这个子模型中的权重以适合我的数据集,但如果我通过设置trainable=True
and天真地做到这一点training=True
,我的模型将严重过度拟合。
如果我控制了底层模型的实际层,我会在这些单独的层上插入 dropout 层或设置 L2 系数。KerasLayer
但是这些层是使用 TensorFlow Hub方法导入我的网络的。另外,我怀疑底层模型非常复杂。
我想知道解决此类问题的标准做法是什么。
也许有一种方法可以以某种方式强制对整个网络进行正则化?我知道在 TensorFlow 1 中,有类似的优化器ProximalAdagradOptimizer
采用 L2 系数。在 TensorFlow 2 中,像这样的唯一优化器是FTRL,但我很难让它适用于我的数据集。