Python 如何在基于Keras的CNN自动编码器模型_中加入正则化

Python 如何在基于Keras的CNN自动编码器模型_中加入正则化,python,keras,autoencoder,regularized,Python,Keras,Autoencoder,Regularized,我是Keras和deep learning的新生,我不太确定添加正则化的正确方法,我使用API模型类编写了一个CNN自动编码器,现在我在每个“Conv2D”Keras函数中添加正则化,我不确定这是否是添加正则化的正确位置,有人能给我一些建议吗 (我试着运行训练并检查重建的测试图像,可以,但不是很好,我使用MNIST进行测试,重建的MNIST编号的线条比原始编号粗。) 在我的问题中,输入图像是受损图像,原始良好图像用作训练标签,通过比较CNN的输出图像与训练标签图像,我使用“平均绝对误差”来定义损

我是Keras和deep learning的新生,我不太确定添加正则化的正确方法,我使用API模型类编写了一个CNN自动编码器,现在我在每个“Conv2D”Keras函数中添加正则化,我不确定这是否是添加正则化的正确位置,有人能给我一些建议吗

(我试着运行训练并检查重建的测试图像,可以,但不是很好,我使用MNIST进行测试,重建的MNIST编号的线条比原始编号粗。)

在我的问题中,输入图像是受损图像,原始良好图像用作训练标签,通过比较CNN的输出图像与训练标签图像,我使用“平均绝对误差”来定义损失,并将其用作度量

我首先定义了三个函数,一个下采样函数(下面的一个),一个上采样函数,还有一个函数来压缩矩阵的第三维,得到一个二维矩阵作为输出。 我的代码太长,为了帮助说明问题,我的部分代码如下:

在定义了三个函数之后,我将模型定义如下(不详细,只是其中的一部分,以帮助解释我的问题)

将所有必要的参数加载到模型中,然后定义优化器参数,并编译模型


您说得对,conv2D是进行正则化的正确位置。您也可以考虑添加辍学。请将您的代码添加为文本,并在将来使用“代码示例”工具将其标记为代码。