在对CNN和MLP进行图像数字数据混合数据训练时的局部最小值

问题描述

我正在建立一个模型,该模型接受两种类型的输入:图像和由136个特征的签名表示的数字数据长。因此,该模型有两个分支:一个具有经过预训练的权重的CNN(ResNet50),我删除了它的分类层,并将其平均池特征馈送到MLP(64-16),然后将其输出连接到MLP的输出。带有数值数据的MLP(64-16)。然后将串联的嵌入(长16 + 16 = 32个特征)馈送到只有一个神经元的密集层,以预测回归问题。此链接中与此模型类似的东西

https://www.mathworks.com/matlabcentral/answers/469940-combining-images-and-numerical-values-in-a-deep-neural-network

在大多数情况下,训练很好,并且损失显着下降,但是在某些情况下(使用相同的训练集,因为我想报告结果的平均值,所以我多次运行),我发现它属于局部极小值,永远无法摆脱困境,在这种情况下,损失不会改变,而且仍然很高。我知道CNN不会陷入局部最小值,我们应该更多地担心过拟合和不拟合(只要您的模型具有足够的能力和建议学习者的选择率),但这是因为MLP或学习选择错误率?我什至尝试使用lr = 0.01仍然遇到相同的问题。我同时使用了Adam和SGD,但没有帮助。

我还验证了其他MLP结构,例如64-16-4,并在最终的密集层之前将额外的MLP与级联输出一起馈入,但问题仍未得到解决。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...