深度学习UFLDL教程翻译之Softmax回归

Unsupervised Feature Learning and Deep Learning(UFLDL) Exercise 代码实现 最近开始了解深度学习的东西,看到国内研究者翻译的斯坦福大学的深度学习的历程,觉得很不错,就按照学习例程学习,一步一步完成后面的练习。这个练习安排的很合理,得按顺序完成,跳跃着做可能会遇到一定的麻烦。我在完成中也遇到不少的麻烦,不过还是慢慢克服了,越往后程序对计算机的配置要求越高,需要的内存也越大。下面是我完成这些例程中一些关键性的代码,觉得有用的可以参考一下,建议大家先自己动手写,如果实在是遇到困 阅读详情

Softmax 回归

一、引入

Softmax回归(或称为多项逻辑斯特回归)是逻辑斯特回归的推广,用于处理多类问题的时候。在逻辑斯特回归中我们假设标签是二元的,y(i)∈{0,1}。我们使用这样的分类器将两种手写数字区分。Softmax回归能让我们处理y(i)∈{1,…,K}的情况,K是类别数。

回忆一下在逻辑斯特回归中,我们有m个标记的训练样本{(x(1),y(1)),…,(x(m),y(m))},其中输入特征是x(i)∈Rn维的。由于在逻辑斯特回归,我们设置了二元分类,因此标记为y(i)∈{0,1}。我们的假设函数是:

hθ(x)=1/(1+exp(−θ⊤x))

       然后训练参数θ使得代价函数最小:

J(θ)=−[∑y(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]

       在softmax回归中,我们感兴趣的是多类分类(与二元分类相对),因此标记y可以输出K个不同值,而不是只有两个。因此,在我们的训练样本{(x(1),y(1)),…,(x(m),y(m))},我们有y(i)∈{1,2,…,K}。(注意我们的规定是从1开始标记类别,而不是从0开始)。例如在MNIST数字识别任务中,我们有K=10个不同类别。

       给定一个输入x,我们希望我们的假设函数能估计每一个k=1,…,K的概率P(y=k|x) 。我们需要根据k个不同的可能值来估计类别标记的概率。因此,我们的假设会输出一个k维的向量(元素值和为1),给我们提供K个不同的估计概率。具体而言,我们的假设采取这种形式:


在这里θ(1),θ(2),…,θ(K)∈Rn是我们模型的函数。注意到这一项1/∑Kj=1exp(θ(j)⊤x)标准化了分布情况,因此它们和为1.

       为了方便,我们将用θ表示模型中的所有参数。当你实现softmax回归时,将θ(1),θ(2),…,θ(K)排成列,最后将θ表示为n行K列的矩阵通常是非常方便的。


二、代价函数

我们现在描述一下待会用softmax回归所使用的代价函数。在下面的等式中,1{⋅}是个“提示函数”,就是1{a true statement}=1,1{a false statement}=0。例如1{2+2=4}值为1,而1{1+1=5}值为0。我们的代价函数是:


       注意到它是逻辑斯特回归代价函数的推广,它们能写成这种形式:


       Softmax代价函数是类似的,除了我们得到的是K个不同类别标记的可能值的总和。注意到在softmax回归中,我们有P(y(i)=k|x(i);θ)=exp(θ(k)⊤x(i))/∑exp(θ(j)⊤x(i))。

       我们无法得到J(θ)最小值的解析解,因此和往常一样,我们会求助于迭代的优化算法。通过求导,得到梯度是:


       回忆一下”∇θ(k)”的含义。特别的,∇θ(k)J(θ)本身是一个向量,它的第j个元素∂J(θ)/∂θjk是J(θ)关于θ(k)第j个参数的偏导数。

       由这个导数公式,可以将它用于标准的优化包从而最小化J(θ)。

三、softmax回归的参数特性

softmax虎归有一不寻常的特性,即它有冗余的参数集。为了解释其中含义,假设我们得到每个参数向量θ(j),然后减去一个常数向量ψ,因此每个θ(j)替换为θ(j)- ψ(j=1,…,k)。我们的假设估计各类别的概率为:


       换句话说,每个θ(j)减去ψ一点也不影响我们假设的预测。这说明softmax回归的参数集是冗余的。更正式的说,softmax模型是过度参数化的,这意味着对于我们拟合数据的假设,有多种参数设置能够得到确切相同的由输出x得到预测的假设函数hθ。

       另外,如果代价函数通过一些参数设置(θ(1),θ(2),…,θ(k))得到最小值,那么用参数(θ(1)−ψ,θ(2)−ψ,…,θ(k)−ψ)同样能得到最小值,无论ψ值是多少。这样,让J(θ)最小化的数不是唯一的。(有趣的是,J(θ)仍是凸的,因此梯度下降不会陷入局部最优的问题。但是Hessian矩阵是奇异的/不可逆的,会导致直接用牛顿方法实现会导致数值计算问题。

       注意到通过设定ψ=θ(K),总能用θ(K)−ψ=0(全零向量)代替θ(K)而不会影响假设的函数。因此,可以将参数向量减掉θ(K)(或其他θ(k),k为任意值)而不损坏我们假设的表示。的确,我们不用优化K⋅n个参数值(θ(1),θ(2),…,θ(K)),其中θ(k)是n维的,只需要设置θ(K)=0然后优化K⋅n(不应该是(K-1)⋅n?)剩下的参数值。

四、与逻辑斯特回归的关系

在K=2的特殊情况,可以看到softmax回归退化为逻辑斯特回归。这说明softmax回归是逻辑斯特回归的推广。具体而言,当K=2时,softmax回归假设输出:


       利用(softmax)假设是过度参数化的事实并设置ψ=θ(2),我们可以从每个(向量)中的两个参数减去θ(2),得到:


       这样,用一个简单的参数θ′代替θ(2)−θ(1),我们发现softmax回归预测其中一个类的概率为1/1+exp(−(θ′)⊤x(i)),另一个类的概率为1−1/1+exp(−(θ′)⊤x(i)),正如逻辑斯特回归。

复现:Mamba-UNet:降水临近预报的创新解决方案 Mamba-UNet通过其创新的双分支Mamba融合模块、多尺度时空注意力模块和动态分位数加权损失函数,在降水临近预报领域取得了显著的性能提升。它不仅在多种降水场景下表现出色,尤其在预测强降水事件方面展现出了强大的能力。这一创新模型为降水临近预报提供了一种新的解决方案,有望在未来的研究和应用中发挥更大的作用,为应对气候变化带来的挑战提供有力支持。随着技术的不断发展和优化,我们期待Mamba-UNet在更广泛的气象预报任务中发挥更大的价值,为各行各业提供更精准、更可靠的降水预报服务。 阅读详情

相关推荐

ros2笔记-4.6使用launch启动脚本

ros2 4.6 使用launch启动多节点

bohu83的博客 1312

softmax详解

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

苦逼的程序猿 4万+

Android AVB 分析(十六)5 个例子彻底理解 FEC(Reed-Solomon) 的工作原理

关于 FEC 是如何工作的,一直是我 Android OTA 讨论群中的未解话题,大家基本上都不清楚 Android 上面的 FEC 是如何工作的,为什么在 OTA 升级的最后阶段,FEC 的编码计算会消耗大量的 IO 资源,并持续很长时间。接下来的几篇,我会从一个程序员的角度,演示基于里德所罗门编码的 FEC 到底是如何工作的。

洛奇看世界 669

李沐-动手学深度学习-softmax介绍

回归估计一个连续值 分类预测一个离散类别 softmax函数的解释: Softmax从字面上来说,可以分成soft和max两个部分。max故名思议就是最大值的意思。Softmax的核心在于soft,而soft有软的含义,与之相对的是hard硬。很多场景中需要我们找出数组所有元素中值最大的元素,实质上都是求的hardmax。 hardmax最大的特点就是只选出其中一个最大的值,即非黑即白。但是往往在实际中这种方式是不合情理的,比如对于文本分类来说,一篇文章或多或少包含着各种主题信息,我们更期望得到文章

qq_60678226的博客 3242

3️⃣ Coze工作流基础教学(2025年全新版本)

Coze 工作流作为扣子平台的重磅工具,利用可视化节点,如大语言模型、插件、条件判断等,把复杂任务巧妙拆解成多步骤流程。它不仅支持自动化编排,还能实现跨系统协同,有效提升处理效率与输出稳定性。在那些对准确性或格式有严格要求的场景中,比如报告生成、旅行规划,Coze 工作流更是发挥着关键作用。

李同学Lino的博客 5856

高通SDX55平台:5G速率问题排查分析方法

和大家分享一下高通5G平台5G速率问题排查分析方法。

四儿家的小祖宗的博客 5220

Softmax 是什么意思

softmax函数详解 Softmax 函数的特点和作用是什么?

ruxming 专栏 1381

锐明技术Crocus系统 DeviceState.do SQL注入漏洞复现

锐明技术Crocus系统 DeviceState.do 接口存在SQL注入漏洞,经过身份验证的远程攻击者除了可以利用SQL注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。

0xSec 454

softmax 简析

什么是softmax 意为 soft max,柔软的最大值。softmax的数学公式为                        (1) 一组原始数据共k个 (j=1...k),每一个元素根据公式(1)转为   ,得到一组新的数据共k个。即将原有数据指数后标准化处理为0~1间的数,且k个数据总和为1.   这样的softmax公式一般用于分类问题。   如何用softmax分类:...

Sue_qx的博客 980

AutoSAR系列讲解(实践篇)9.5-通信的数据映射

讲解了AppL中的数据与通信中的Signal的一个映射操作

雪云飞星的博客 1万+

使用R包PreMSIm预测微卫星不稳定的标题:基于基因表达量的微卫星不稳定性预测

在本文中,我们将介绍如何使用R语言中的PreMSIm包来根据基因表达量进行微卫星不稳定性的预测。需要注意的是,本文仅介绍了使用PreMSIm包进行微卫星不稳定性预测的基本流程和代码示例。在实际应用中,还需要考虑数据的质量控制、模型优化以及结果的解释和验证等因素,以确保预测结果的准确性和可靠性。预测结果将返回一个包含微卫星不稳定性指数的向量,其中每个元素对应一个样本的预测结果。在有了输入数据后,我们可以使用PreMSIm包中的函数进行微卫星不稳定性的预测。函数生成一个包含所有样本的微卫星不稳定性信息的表格。

2301_79330511的博客 383

softmax函数

Softmax从字面上来说,可以分成soft和max两个部分。max故名思议就是最大值的意思。Softmax的核心在于soft,而soft有软的含义,与之相对的是hard硬。很多场景中需要我们找出数组所有元素中值最大的元素,实质上都是求的hardmax。下面使用Numpy模块以及TensorFlow深度学习框架实现hardmax。a = np.array([1, 2, 3, 4, 5]) # 创建ndarray数组通过上面的例子可以看出hardmax最大的特点就是只选出其中一个最大的值,即非黑即白。

qq_55552561的博客 4139

概念解析 | 雷达动态范围

这里存在一个动态范围的问题:强雷达发射信号和弱目标反射信号存在非常大的功率差异,比如传统的脉冲多普勒雷达动态范围可达90dB以上。随着上述技术的发展,预计未来十年雷达接收机动态范围将达到120dB以上,届时雷达的监视能力将得到极大增强。简单来说,雷达动态范围越大,表示接收机噪声越低,对强信号过载保护能力越强,就越能检测到弱信号目标。此外,部分新概念雷达对动态范围提出新的需求,如被动雷达动态范围需大于100dB。当前,随着阵列雷达和数字雷达技术的发展,对雷达接收机动态范围提出了更高要求。

NLOS的博客 1051

UFLDL新版教程与编程练习(五):Softmax Regression(softmax回归,向量化)

UFLDL是吴恩达团队编写的较早的一门深度学习入门,里面理论加上练习的节奏非常好,每次都想快点看完理论去动手编写练习,因为他帮你打好了整个代码框架,也有详细的注释,所以我们只要实现一点核心的代码编写工作就行了,上手快! 我这里找不到新版对应这块的中文翻译了,-_- 第五节是:Softmax Regression(softmax回归),下面我会同时提供向量化与非向量化的代码。 softmax回归其实...

laizi_laizi的博客 606

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

DNN:逻辑回归与 SoftMax 回归方法

第四章:SoftMax回归 UFLDL Tutorial 翻译系列:http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial 简介:见 AI : 一种现代方法。Chapter21. Reinforce Learning p.703             Softmax函数为多个变量的Logitic函数的泛化.      ...

wishchinYang的专栏 8229

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

UFLDL教程 -- 译文版

原文地址:http://deeplearning.stanford.edu/wiki/index.php/UFLDL%E6%95%99%E7%A8%8B 说明:本教程将阐述无监督特征学习和深度学习的主要观点。通过学习,你也将实现多个功能学习/深度学习算法,能看到它们为你工作,并学习如何应用/适应这些想法到新问题上。 本教程假定机器学习的基本知识(特别是熟悉的监督学习,逻辑回归,梯度下降的想

xceman1997的专栏 2244

Unsupervised Feature Learning and Deep Learning(UFLDL) Exercise 总结

分类: 机器学习 Deep Learning 计算机视觉2013-08-11 21:43 1816人阅读 评论(8) 收藏 举报 7.27 暑假开始后,稍有时间,“搞完”金融项目,便开始跑跑 Deep Learning的程序 Hinton 在Nature上文章的代码 跑了3天 也没跑完 后来Debug 把batch 从200改到20 勉强跑出结果 后来开始看

pi9nc的专栏 1108

深度学习大牛andrew.Ng DeepLearning

MachineLearning 关注 深度学习DL(教程) 转自:http://blog.sina.com.cn/s/blog_46d0a3930101h6nf.html非常激动地宣告,Stanford 教授 Andrew Ng 的 Deep Learning 教程,于今日,2013年4月8日,全部翻译成中文。这是中国屌丝军团,从2月20日战役打响之日,经过 50 天的团结奋战

dzh13546101702的专栏 2364

Deep Learning 教程翻译

Deep Learning 教程翻译   转载▼ 标签:  机器学习   大数据   深度学习   stanford   公开课 分类: 众包项目 非常激动地宣告,Stanford 教授 Andrew Ng 的 Deep Learning 教程,于今日,2013年4月8日,全部翻译成中文。这是中国屌

Eagleest的专栏 1506

深度学习算法原理——栈式自编码神经网络

注:最近打算将UFLDL教程重新看一遍,其实里面有很多关于神经网络以及深度学习的知识点很有用,但是只是学习深度学习的话有一些内容就有点多余,所以想整理一个笔记,记录下神经网络到深度学习的一些知识点。整个教材已经非常好,网上有原版的英文版,也有翻译的中文版,这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知...

null的专栏 1万+

Python----深度学习(Softmax与交叉熵)

Softmax是一种常见的激活函数,可以将计算出来的数值通过公式变成概率,通常用 在分类中。Softmax从字面上来说,可以分成soft和max两个部分。Max顾名思义就是最大值的 意思。Softmax的核心在于soft,而soft有软的含义,与之相对的是hard硬。很多场 景中需要我们找出数组所有元素中值最大的元素,实质上都是求的hardmax。hardmax最大的特点就是只选出其中一个最大的值,即非黑即白。

weixin_64110589的博客 1169

Softmax简介

来源:DeepHub IMBA 本文约1300字,建议阅读5分钟 Softmax是逻辑回归的一种推广,可以用于多分类任务,其公式与逻辑回归的sigmoid函数非常相似。Softmax是一种数学函数,通常用于将一组任意实数转换为表示概率分布的实数。其本质上是一种归一化函数,可以将一组任意的实数值转化为在[0, 1]之间的概率值,因为softmax将它们转换为0到1之间的值,所以它们可以被解释为概率。...

数据派THU 1080
上一篇: 吴恩达机器学习笔记_第五周
下一篇: 基于Ubuntu的无GPU的Caffe配置
hunterlew
博客等级 码龄15年 432粉丝 128原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值