逻辑回归与Softmax

news2025/6/7 10:43:58

Softmax函数是一种将一个含任意实数的K维向量转化为另一个K维向量的函数,这个输出向量的每个元素都在(0, 1)区间内,并且所有元素之和等于1。
因此,它可以被看作是某种概率分布,常用于多分类问题中作为输出层的激活函数。这里我们以拓展逻辑回归解决多分类的角度对Softmax函数进行理解:

假设共有 C C C 个类别,模型对输入 x \mathbf{x} x 输出 C C C个类别的得分,
则属于类别 c c c 的后验概率为:
P ( y = c ∣ x ) = e β c ⊤ x ∑ j = 1 C e β j ⊤ x P(y = c \mid \mathbf{x}) = \frac{e^{\beta_c^\top \mathbf{x}}}{\sum_{j=1}^{C} e^{\beta_j^\top \mathbf{x}}} P(y=cx)=j=1Ceβjxeβcx
其中 β c \beta_c βc 是第 c c c 类对应的参数向量, j j j 是求和的类别索引, x \mathbf{x} x 是输入特征向量。

为什么使用指数函数 e e e?

Softmax 函数的形式为:
σ ( z ) i = e z i ∑ j = 1 C e z j , \sigma(\mathbf{z})_i = \frac{e^{z_i}}{\sum_{j=1}^{C} e^{z_j}}, σ(z)i=j=1Cezjezi,
其中每个得分 z i z_i zi 的形式为:
z i = β i ⊤ x , z_i = \beta_i^\top \mathbf{x}, zi=βix,
表示输入特征向量 x \mathbf{x} x 与第 i i i 类对应的参数向量 β i \beta_i βi 的线性组合。

使用指数函数 e z i e^{z_i} ezi 有以下几点重要理由:

  • 非负性:对于任意实数 z i z_i zi,都有 e z i > 0 e^{z_i} > 0 ezi>0。这保证了 Softmax 输出的概率值始终为正数。

  • 保持序关系:指数函数是严格单调递增函数。若 z i > z j z_i > z_j zi>zj,则 e z i > e z j e^{z_i} > e^{z_j} ezi>ezj,从而保留了原始得分之间的相对大小关系。

  • 便于求导:指数函数具有良好的可导性,且其导数形式简单 ( d d x e x = e x ) \left(\frac{d}{dx}e^x = e^x\right) (dxdex=ex),这对基于梯度下降等优化算法非常友好。

  • 映射到概率分布:通过除以总和 ∑ j = 1 C e z j \sum_{j=1}^{C} e^{z_j} j=1Cezj,使得所有类别的输出加起来等于 1,形成一个合法的概率分布。

下面的示意图清晰地表示 Softmax 函数的原理和计算过程。以下是一个完整的推导流程示例,包括线性回归输出、Softmax 激活函数的应用,以及最终的分类结果。

( 0.5 0 0.7 0.5 0.5 0.9 0.1 0.1 0.6 0.6 0.1 0 ) X × ( − 0.15 0.95 2.2 ) β = ( 0.5 ⋅ ( − 0.15 ) + 0 ⋅ 0.95 + 0.7 ⋅ 2.2 0.5 ⋅ ( − 0.15 ) + 0.5 ⋅ 0.95 + 0.9 ⋅ 2.2 0.1 ⋅ ( − 0.15 ) + 0.1 ⋅ 0.95 + 0.6 ⋅ 2.2 0.6 ⋅ ( − 0.15 ) + 0.1 ⋅ 0.95 + 0 ⋅ 2.2 ) = ( 1.385 2.43 1.37 − 0.095 ) 线性输出  z \overset{X}{\begin{pmatrix} 0.5 & 0 & 0.7 \\ 0.5 & 0.5 & 0.9 \\ 0.1 & 0.1 & 0.6 \\ 0.6 & 0.1 & 0 \end{pmatrix}} \times \overset{\bm{\beta}}{ \begin{pmatrix} -0.15 \\ 0.95 \\ 2.2 \end{pmatrix}} =\begin{pmatrix} 0.5 \cdot (-0.15) + 0 \cdot 0.95 + 0.7 \cdot 2.2 \\ 0.5 \cdot (-0.15) + 0.5 \cdot 0.95 + 0.9 \cdot 2.2 \\ 0.1 \cdot (-0.15) + 0.1 \cdot 0.95 + 0.6 \cdot 2.2 \\ 0.6 \cdot (-0.15) + 0.1 \cdot 0.95 + 0 \cdot 2.2 \end{pmatrix}=\overset{\text{线性输出 } \mathbf{z}}{ \begin{pmatrix} 1.385 \\ 2.43 \\ 1.37 \\ -0.095 \end{pmatrix}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2402795.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

光电耦合器:数字时代的隐形守护者

在数字化、自动化高速发展的今天,光电耦合器正以一种低调却不可或缺的方式,悄然改变着我们的生活。它不仅是电子电路中的“安全卫士”,更是连接信号世界的“桥梁”,凭借出色的电气隔离能力,为各类设备提供稳定可靠的信…

手机如何防止ip关联?3种低成本方案

在当今数字化时代,手机已成为人们日常生活中不可或缺的工具,无论是社交、购物、支付还是工作,都离不开手机。然而,随着网络技术的不断发展,网络安全问题也日益突出,其中IP关联问题尤为常见。那么&#xff0…

Pandas和Django的示例Demo

以下是一个结合Pandas和Django的示例Demo,展示如何在Django项目中读取、处理和展示Pandas数据。 Pandas和Django的示例Demo 前置条件: 安装python 基础设置 确保已安装Django和Pandas: pip install django pandasInstalling collected p…

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信拓扑与操作 BR/EDR(经典蓝牙)和 BLE

目录 1. BR/EDR(经典蓝牙)网络结构微微网(Piconet)散射网(Scatternet)蓝牙 BR/EDR 拓扑结构示意图 2. BLE(低功耗蓝牙)网络结构广播器与观察者(Broadcaster and Observer…

航道无人机巡检系统

随着长江干线、京杭运河等航道智慧化升级提速,传统人工巡检模式已难以满足高频次、大范围、高精度的航道管理需求。无人机凭借其灵活机动、多源感知、高效覆盖等优势,正成为航道巡检的“空中卫士”。本文将结合多地成功案例,从选型标准、技术…

【JVM】Java虚拟机(一)——内存结构

目录 一、简介 二、程序计数器 三、虚拟机栈 栈帧结构: 特点: 四、本地方法栈 特点: 五、堆 堆结构: 特点: 对象分配过程: 六、方法区 方法区结构: 特点: 运行时常量池…

从微积分到集合论(1630-1910)(历史简介)——第4章——现代积分理论的起源(Thomas Hawkins)

第 4 章 现代积分理论的起源 (The Origins of Modern Theories of Integration) Thomas Hawkins 目录 4.1 引言(Introduction) 4.2 Fourier分析与任意函数(Fourier analysis and arbitrary functions) 4.3 对Fourier问题的回应(Responses to Fourier)(1821-1854)…

《Linux运维总结:宝德服务器RAID开启(方式一)》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:Linux运维实战总结 一、背景信息 说明:从客户那里退回来的一台宝德服务器,硬盘不见了,现在需要用两个2T的硬盘…

NY118NY120美光固态闪存NY124NY129

NY118NY120美光固态闪存NY124NY129 美光NY系列固态闪存深度解析:技术、性能与行业洞察 技术架构与核心创新 美光NY系列(包括NY118、NY120、NY124、NY129等型号)作为企业级存储解决方案的代表作,延续了品牌在3D NAND技术上的深厚…

Odoo 19 路线图(新功能)

Odoo 19 路线图(新功能) Odoo 19 路线图是Odoo官方针对下一版本的发布计划,将在自动化、合规性、用户体验、碳排放报告及本地化等领域推出超过16项新功能。本路线图详细阐述了Odoo 19如何在过往版本基础上进一步提升,助力企业优化销售、财务、运营及客户…

基于NXP例程学习CAN UDS刷写流程

文章目录 前言1.概述1.1 诊断报文 2.协议数据单元(N_PDU)2.1 寻址信息(N_AI)2.1.1 物理寻址2.1.2 功能寻址2.1.3 常规寻址(Normal addressing)2.1.4 常规固定寻址(Normal fixed addressing)2.1.5 扩展寻址&…

基于有效集MPC控制算法的直线同步电机simulink建模与仿真,MPC使用S函数实现

目录 1.课题概述 2.系统仿真结果 3.核心程序 4.系统仿真参数 5.系统原理简介 6.参考文献 7.完整工程文件 1.课题概述 有效集算法通过迭代地选择一组 "有效" 约束,将约束优化问题转化为一系列无约束或等式约束优化问题。直线同步电机 (Linear Synch…

让敏感数据在流转与存储中始终守护在安全范围

在企业数字化运营浪潮中,企业内部应用服务器面临着非法访问、数据泄露等风险,如何全面守护应用服务器文件安全,让敏感数据在流转与存储中始终守护在安全范围? 服务器白名单让数据流转安全又高效 天 锐 蓝盾的服务器白名单功能既…

【Linux】find 命令详解及使用示例:递归查找文件和目录

【Linux】find 命令详解及使用示例:递归查找文件和目录 引言 find 是 Linux/Unix 系统中强大的文件搜索工具,用于在目录层次结构中递归查找文件和目录。它提供了丰富的搜索条件和灵活的操作选项,可以满足从简单到复杂的各种文件查找需求。 …

【论文阅读笔记】万花筒:用于异构多智能体强化学习的可学习掩码

摘要 在多智能体强化学习(MARL)中,通常采用参数共享来提高样本效率。然而,全参数共享的流行方法通常会导致智能体之间的策略同质,这可能会限制从策略多样性中获得的性能优势。为了解决这一关键限制,我们提出…

负载均衡LB》》HAproxy

Ubuntu 22.04 安装HA-proxy 官网 资料 # 更新系统包列表: sudo apt update # 安装 HAproxy sudo apt install haproxy -y # 验证安装 haproxy -v # 如下图配置 Haproxy 在这里插入代码片》》》配置完之后 重启 Haproxy sudo systemctl restart haproxy 补充几…

UE 5 和simulink联合仿真,如果先在UE5这一端结束Play,过一段时间以后**Unreal Engine 5** 中会出现显存不足错误

提问 UE5报错如图。解析原因 回答 你遇到的这个错误提示是: “Out of video memory trying to allocate a rendering resource. Make sure your video card has the minimum required memory, try lowering the resolution and/or closing other applications tha…

Rust 控制流

文章目录 Rust 控制流if 表达式循环实现重复用 loop 重复代码从循环返回值循环标签用于区分多层循环while 条件循环用 for 循环遍历集合 Rust 控制流 在大多数编程语言中,根据条件是否为真来运行某些代码,以及在条件为真时重复运行某些代码,是…

Python 3.11.9 安装教程

前言 记录一下Windows环境下Python解释器的安装过程。 安装过程 1、安装程序下载 打开Python官网: 点击Downloads,选择Windows: 页面中找到需要的3.11.9版本,点击Download Windows installer (64-bit)下载: 2、…

【各种主流消息队列(MQ)对比指南】

主流消息队列对比分析 一、核心指标对比 特性/消息队列RabbitMQKafkaRocketMQActiveMQPulsar协议支持AMQP, MQTT, STOMP自定义协议JMS/自定义协议JMS, AMQP, MQTT, STOMPMQTT, AMQP, STOMP单机吞吐量万级百万级十万级万级百万级延迟微秒级(低吞吐)毫秒…