为什么均方差(MSE)不适合分类问题?交叉熵(cross-entropy)不适合回归问题?

1.为什么均方差(MSE)不适合分类问题?

当sigmoid函数和MSE一起使用时会出现梯度消失。原因如下:
(1)MSE对参数的偏导
在这里插入图片描述
在这里插入图片描述
(2)corss-entropy对参数的偏导
在这里插入图片描述
在这里插入图片描述
由上述公式可以看出,在使用MSE时,w、b的梯度均与sigmoid函数对z的偏导有关系,而sigmoid函数的偏导在自变量非常大或者非常小时,偏导数的值接近于零,这将导致w、b的梯度将不会变化,也就是出现所谓的梯度消失现象。而使用cross-entropy时,w、b的梯度就不会出现上述的情况。所以MSE不适用于分类问题。

2.交叉熵不适用于回归问题

当MSE和交叉熵同时应用到多分类场景下时,(标签的值为1时表示属于此分类,标签值为0时表示不属于此分类),MSE对于每一个输出的结果都非常看重,而交叉熵只对正确分类的结果看重。例如:在一个三分类模型中,模型的输出结果为(a,b,c),而真实的输出结果为(1,0,0),那么MSE与cross-entropy相对应的损失函数的值如下:
MSE:
在这里插入图片描述
cross-entropy:
在这里插入图片描述
从上述的公式可以看出,交叉熵的损失函数只和分类正确的预测结果有关系,而MSE的损失函数还和错误的分类有关系,该分类函数除了让正确的分类尽量变大,还会让错误的分类变得平均,但实际在分类问题中这个调整是没有必要的。但是对于回归问题来说,这样的考虑就显得很重要了。所以,回归问题熵使用交叉上并不合适。

  • 22
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 在 tensorflow 中,loss=categorical_crossentropy 表示使用分类交叉熵损失函数。分类交叉熵损失函数是用来评估模型预测结果和真实结果之间的差距的。 在分类问题中,我们希望模型的预测概率和真实概率之间的差距尽可能小。分类交叉熵损失函数可以很好地反映出这一点。 在 tensorflow 中,还有许多其它的损失函数可以使用,比如均方误差损失函数(loss=mean_squared_error)和相对误差损失函数(loss=mean_absolute_error)等。 ### 回答2: 在TensorFlow中,loss='categorical_crossentropy'是一种损失函数(loss function)的表示形式。这个损失函数适用于多分类问题,特别是在输出类别使用独热编码(one-hot encoding)表示的情况下。 损失函数用于衡量模型在训练过程中的预测结果与实际标签之间的差异。而categorical_crossentropy是一种计算预测与真实标签之间差异的数学公式。当模型输出类别为多个,并且采用独热编码表示时,可以使用categorical_crossentropy作为损失函数来优化模型的训练。 除了categorical_crossentropy,TensorFlow中还有其他不同类型的损失函数,适用于不同问题和数据。一些常见的损失函数包括: 1. Mean Squared Error(均方误差,即MSE):适用于回归问题,衡量预测值与实际值之间的平均差异。 2. Binary Crossentropy(二分类交叉熵):适用于二分类问题,用于衡量预测结果与实际标签之间的差异,常用于sigmoid激活函数和独热编码。 3. Sparse Categorical Crossentropy(稀疏多分类交叉熵):适用于多分类问题,但是实际标签不使用独热编码的情况。与categorical_crossentropy相比,它处理稀疏标签(即非独热编码)的能力更高效。 总结来说,损失函数在TensorFlow中用于衡量模型预测与实际标签之间的差异,loss='categorical_crossentropy'是多分类问题中常用的损失函数之一,同时还有其他类型的损失函数适用于不同问题和数据。 ### 回答3: 在TensorFlow中,loss='categorical_crossentropy'代表使用分类交叉熵作为模型的损失函数。损失函数的作用是衡量模型预测结果与实际标签之间的差异,进而用于调整模型的参数,使其能够更准确地预测。 对于多分类任务,使用分类交叉熵可以有效地衡量模型预测结果与真实标签之间的差异。它通过计算每个类别的预测概率与实际标签的交叉熵来得到整体的损失值,然后将这些损失值加权求和,得到模型的最终损失。其中,每个类别的预测概率由softmax函数计算得到。 除了分类交叉熵外,还有一些其他类型的损失函数可以根据不同的任务和模型需求选择。例如,对于二分类问题,可以选择使用二进制交叉熵作为损失函数。对于回归问题,可以选择均方差损失函数或平均绝对误差损失函数。不同的损失函数适用于不同的问题和模型结构,可以根据具体情况进行选择。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值