损失函数是什么,它为什么能够让AI知道自己错了多少

我们考试的时候会有老师批改,知道我们错了多少。那么AI训练的时候有没有“老师”呢?有!这一位“老师”就是损失函数(Loss),包括训练的时候,我们也主要看Loss判断模型训练的怎么样。

损失函数是什么

Loss是通过一个数值告诉你模型错了多少。一般情况下Loss越大,模型预测的结果就离正确答案相差越远;Loss越小,模型预测的结果就离正确答案越近。比如小鱼干的价格是¥10/条,模型预测的价格是¥20/条,那么Loss就会比较大;如果模型预测的小鱼干价格是¥9/条,那么Loss就会比较小。

Loss有没有可能为0?

在数学上Loss有可能为0,比如小鱼干的价格是¥10/条,模型也预测为¥10/条,那么这一个模型的Loss就为0。但是计算机中显示的0不一定就是0,因为有时侯Loss可能是0.0000…1,这个数太小了,超出了浮点数可以表示的范围所以计算机把它当作了0,这一种情况叫做下溢。并且Loss为0不代表模型真的学会了,因为它有可能只是记住了训练集,变成了过拟合。

Loss有什么用

Loss用处可大了,具体流程是这样的:做出预测——计算Loss——通过反向传播计算梯度——通过优化器调整参数——再次预测。经过不断的训练Loss就慢慢下降,然后训练出一个好模型。

以前只有人类有老师,现在AI也有Loss啦!喵

35 个赞

奇怪,怎么下意识以为是aigc,细看了一下好像没什么破绽,唉,l站有内容的帖子不多了

感觉还是有一些不太对,这文章是ai特调的吗

1 个赞

不是不是,我是认真写的,没有AIGC,刚加入社区随便写点,以后会有更多优质内容

7 个赞

佬友也喜欢喵嘛
喵

喵,当然啦,一样喜欢

毕竟是监督训练来的 要对齐答案的 :face_with_hand_over_mouth:

举的例子是数值型的,比较容易理解。那如果都是步骤、都是文本,怎么评估 loss 值呢?用打分模型,按照约定的规则直接给出两段文本的 loss 值吗?

哇,我们学深度学习的时候倒是也学过这个,不过没找到一个合适的神经网络的话,loss比较难降下去吧

这个的话可以进行对比,比如图片识别模型,它输出的内容一般是甲物品百分之多少,乙物品百分之多少,然后假如他的正确答案是甲物品,它输出20%是甲物品,那么Loss就比较高

确实,Loss下降的原因还有很多

1 个赞

loss函数可以阅读吗?从来没发现

恍惚间好像回到了十年前

所以是 next token prediction 以及 reward 本质上就是根据前文预测后文 以及偏向人类喜好的表达

1 个赞

这个站的初心就是为了构建一个好社区,所以我们也要为了互联网环境努力构建理想社区

Loss是通过一个数值告诉你模型错了多少

严谨的来说不准确,比如自监督和无监督的场景一般不会说是错了多少.在VAE这种贝叶斯的场景下使用ELBO作为优化目标也不会说是错了多少,而是衡量分布的距离.

确实,这一点我认,不过我是为了让Everyone听懂,所以我写成这样子,以后我的贴里面尽量改一下

完啦,只记得一个无量纲化了

想到了以前看西瓜书的日子

那谁来判断这个正确/错误呢?如果说是一些大模型生成的效果,比如说语言的流畅度,用词的准确性这些并非可以用数学计算出的结果,该怎么判断?

L站少有这种基础知识贴,:+1:支持