【AI-1000问】softmax loss和交叉熵有什么关系?

softmax函数与交叉熵损失详解 由于Softmax函数的数值计算过程中,很容易因为输出节点的输出值比较大而发生数值溢出的现象,在计算交叉熵的时候也可能会出现数值溢出的问题。softmax直白来说就是将原来输出是3,1,-3通过softmax函数一作用,就映射成为(0,1)的值,而这些值的累和为1(满足概率的性质),那么我们就可以将它理解成概率,在最后选取输出结点的时候,我们就可以选取概率最大(也就是值对应最大的)结点,作为我们的预测目标!结果还是挺明显的,经过使用指数形式的Softmax函数能够将差距大的数值距离拉的更大。 阅读详情

文章首发于微信公众号《有三AI》

【AI-1000问】softmax loss和交叉熵有什么关系?

往期视频(前往公众号观看)

softmax loss和交叉熵有什么关系?

想必大家也都听过熵这个概念,也都知道softmax以及softmax loss这个概念,那么它们两个有什么区别和联系呢?

作者/编辑 言有三

 

softmax loss是由softmax和交叉熵(cross-entropy loss)组合而成,全称是softmax with cross-entropy loss,所以我们可以想见,它们是不同的,但是又有关系。

解答1:首先我们得知道什么是交叉熵。

在物理学有一个概念,就是熵,它表示一个热力学系统的无序程度。为了解决对信息的量化度量问题,香农在1948年提出了“信息熵”的概念,它使用对数函数表示对不确定性的测量。熵越高,表示能传输的信息越多,熵越少,表示传输的信息越少,我们可以直接将熵理解为信息量。

按照香农的理论,熵背后的原理是任何信息都存在冗余,并且冗余大小与信息中每个符号(数字、字母或单词)的出现概率或者说不确定性有关。概率大,出现机会多,则不确定性小,这个关系就用对数函数来表征。

为什么选择对数函数而不是其他函数呢?首先,不确定性必须是概率P的单调递降函数,假设一个系统中各个离散事件互不相关,要求其总的不确定性等于各自不确定性之和,对数函数是满足这个要求的。将不确定性f定义为log(1/p)=-log(p),其中p是概率。

对于单个的信息源,信源的平均不确定性就是单个符号不确定性-logpi的统计平均值,信息熵的定义如下。

假设有两个概率分布p(x)和q(x),其中p是已知的分布,q是未知的分布,则其交叉熵函数是两个分布的互信息,可以反应其相关程度。

从这里,就引出了分类任务中最常用的loss,即log loss,又名交叉熵loss,后面我们统一称为交叉熵loss,它的定义形式如下:

n对应于样本数量,m是类别数量,yij 表示第i个样本属于分类j的标签,它是0或者1。对于单分类任务,只有一个分类的标签非零。f(xij) 表示的是样本i预测为j分类的概率。loss的大小,完全取决于分类为正确标签那一类的概率,当所有的样本都分类正确时,loss=0,否则大于0。

解答2:假如log loss中的f(xij)的表现形式是softmax概率的形式,那么交叉熵loss就是我们熟知的softmax with cross-entropy loss,简称softmax loss,所以说softmax loss只是交叉熵的一个特例。

softmax loss被广泛用于分类分割等任务,而且发展出了很多的变种,大家可以看往期文章【技术综述】一文道尽softmax loss及其变种回顾。

 

思考

那么,除了softmax loss,你还知道在深度学习中其他的对于分类任务非常好用的loss吗?

转载文章请后台联系

侵权必究

感谢各位看官的耐心阅读,不足之处希望多多指教。后续内容将会不定期奉上,欢迎大家关注有三公众号 有三AI!

交叉熵损失函数原理与实战避坑指南 交叉熵是分类任务中最基础且关键的损失函数,源于香农信息论中的信息熵概念,本质是衡量模型预测分布与真实分布之间的差异。其数学原理决定了它天然适配概率建模,通过惩罚‘错误的自信’来驱动模型学习判别性特征。技术价值在于数值稳定、梯度友好、与softmax/sigmoid形成理论闭环,广泛应用于医疗影像诊断、金融风控、工业缺陷检测等高可靠性场景。本文聚焦PyTorch与TensorFlow中binary/categorical/sparse三种交叉熵的适用边界、数据类型要求、类别不平衡处理及典型nan错误根因,结合 阅读详情

相关推荐

交叉熵损失函数:为什么它能惩罚模型的过度自信

交叉熵是分类任务中最基础且关键的损失函数,源于香农信息论,本质是量化预测分布与真实分布之间的信息差异。其核心原理在于:当模型对错误类别赋予高置信度时,会触发对数级放大的惩罚,从而驱动概率校准而非单纯数值拟合。相比均方误差(MSE)的线性误差敏感,交叉熵更强调逻辑正确性与不确定性建模,在医疗诊断、自动驾驶等高风险场景中保障模型‘知其不知’的能力。本文深入解析其数学本质、框架实现细节(如PyTorch的logits输入要求)、常见陷阱(标签类型、数值稳定性)及进阶调优方法(Label Smoothing、Foc

aigui1439的博客 485

卷积神经网络系列之softmax,softmax loss和cross entropy的详细讲解 简单明了

softmax 我们知道卷积神经网络(CNN)在图像领域的应用已经非常广泛了,一般一个CNN网络主要包含卷积层,池化层(pooling),全连接层,损失层等。虽然现在已经开源了很多深度学习框架(比如MxNet,Caffe等),训练一个模型变得非常简单,但是你对这些层具体是怎么实现的了解吗?你对softmax,softmax loss,cross entropy了解吗?相信很多人不一定清楚。虽然网上...

weixin_42713739的博客 2471

为什么分类任务必须用交叉熵而非二次代价函数

分类任务的本质是建模概率分布并优化决策边界,而非数值回归。其核心原理在于损失函数需与输出层的概率语义严格匹配:交叉熵基于KL散度,梯度直接为预测误差(ŷ−y),无激活导数衰减,保障强错误信号传递;而二次代价将概率当作回归目标,梯度中嵌入σ′(z)=ŷ(1−ŷ)这一自限幅因子,导致预测越错、更新越弱。该机制在sigmoid/softmax输出饱和时引发系统性梯度抑制,显著降低训练效率与鲁棒性。在标签噪声、类别不平衡等工业场景下,交叉熵展现出更强的抗干扰能力。本文聚焦深度学习分类任务中损失函数的选择逻辑,深入解

culiao2169的博客 452

【深度学习】详解 Softmax Cross Entropy Loss

Softmax Cross Entropy Loss = Softmax + Cross Entropy Loss

闻韶 1万+

从零手写AI核心算法:线性回归、Softmax与神经网络层实现

在人工智能和机器学习领域,理解底层原理是构建扎实技术能力的关键。许多开发者熟悉调用高级API,但对支撑模型的数学、算法和架构却一知半解。本文聚焦于通过手写实现核心算法来穿透技术迷雾,获得扎实的构建能力。我们将从机器学习的基础概念切入,探讨梯度下降、反向传播等核心原理的技术价值。通过亲手实现线性回归、Softmax分类器以及神经网络层等模块,你将深刻理解从数学公式到代码实现的完整链条。这种实践方法不仅能破除对数学符号的恐惧,更能打开算法黑箱,培养对架构设计的直觉。最终,这种深度实践将引导你从技术的“使用者”转

weixin_30307921的博客 476

Softmax回归本质:从概率建模到数值稳定实现

Softmax回归是多分类任务中最基础的概率建模方法,其核心在于将线性得分通过指数归一化转化为条件概率分布,从而实现对P(y=i|x)的参数化估计。它并非逻辑回归的简单扩展,而是最大似然估计在分类问题下的自然结果——交叉熵损失即负对数似然的直接体现。该框架兼具数学严谨性与工程可解释性,支撑着从图像识别到推荐排序等广泛场景;但实际应用中极易因logits溢出、特征尺度失衡或类别不平衡导致概率失真。本文聚焦Softmax的底层原理、梯度推导(p - y)、数值稳定性保障(log-sum-exp)及PyTorch

jardownload的博客 383

softmax详解

softmax又称归一化指数函数。它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类!假设我们有一个数组,V,Vi表示V中的第i个元素,那么这个元素的softmax值就是 下图展示了softmax的计算方法: 指数函数的值域是(0,∞)。...

苦逼的程序猿 4万+

Flutter 中使用蓝牙插件报错,说没有权限怎么解决

2、在build.grale里面更改一下版本号,我修改的是targetSdkVersion这个版本号,需要根据你自己的版本进行更改,记得更改之后先flutter clean一下再run。搞了一晚上,没搞出来,第二天用同事手机测试发现他手机可以,我手机还是不行,才发现是Android版本问题,需要修改两处地方。废话不多说,咱先看报错信息。

zzj17637822814的博客 2289

动手学深度学习——softmax回归(原理解释+代码详解)

sum运算符:给定一个矩阵X,我们可以对所有元素求和(默认情况下)。也可以只求同一个轴上的元素,即同一列(轴0)或同一行(轴1)。对每个项求幂(使用exp);对每一行求和(小批量中每个样本是一行),得到每个样本的规范化常数;将每一行除以其规范化常数,确保结果的和为1。

qq_38473254的博客 4万+

UE 顶点动画工具 (VAT)

导入模型需要勾选全精度UV。

iesoxj的博客 1644

转录因子详细介绍(motif)

转录因子详细介绍(motif) TF: transcription factor转录因子TFBS: transcription factor binding site转录因子结合位点TFBS是序列内的location,TF特异结合在这里,这个site有这种特点 1 和一些参考相关的一个位置(开始,结束,strand),这些reference可以是染色体开始,geneTSS。也可以是一段sequence 2 A SITE可以是实验证实的(已知的),也可以是一些算法(预测的) 3 例子,下面这个图是酵母

wangprince2017 3万+

Pytorch学习 day10(L1Loss、MSELoss、交叉熵Loss、反向传播)

loss

丿罗小黑的博客 1079

Steam崩溃:ntdll.dll报错0xc0000374...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1161

Softmax回归

softmax虽然是回归但是是分类问题。

AI大模型/Python/Java/MySQL技术栈,快来和我一起学习吧 ~ 739

【问题解决】本地 Llama / Qwen 运行报错:transformers 版本不兼容、依赖冲突解决

Flask是一个轻量级的Web框架,设计上非常简单和易于扩展。它并不强制使用任何特定的项目结构或工具,这使得开发者能够根据自己的需求自由地设计应用。Flask的灵活性使它成为了许多小型项目和原型开发的理想选择。FastAPI是一个现代的Web框架,基于Python 3.7+,专为构建API而设计。FastAPI的特点是高性能、支持异步操作,并且内置了许多现代Web应用所需的功能,如数据验证和自动生成API文档等。从性能角度看,FastAPI在高并发场景下具有明显优势,特别是在I/O密集型的应用中。

博客 802

16、二阶差分功耗分析(DPA)的再审视

本文深入探讨了二阶差分功耗分析(DPA)中的关键问题,包括不同组合函数的性能、信息论分析以及在有轮廓和无轮廓攻击场景下的实验结果。通过对掩码AES和DES的模拟和实际攻击实验,研究了归一化乘积、求和和绝对差值等组合函数在不同噪声水平下的效率,并强调了信息论分析在评估侧信道对抗措施中的重要性。

leaf8的博客 120

关于网络结构输出层加了softmax后,loss训练不下降的问题

小白第一次写,很多地方会显得比较生疏…… 首先记录的是为什么多分类问题中需要用softmax+crossentropyloss交叉熵函数的配合。 交叉熵本质上是衡量输入与输出之间的区别,其值越小,则区别越小,毕竟从名字上看,熵就是衡量一种混乱程度嘛。 在多分类问题中,我们通常会将输入的标签编码为one-hot形式,形如[0,0,1,0,0],则此数据属于数据集中的第三类。这是交叉熵函数的输入之一。 在我们训练的神经网络最后一层,我们通常会使用一个全连接层,其输出维度就是我们类的总个数。假定输..

Blossomers的博客 5629

YOLOv11改进 | 模型知识蒸馏篇 | 利用模型蒸馏改进YOLOv11进行无损涨点 | 离线蒸馏(附代码 + 完整文件 + 解析教程)

这篇文章给大家带来的最新改进是模型的蒸馏,利用教师模型指导学生模型从而进行模型的涨点,本文的内容不仅可以用于论文中,在目前的绝大多数的工作中模型蒸馏是一项非常重要的技术,所以大家可以仔细学习一下本文的内容,本文从YOLOv8的项目文件为例,进行详细的修改教程,文章内包括完整的修改教程,针对小白我出了视频修改教程,如果你还不会我提供了修改后的文件大家直接运行即可,所以说不用担心不会适用!模型蒸馏真正的无损涨点,蒸馏你只看这一篇文章就足够了!欢迎大家订阅我的专栏一起学习YOLO!

Snu77的博客 4328

跟李沐学AI-动手学深度学习-softmax回归+损失函数+图片分类数据集

softmax回归 虽然softmax的名字是回归,但是其实它是一个分类问题。 回归VS分类 回归估计一个连续值 分类预测一个离散类别 eg: MNIST:手写数字识别(10类) ImageNet:自然物体分类(1000类) Kaggle上的分类问题:将人类的蛋白质显微镜图片分成28类、将恶意软件分成9个类别、将恶意的Wikipedia评论分成7类。 从回归到多类分类 回归 单连续数值输出 自然区间R 跟真实值的区别作为损失 分类 通常多个输出 输出i是预测为第i类的置信度 从.

哇哈哈哈的博客 1213

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Softmax 回归 + 损失函数 + 图片分类数据集

回归 + Loss + Datasets

weixin_73557167的博客 1301

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

3.6--softmax回归的从零开始实现

softmax回归和交叉熵损失函数。

qq_53243414的博客 1115

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Softmax 回归(PyTorch)

基于Pytorch实现softmax回归的从零开始实现和调用API实现

不想随波逐流的大学生一枚,我们每个人都在努力奔跑 485

李沐-softmax+损失函数+图片分类数据集

softmax 分类 vs 回归 一位有效编码:one-hot softmax 交叉熵 交叉熵用来衡量两个概率的区别 总结 损失函数 L2Loss均方损失 当y=0时,蓝色线表示函数曲线,橙色表梯度线,不同的地方梯度的值不同,更新的速度也不同 L1Loss huber loss 图像分类数据集 transforms.ToTensor()将图片转为torch的tensor格式 download从网上下载 train是否为训练集 mnist_train[0][0].shape#torch.Si

qq_36136196的博客 1572

深度学习·TensorFlow实现softmax处理MNIST数据集

Softmax回归模型 功能:给不同对象分配概率 过程: 第1步:证据eividence和偏差bias evidence = ΣΣ\Sigmajj_jWii_i,,_,jj_jxjj_j + bii_i 第2步:概率y y = softmax(evidence) softmax即是激励函数activatioin或者链接函数link 定义: softmax...

mosan的博客 792

softmax回归

Softmax 回归首先对每个类别使用线性函数 z=wx+b 计算得分,然后通过 Softmax 将得分转换为概率分布,接着使用交叉熵损失衡量模型对真实类别分配概率的合理性,并通过反向传播和梯度下降不断更新参数,最终使模型能够输出更准确的分类结果。Softmax 回归本质上还是线性模型,只是把一个输出变成了多个类别的概率输出。

m0_73959715的博客 295
上一篇: 加入微信洗稿投诉小组1个月后,有三说说为什么坚持只发原创
下一篇: 【杂谈】如何学会看arxiv.org才能不错过自己研究领域的最新论文?
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值