交叉熵损失函数与one-hot编码

本文详细介绍了交叉熵损失函数在二分类和多分类问题中的具体形式,讨论了sigmoid和softmax激活函数的选择,并着重讲解了one-hot编码在多分类中的运用。此外,还区分了label的不同编码方式对损失函数选择的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

交叉熵损失函数

交叉熵损失函数是在分类问题中常用的一种损失函数,交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,在机器学习中就表示为真实概率分布与预测概率分布之间的差异。交叉熵的值越小,模型预测效果就越好。

二分类问题中使用交叉熵损失函数,输出层常用sigmoid激活函数

loss=−1n∑i=1n[yiln⁡ai+(1−yi)ln⁡(1−ai)] loss=-\frac{1}{n}\sum_{i=1}^n{\left[ y_i\ln a_i+\left( 1-y_i \right) \ln \left( 1-a_i \right) \right]} loss=n1i=1n[yilnai+(1yi)ln(1ai)]

多分类问题中使用多元交叉损失函数,输出层常用softmax激活函数
loss=−1m∑i=1m∑j=1nyijlog(aij) loss=-\frac{1}{m}\sum_{i=1}^m{\sum_{j=1}^n{y_{ij}log}}\left( a_{ij} \right) loss=m1i=1mj=1nyijlog(aij)

one-hot编码

在多分类问题中,使用多元交叉熵损失函数。损失函数在TensorFlow2.0中的名称为categorical_crossentropy和sparse_categorical_crossentropy

  1. 当label编码为顺序编码时,使用sparse_categorical_crossentropy损失函数
  2. 当label编码为one-hot编码时,使用categorical_crossentropy损失函数
  3. 使用出现交叉则会报错。

当label为顺序编码时,可以使用tf.keras.utils.to_categorical()转化为one-hot编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值