首页 Paddle框架 帖子详情
想问一下,loss.backward()时候使用的的到底是什么?
收藏
快速回复
Paddle框架 其他学习资料 64 3
想问一下,loss.backward()时候使用的的到底是什么?
收藏
快速回复
Paddle框架 其他学习资料 64 3

很显然,loss()函数产生的是一个具体的值,但是backward往回算梯度的时候,使用的是什么?

比如说,有这么一个输出:

pred=[1.5,1.7,1.7],true=[1.6,1.5,1.9]

假设loss的算法是相减取绝对值后相加,得到diff=[0.1,-0.2,0.2],那么loss=0.1+0.2+0.2=0.5

请问使用loss.forward()计算的时候,diff,loss,各个值都产生了什么影响?

0
收藏
回复
全部评论(3)
时间顺序
BB12345678
#2 回复于2022-06

绝对值不好做loss,梯度不好算。如果是差的平方做loss 梯度是2*diff*loss

0
回复
UnseenMe
#3 回复于2022-06

反向传播,是为了对参数进行优化。

可以找找梯度下降的文章了解一下。

0
回复
李长安
#4 回复于2022-07

建议看源码,现在都是自动微分,但具体的还真没看过

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户