如何调用caffe已经训练好的net
1个回答
2016-03-31
展开全部
关于准确率一直是0.5:
我不了解你是怎么训练的,但是对于二分类问题最后准确率是0.5,有可能是因为最终结果都分到同一类上面去了,这个你需要调用caffe看看网络最终的输出来判断
对于二分类问题,一般训练的时候,正负样本要混合在一起训练(一般在输入层那里设置shuffle来做到),如果没有shuffle,并且你的输入数据正好是前面的是正样本,后面的是负样本,那么就会造成你的网络最开始一直倾向于输出1,在输入一直是正样本的时候,loss的确会下降,然后到负样本的时候,loss一下子跳很高,由于后面全是负样本,网络训练使得它倾向于输出0,就又慢慢降下来了,最终你的网络基本上就是输出值都是1或者都是0了
如果是这种情况,可以在输入层那里设置shuffle为true
当然具体情况具体分析,我也不了解你的情况,只是告诉你有这个可能而已
我不了解你是怎么训练的,但是对于二分类问题最后准确率是0.5,有可能是因为最终结果都分到同一类上面去了,这个你需要调用caffe看看网络最终的输出来判断
对于二分类问题,一般训练的时候,正负样本要混合在一起训练(一般在输入层那里设置shuffle来做到),如果没有shuffle,并且你的输入数据正好是前面的是正样本,后面的是负样本,那么就会造成你的网络最开始一直倾向于输出1,在输入一直是正样本的时候,loss的确会下降,然后到负样本的时候,loss一下子跳很高,由于后面全是负样本,网络训练使得它倾向于输出0,就又慢慢降下来了,最终你的网络基本上就是输出值都是1或者都是0了
如果是这种情况,可以在输入层那里设置shuffle为true
当然具体情况具体分析,我也不了解你的情况,只是告诉你有这个可能而已
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询