0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习的Softmax定义和优点

汽车玩家 来源:今日头条 作者:不一样的程序猿 2020-03-15 17:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Softmax在机器学习中有非常广泛的应用,但是刚刚接触机器学习的人可能对Softmax的特点以及好处并不理解,其实你了解了以后就会发现,Softmax计算简单,效果显著,非常好用。

我们先来直观看一下,Softmax究竟是什么意思

我们知道max,假如说我有两个数,a和b,并且a>b,如果取max,那么就直接取a,没有第二种可能

但有的时候我不想这样,因为这样会造成分值小的那个饥饿。所以我希望分值大的那一项经常取到,分值小的那一项也偶尔可以取到,那么我用softmax就可以了

现在还是a和b,a>b,如果我们取按照softmax来计算取a和b的概率,那a的softmax值大于b的,所以a会经常取到,而b也会偶尔取到,概率跟它们本来的大小有关。所以说不是max,而是 Soft max

那各自的概率究竟是多少呢,我们下面就来具体看一下

定义

假设我们有一个数组V,Vi表示V中的第i个元素,那么Vi元素的Softmax值就是

机器学习的Softmax定义和优点

Vi元素的Softmax值

也就是说,是该元素的指数值,与所有元素指数值和的比值

这个定义可以说非常的直观,当然除了直观朴素好理解以外,它还有更多的优点

1.计算与标注样本的差距

神经网络的计算当中,我们经常需要计算按照神经网络的正向传播计算的分数S1,按照正确标注计算的分数S2,之间的差距,计算Loss,才能应用反向传播。Loss定义为交叉熵

机器学习的Softmax定义和优点

交叉熵

取log里面的值就是这组数据正确分类的Softmax值,它占的比重越大,这个样本的Loss也就越小,这种定义符合我们的要求

2.计算上非常非常的方便

当我们对分类的Loss进行改进的时候,我们要通过梯度下降,每次优化一个step大小的梯度

我们定义选到yi的概率是

机器学习的Softmax定义和优点

yi的概率

然后我们求Loss对每个权重矩阵的偏导,应用到了链式法则

机器学习的Softmax定义和优点

求导结果

详细过程

机器学习的Softmax定义和优点

求导过程

最后结果的形式非常的简单,只要将算出来的概率的向量对应的真正结果的那一维减1,就可以了

举个例子,通过若干层的计算,最后得到的某个训练样本的向量的分数是[ 1, 5, 3 ],

那么概率分别就是

机器学习的Softmax定义和优点

训练样本的概率

如果这个样本正确的分类是第二个的话,那么计算出来的偏导就是

[0.015,0.866−1,0.117]=[0.015,−0.134,0.117]

是不是很简单!!然后再根据这个进行back propagation就可以了

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4827

    浏览量

    106803
  • 机器学习
    +关注

    关注

    66

    文章

    8541

    浏览量

    136236
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    量子机器学习入门:三种数据编码方法对比与应用

    在传统机器学习中数据编码确实相对直观:独热编码处理类别变量,标准化调整数值范围,然后直接输入模型训练。整个过程更像是数据清洗,而非核心算法组件。量子机器学习的编码完全是另一回事。传统算
    的头像 发表于 09-15 10:27 482次阅读
    量子<b class='flag-5'>机器</b><b class='flag-5'>学习</b>入门:三种数据编码方法对比与应用

    如何解决开发机器学习程序时Keil项目只能在调试模式下运行,但无法正常执行的问题?

    如何解决开发机器学习程序时Keil项目只能在调试模式下运行,但无法正常执行的问题
    发表于 08-28 07:28

    超小型Neuton机器学习模型, 在任何系统级芯片(SoC)上解锁边缘人工智能应用.

    Neuton 是一家边缘AI 公司,致力于让机器 学习模型更易于使用。它创建的模型比竞争对手的框架小10 倍,速度也快10 倍,甚至可以在最先进的边缘设备上进行人工智能处理。在这篇博文中,我们将介绍
    发表于 07-31 11:38

    FPGA在机器学习中的具体应用

    随着机器学习和人工智能技术的迅猛发展,传统的中央处理单元(CPU)和图形处理单元(GPU)已经无法满足高效处理大规模数据和复杂模型的需求。FPGA(现场可编程门阵列)作为一种灵活且高效的硬件加速平台
    的头像 发表于 07-16 15:34 2636次阅读

    请问STM32部署机器学习算法硬件至少要使用哪个系列的芯片?

    STM32部署机器学习算法硬件至少要使用哪个系列的芯片?
    发表于 03-13 07:34

    SLAMTEC Aurora:把深度学习“卷”进机器人日常

    在人工智能和机器人技术飞速发展的今天,深度学习与SLAM(同步定位与地图构建)技术的结合,正引领着智能机器人行业迈向新的高度。最近科技圈顶流DeepSeek简直杀疯了!靠着逆天的深度学习
    的头像 发表于 02-19 15:49 725次阅读

    机器学习模型市场前景如何

    当今,随着算法的不断优化、数据量的爆炸式增长以及计算能力的飞速提升,机器学习模型的市场前景愈发广阔。下面,AI部落小编将探讨机器学习模型市场的未来发展。
    的头像 发表于 02-13 09:39 625次阅读

    BP神经网络与深度学习的关系

    ),是一种多层前馈神经网络,它通过反向传播算法进行训练。BP神经网络由输入层、一个或多个隐藏层和输出层组成,通过逐层递减的方式调整网络权重,目的是最小化网络的输出误差。 二、深度学习定义与发展 深度学习
    的头像 发表于 02-12 15:15 1342次阅读

    人工智能和机器学习以及Edge AI的概念与应用

    与人工智能相关各种技术的概念介绍,以及先进的Edge AI(边缘人工智能)的最新发展与相关应用。 人工智能和机器学习是现代科技的核心技术 人工智能(AI)和机器学习(ML)是现代科技的
    的头像 发表于 01-25 17:37 1581次阅读
    人工智能和<b class='flag-5'>机器</b><b class='flag-5'>学习</b>以及Edge AI的概念与应用

    嵌入式机器学习的应用特性与软件开发环境

    作者:DigiKey Editor 在许多嵌入式系统中,必须采用嵌入式机器学习(Embedded Machine Learning)技术,这是指将机器学习模型部署在资源受限的设备(如微
    的头像 发表于 01-25 17:05 1211次阅读
    嵌入式<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的应用特性与软件开发环境

    传统机器学习方法和应用指导

    在上一篇文章中,我们介绍了机器学习的关键概念术语。在本文中,我们会介绍传统机器学习的基础知识和多种算法特征,供各位老师选择。 01 传统机器
    的头像 发表于 12-30 09:16 1982次阅读
    传统<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法和应用指导

    如何选择云原生机器学习平台

    当今,云原生机器学习平台因其弹性扩展、高效部署、低成本运营等优势,逐渐成为企业构建和部署机器学习应用的首选。然而,市场上的云原生机器
    的头像 发表于 12-25 11:54 700次阅读

    zeta在机器学习中的应用 zeta的优缺点分析

    在探讨ZETA在机器学习中的应用以及ZETA的优缺点时,需要明确的是,ZETA一词在不同领域可能有不同的含义和应用。以下是根据不同领域的ZETA进行的分析: 一、ZETA在机器学习
    的头像 发表于 12-20 09:11 1627次阅读

    cmp在机器学习中的作用 如何使用cmp进行数据对比

    机器学习领域,"cmp"这个术语可能并不是一个常见的术语,它可能是指"比较"(comparison)的缩写。 比较在机器学习中的作用 模型评估 :比较不同模型的性能是
    的头像 发表于 12-17 09:35 1324次阅读

    构建云原生机器学习平台流程

    构建云原生机器学习平台是一个复杂而系统的过程,涉及数据收集、处理、特征提取、模型训练、评估、部署和监控等多个环节。
    的头像 发表于 12-14 10:34 676次阅读