深度学习之收敛问题

最近在用caffe, 想用caffe来做人脸识别。使用的是1558个人的人脸数据集,每个人35张照片训练,15张照片用于验证。使用caffe中自带的caffenet模型来进行微调,但是最后的误差一直在7点多以上,请问大家,是模型有问题,还是数据集问题,总是达不到收敛的效果,希望大家为我解答

知乎用户、不懂这个世界 赞同
1 .数据库太小一般不会带来不收敛的问题,只要你一直在train总会收敛(rp问题跑飞了不算)。反而不收敛一般是由于样本的信息量太大导致网络不足以fit住整个样本空间。样本少只可能带来过拟合的问题,你看下你的training set上的loss收敛了吗?如果只是validate set上不收敛那就说明overfitting了,这时候就要考虑各种anti-overfit的trick了,比如dropout,SGD,增大minibatch的数量,减少fc层的节点数量,momentum,finetune等。
2.learning rate设大了会带来跑飞(loss突然一直很大)的问题,这个是新手最常见的情况——为啥网络跑着跑着看着要收敛了结果突然飞了呢?可能性最大的原因是你用了relu作为激活函数的同时使用了softmax或者带有exp的函数做分类层的loss函数。当某一次训练传到最后一层的时候,某一节点激活过度(比如100),那么exp(100)=Inf,发生溢出,bp后所有的weight会变成NAN,然后从此之后weight就会一直保持NAN,于是loss就飞起来辣。会为了模拟这个情况,我复现了一下一年前我的一次失败的实验。我花了整个过程的loss曲线:
其中红色是loss,绿色是accuracy。可以看出在2300左右的时候跑飞了一次,不过所幸lr设的并不是非常大所以又拉了回来。如果lr设的过大会出现跑飞再也回不来的情况。这时候你停一下随便挑一个层的weights看一看,很有可能都是NAN了。对于这种情况建议用二分法尝试。0.1~0.0001.不同模型不同任务最优的lr都不一样。
3.尽量收集更多的数据。有个方法是爬flickr,找名人标签,然后稍微人工剔除一下就能收集一套不错的样本。其实收集样本不在于多而在于hard,比如你收集了40张基本姿态表情相同的同一个人的图片不如收集他的10张不同表情的图片。之前做过试验,50张variance大的图per person和300多张类似的图per person训练出来的模型后者就比前者高半个点。
4.尽量用小模型。如果数据太少尽量缩小模型复杂度。考虑减少层数或者减少kernel number。
=======================
看到这个问题的时候我正好在训练一个10,000 class face identify的网络,感觉很有缘所以小答一下。估计是运气好一次就收敛了~附accuracy的图(我是从random的googlenet开始train的,第100k次训练的时候做了finetune)。
  • 9
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
深度学习模型的准确率无法收敛时,可能存在以下几个原因: 1. 学习率过高或过低:学习率是控制模型参数更新的步长。如果学习率设置过高,可能会导致参数在优化过程中发散,无法收敛;如果学习率设置过低,可能会导致优化过程非常缓慢,也无法达到最优解。尝试调整学习率到一个合适的范围,例如使用学习率衰减策略或尝试不同的学习率值。 2. 数据问题:检查数据集是否存在问题,例如标签错误、数据集分布不均衡等。确保数据集准备正确,并尝试对数据进行预处理、数据增强或重新采样等操作。 3. 模型复杂度过高:如果模型过于复杂,可能会导致过拟合,即模型在训练集上表现良好,但在测试集上表现较差。可以考虑减少模型的复杂度,例如减少网络层数、减少神经元数量或使用正则化方法来避免过拟合。 4. 训练样本数量不足:深度学习模型通常需要大量的训练样本才能达到良好的泛化性能。如果训练样本数量较少,可能导致模型无法学习到足够的模式。尽量增加训练样本数量,或者考虑使用数据增强技术来扩充数据集。 5. 训练过程问题:检查模型训练的过程中是否存在问题,例如使用了错误的损失函数、错误的评估指标、错误的训练策略等。确保训练过程正确,并尝试使用其他优化算法或调整训练策略。 6. 初始化问题:模型参数的初始化可能对模型的收敛性有影响。尝试使用不同的参数初始化方法,例如 Xavier 初始化、He 初始化等。 7. 调试和分析:通过观察损失值变化的趋势,可以帮助你确定问题所在。使用可视化工具来分析模型的训练过程,例如绘制损失和准确率曲线、观察模型在训练集和验证集上的表现等。 请注意,以上是一些常见的原因和解决方法,但具体情况可能因模型和数据而异。建议逐步排查可能的问题,并根据实际情况尝试不同的调整方法来解决准确率不收敛问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值