零基础实战深度学习,关于用LeNet模型在眼疾识别的案例的问题
收藏
# 运行模型前向计算,得到预测值
logits = model(img)
# 二分类,sigmoid计算后的结果以0.5为阈值分两个类别
# 计算sigmoid后的预测概率,进行loss计算
pred = F.sigmoid(logits)
loss = F.binary_cross_entropy_with_logits(logits, label)
# 计算预测概率小于0.5的类别
pred2 = pred * (-1.0) + 1.0
# 得到两个类别的预测概率,并沿第一个维度级联
pred = paddle.concat([pred2, pred], axis=1)
acc = paddle.metric.accuracy(pred, paddle.cast(label, dtype='int64'))
本人小白一个,跟着官网的教程一步一步来的,但是这里依然不是很懂,为什么要使用sigmod函数,为什么又要进行级联,希望各位大佬能帮忙解答一下
0
收藏
请登录后评论
预测概率是0到1之间,要把数值放缩到概率区间上。sigmoid函数有这个功能肯定用他啊
厉害了
sigmod函数是用作激活函数的,不过现在不怎么用了,都用relu了