位置: IT常识 - 正文

三分钟认知Softmax和Sigmoid的详细区别(softag)

编辑:rootadmin
三分钟认知Softmax和Sigmoid的详细区别 目录前言1. Softmax2. Sigmoid3. 总结前言

推荐整理分享三分钟认知Softmax和Sigmoid的详细区别(softag),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:soft learning,softens,softism,soft-mindedness,soft learning,soft learning,softag,softni,内容如对您有帮助,希望把文章链接给更多的朋友!

Softmax以及Sigmoid这两者都是神经网络中的激活函数,对应还有其他的激活函数

引入激活函数是为了将其输入非线性化,使得神经网络可以逼近任何非线性函数 (原本没有引入激活函数,就是多个矩阵进行相乘,无论神经网络多少层都是线性组合,这个概念是感知机)

Softmax以及Sigmoid两者都是作为神经网络的最后一层,通过激活函数之后转换为概率值

1. Softmax

作为二分类问题探讨,是二分类的拓展版,将其拓展为N分类,对应以概率的形式展示(概率最大的类别为此类别)

全连接层的输出使用Softmax,将其输出的结果表示为概率类别(所有概率加起来为1)。

Softmax将其泛化为多分类(SVM得出的是每个类别的分数),Softmax得出的是归一化类别概率(将其所有的输出结果都归一到0和1范围内)。 对应Softmax输入N个值,输出的结果为这N个值的概率(符合概率分布),预测出的所有值加起来为1,对应哪个值比较大,则判定为该类别

其公式具体如下:(使用ex,是为了将其预测结果转换为正数,保证概率不为负数)

通过其公式可看出其特性为:

零点不可微负输入梯度为0

例子如下:

A = 1,B = 2,C = 3 对应的概率值分别为: P(A)= e1 / (e1 + e2 + e3) P(B)= e2 / (e1 + e2 + e3) P(C)= e3 / (e1 + e2 + e3)

对应代码模块如下:

import numpy as npscores = np.array([1, 2, 3])softmax = np.exp(scores) / np.sum(np.exp(scores))print(softmax)

截图如下:

三分钟认知Softmax和Sigmoid的详细区别(softag)

三者的概率值加起来为1,而且P(C)的概率值要远远大于P(A)以及 P(B)

对此Softmax的特性:

归一化并且对应的所有概率值加起来为1对应的真实类别概率值特别大,有放大(但是数值过大可能会有溢出的风险)算出的概率值为非负数

一般在使用Softmax函数作为激活函数的时候,避免溢出,通常会做特殊的处理,将其ex都替换成e-x,防止数值过大产生溢出

在TensorFlow中一般使用统一的接口:

tf.keras.losses.categorical_crossentropy(y_true, y_pred, from_logits = False)

通过from_logits参数设置,该参数为布尔变量

False,网络预测值y_pred经过Softmax输出值True,网络预测值y_pred未经过Softmax输出值

测试代码如下:

import tensorflow as tf# 3个样本,10个类别x = tf.random.normal([3,10])# 3个样本标签值y = tf.constant([9,99,999]) # 采用one_hot编码模式y_true = tf.one_hot(y, depth = 10) loss = tf.keras.losses.categorical_crossentropy(y_true, x, from_logits = False)loss = tf.reduce_mean(loss)print(loss)

截图如下:(如下使用的是False,表示经过激活函数。如果为True,输出的值也是一样的,只不过异常值的时候,False参数,Softmax会有所优化)

2. Sigmoid

逻辑回归二分类将其输入映射到【0,1】的概率分布中,Sigmoid也有这样的功能

数学公式如下:

单调递增且其反函数也有递增的性质,此函数也经常被用作神经网络的阈值函数中

用此函数预测类别,对应其值加起来并不为1,而Softmax函数加起来为1

其图像如下:

用在神经网络中,其特点如下:

梯度平滑,避免梯度跳跃连续函数,可导可微

但是缺点如下:

横向坐标轴正负无穷的时候,两侧导数为0,造成梯度消失输出非0时,均值收敛速度慢(容易对梯度造成影响)e的幂次运算比较复杂,训练时间比较长3. 总结

这两种激活函数如何选择,以及如何应用在不同场景,本身就是伯努利分布和二项分布的差别

Softmax是为了判定该类别是什么(激活函数Softmax可使用的情况下,Sigmoid也可用)

N分类互斥,且只能选择其一,选择SoftmaxN分类互斥,可选多个类别,选择Sigmoid
本文链接地址:https://www.jiuchutong.com/zhishi/292296.html 转载请保留说明!

上一篇:Drömling湿地中的灰鹤,德国 (© Mike Friedrichs/Getty Images)

下一篇:一年一度的施瓦本哈尔圣诞市集,德国巴登-符腾堡州 (© sack/Getty Images Plus)

  • 留抵税额退税怎么做账
  • 福利费专票进项怎么抵扣
  • 分配税后利润需交个人所得税吗
  • 车船抵扣如何填报
  • 费用化的研发支出
  • 小规模季度不超过30万元免税会计分录
  • 个人所得税本期免税收入是指什么
  • 增值税即征即退2023政策
  • 非同一控制下用什么法
  • 资产损失税前扣除管理办法2019
  • 现金支票存根如何填写
  • 公司注销时发现很多年前多发了员工的工资
  • 房地产开发企业会计科目
  • 增值税普票跨年重开风险
  • 晚会主持人化妆
  • 汽车装饰装潢税率
  • 土地增值税的纳税人是在我国境内
  • 失去胜诉权但又有起诉权是什么意思
  • 注册资本多少钱算大公司
  • 自建不动产领用原材料的进项税
  • 本企业领用外购原材料进项税要转出吗
  • 期末进项税额和销项税额都有余额
  • 工信部推出一键解绑怎么用
  • win10点击添加账户没反应
  • 计算机系统结构第三版课后答案
  • 个体工商户和小微企业的区别
  • php去除二维数组重复值
  • css 栅格
  • php表单验证实例
  • win10兼容性在哪里调整
  • 零售企业退货分录
  • 支付押金无法收取怎么办
  • 混合销售兼营如何纳税
  • Thinkphp+smarty+uploadify实现无刷新上传
  • 逾期增值税扣税凭证
  • thinkphp开发框架
  • 捐资民办学校可以盈利吗
  • form表单参数传递
  • dmsetup remove_all 会不会清掉数据
  • 零税率和免税的含义和区别
  • 税收收入退还书有时间限制吗
  • 按25%计算应交所得税
  • 季度申报所得税时可以用以前年度亏损吗
  • 小规模附加税减免政策2023
  • 企业期末预收账款怎么算
  • 用友要怎么删除凭证
  • 本年利润会计处理流程
  • 增值税发票红冲的相关规定
  • 公司销售的产品算固定资产吗
  • 小规模纳税人的条件
  • 京东提现到公账怎么取消
  • 转让不动产为什么不能开全票发票
  • 银行共管账户怎么提款
  • 工会经费在哪儿申报
  • 筹建期的印花税怎么算
  • 坏账准备的余额百分比法
  • abc类企业的划分
  • 合资注册公司应该注意什么
  • 盈余公积的构成
  • sqlserver2000数据库连接不上
  • Xp系统的桌面文件在哪里
  • ubuntu搭建网站教程
  • fsrremos.exe
  • win8.1其他用户名登不进去
  • win10 win+l
  • Win10 Mobile 10586.312提前体验
  • win7如何重装系统电脑
  • Win10更新后浏览器不能联网怎么办
  • js设计模式有什么用
  • jquery 动态添加列表元素
  • 批处理命令实例
  • 脚本语言教程
  • js获取父级元素
  • jquery可以实现哪些效果
  • python文件rb
  • 工具的图
  • jquery加载中
  • 重大税务违法案件一案双查标准
  • 沈阳税务发票查询系统
  • 二手房个税怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设