softmax

softmax的基本概念

拥有回忆 提交于 2020-02-14 01:23:29
softmax的基本概念 分类问题 一个简单的图像分类问题,输入图像的高和宽均为2像素,色彩为灰度。 图像中的4像素分别记为 x 1 , x 2 , x 3 , x 4 x_1, x_2, x_3, x_4 x 1 ​ , x 2 ​ , x 3 ​ , x 4 ​ 。 假设真实标签为狗、猫或者鸡,这些标签对应的离散值为 y 1 , y 2 , y 3 y_1, y_2, y_3 y 1 ​ , y 2 ​ , y 3 ​ 。 我们通常使用离散的数值来表示类别,例如 y 1 = 1 , y 2 = 2 , y 3 = 3 y_1=1, y_2=2, y_3=3 y 1 ​ = 1 , y 2 ​ = 2 , y 3 ​ = 3 。 权重矢量 o 1 = x 1 w 11 + x 2 w 21 + x 3 w 31 + x 4 w 41 + b 1 \begin{aligned} o_1 &= x_1 w_{11} + x_2 w_{21} + x_3 w_{31} + x_4 w_{41} + b_1 \end{aligned} o 1 ​ ​ = x 1 ​ w 1 1 ​ + x 2 ​ w 2 1 ​ + x 3 ​ w 3 1 ​ + x 4 ​ w 4 1 ​ + b 1 ​ ​ o 2 = x 1 w 12 + x 2 w 22 + x 3 w 32 + x 4 w

Softmax函数概述——2020.2.8

南楼画角 提交于 2020-02-08 13:02:32
一、softmax函数简介 softmax作为输出层的激励函数,在机器学习中常被看作是一种多分类器。通俗的意思就是,将一个物品输入,得出其中可能属于的类别概率(soft),最后得出最大可能性的判别(max)。下图为softmax的具体计算流程: 其中,3、1、-3为输入值,计算以e为底的幂,之后求各类别之和 ,每个类别的输出值为 ,保证了各个类别输出值总和 ≤ 1(即: )。 比如下图所,j假设有7张图,分别为飞机、汽车、轮船、猫、狗、鸟、太阳,则图像的分类标签如下表示: 这种激励函数通常用在神经网络的最后一层作为分类器的输出,有7个节点就可以做7个不同类别的判别,有1000个节点就可以做1000个不同样本类别的判断。 二、softmax函数优劣性分析 优点:不同类之间分类准确 softmax比hardmax(本文暂且称为,即利用输入本身的值计算输出值: ))更容易实现one-hot目标,即放大某一类可能性与其他类的差值,方便实现不同类之间的分类判定。两者差异性见下图: 缺点:类间紧凑,不满足进行人脸识别中特征向量对比需求 人脸识别中特征向量相似度计算,常用欧式距离(L2 distance)和余弦距离(cosine distance),下面讨论特征向量相似度对比情况: 欧式距离: 欧式距离越小,向量相似度越高。可能同类的特征向量距离(黄色)比不同类的特征向量距离(绿色)更大

TensorFlow实现Softmax

人盡茶涼 提交于 2020-02-08 00:35:55
我们先来理解理解Softmax:任 意事 件发生的概率都在 0 和 1 之间,且总有某 一 个 事 件发生 ( 概率的和为 1 )。如果将分类问题中“ 一 个样例属于某 一 个类别”看成 一 个概率 事 件, 那么训练数据的正确答案就符合 一 个概率分布 。因为事 件“ 一 个样例属于不正确的类别”的概率为0, 而“ 一 个样例属于正确的类别”的概率为 1。如何将神经网络前向传播得到的结果也变成 概率分布呢? Softmax 回归就是 一 个非常常用的方法 。 Softmax 回归本身可以作为 一 个学习算法来优化分类结果,但在TensorFlow 中, softmax 回归的参数被去掉了,它只是 一 层额外的处理层,将神经网络的输出变成 一 个概率分布 。 总结:softmax就是把输出结果变成概率分布。 TensorFlow实现Softmax:result = tf.nn.softmax( tf.matmul(x,w)+b ),其中 tf.matmul(x,w)+b为神经网络的输出结果。 来源: https://www.cnblogs.com/Mydream6/p/11330909.html

1.Deep learning AlexNet (1)

僤鯓⒐⒋嵵緔 提交于 2020-02-07 11:36:33
NIPS (神经信息处理系统进展大会) 读哪些东西? 论文背景 成果及其意义 未来的研究趋势 Auto L 自动的设计网络结构 softmax 可以将数值变成概率分布 再与 label 交叉熵 softmax 可以将负数变为正数 加起来概率和为1 交叉熵数值越大说明越不接近。。。 fc8 未归一化的概率分布。。。 第一个计算公式 除不尽的时候进行下取整 第二和第三个 除不尽的时候上取整 F为特征图的尺寸 k卷积核尺寸 卷积核通道数 Kc Foc 输出特征图的通道数 输入图片大小为 227 227 3 包含了96个大小为 11*11通道数为3的卷积核 卷积核的通道数等于输入map的通道数 所以是3 方式为valid parameters =(卷积核尺寸 * 卷积核通道 *+ 1) * 特征图通道数 因为之前GPU性能不够 所以分开来进行处理, 再将其进行了 合并操作 concate Alexnet应为包含了很多权重参数因此很容易过拟合 所以训练的时候采用了数据增强处理 来源: CSDN 作者: hzzDeeplearning 链接: https://blog.csdn.net/weixin_44400401/article/details/104031192

第二讲 cs224n系列之word2vec & 词向量

*爱你&永不变心* 提交于 2020-02-07 09:48:47
本系列是一个基于深度学习的NLP教程,2016年之前叫做CS224d: Deep Learning for Natural Language Processing,之后改名为CS224n: Natural Language Processing with Deep Learning。新版主讲人是泰斗Chris Manning和Richard Socher(这是旧版的讲师),两人分别负责不同的章节。博主在学习的同时,对重点内容做成系列教程,与大家分享! 系列目录(系列更新中) 第二讲 cs224n系列之word2vec & 词向量 1.语言模型 神经概率语言模型(Neural Probabilistic Language Model)中词的表示是向量形式、面向语义的。两个语义相似的词对应的向量也是相似的,具体反映在夹角或距离上。甚至一些语义相似的二元词组中的词语对应的向量做线性减法之后得到的向量依然是相似的。词的向量表示可以显著提高传统NLP任务的性能,例如《基于神经网络的高性能依存句法分析器》中介绍的词、词性、依存关系的向量化对正确率的提升等。 2.word2vec word2vec是一个计算word vector的开源工具。当我们在说word2vec算法或模型的时候,其实指的是其背后用于计算word vector的CBoW模型和Skip-gram模型

注意力机制

折月煮酒 提交于 2020-02-07 02:31:41
注意力的种类有如下四种: 加法注意力, Bahdanau Attention 点乘注意力, Luong Attention 自注意力, Self-Attention 多头点乘注意力, Multi-Head Dot Product Attention(请转至Transformer模型) 1. Bahdanau Attention Neural Machine Translation by Jointly Learning to Align and Translate, Bahdanau et al, ICLR 2015 总览 2015年发布的论文,首次提出注意力机制,也就是加法注意力,并将其应用在机器翻译领域。 当前工作的不足 目前NMT主流的方法是seq2seq方法,具体采用的是encoder-decoder模型。但是在编解码模型中 编码得到的是固定长度的context vector,这是当前seq2seq的瓶颈 。 本文提出联合学习 对齐 和 翻译 的方法: 对齐:在预测每一个target word的时候都去search源句子中一个部分 翻译:根据对齐的部分动态生成c,然后基于c和上一个target word生成当前的target word 模型 下图展示了在预测target word o t o_t o t ​ 时从源句子隐藏状态动态生成上下文向量的过程。 首先根据对齐模型 a

动手学习深度学习 3-2 Softmax-regression

天大地大妈咪最大 提交于 2020-02-05 18:58:56
Softmax Regression 1. softmax 回归 softmax 回归主要是解决分类问题,输出是离散值,区别于线性回归,输出单元从一个变成了多个。 注: 需要在notebook文件地址下打开jupyter notebook,如果在子文件夹 04 chapter-deep-learning-basics 下打开,则无法访问 notebook/img 中的图片 1.1 softmax回归模型 softmax回归将输入特征与权重做线性叠加,输出值个数等于标签里的类别数。假设有4种特征和3种输出动物类别,所以权重包含12个标量(带下标的 \(w\) )、偏差包含3个标量(带下标的 \(b\) ),且对每个输入计算 \(o_1, o_2, o_3\) 这3个输出: \[ \begin{aligned} o_1 &= x_1 w_{11} + x_2 w_{21} + x_3 w_{31} + x_4 w_{41} + b_1,\\ o_2 &= x_1 w_{12} + x_2 w_{22} + x_3 w_{32} + x_4 w_{42} + b_2,\\ o_3 &= x_1 w_{13} + x_2 w_{23} + x_3 w_{33} + x_4 w_{43} + b_3. \end{aligned} \] softmax回归是一个单层神经网络

【Deep Learning】Pointer Sentinel Mixture Models

半腔热情 提交于 2020-02-05 09:12:59
Pointer Sentinel Mixture Models TLDR; The authors combine a standard LSTM softmax with Pointer Networks in a mixture model called Pointer-Sentinel LSTM (PS-LSTM). The pointer networks helps with rare words and long-term dependencies but is unable to refer to words that are not in the input. The oppoosite is the case for the standard softmax. By combining the two approaches we get the best of both worlds. The probability of an output words is defined as a mixture of the pointer and softmax model and the mixture coefficient is calculated as part of the pointer attention. The authors evaluate

深度学习入门笔记(十四):Softmax

泄露秘密 提交于 2020-02-05 07:03:22
欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与增删。还望大家多多指点。大家都共享一点点,一起为祖国科研的推进添砖加瓦。 文章目录 欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 深度学习入门笔记(十四):Softmax 1、Softmax 回归 2、训练一个 Softmax 分类器 推荐阅读 参考文章 深度学习入门笔记(十四):Softmax 1、Softmax 回归 如果是二分分类的话,只有两种可能的标记——0或1,如果是猫咪识别例子,答案就是:这是一只猫或者不是一只猫; 如果有多种可能的类型的话呢?有一种 logistic 回归的一般形式,叫做 Softmax 回归,能在试图识别某一分类时做出预测,或者说是多种分类中的一个,不只是识别两个分类,一起看一下。 假设不单单需要识别猫,而是想识别猫,狗和小鸡,其中把猫称为类1,狗为类2,小鸡是类3,如果不属于以上任何一类,就分到“其它”或者说“以上均不符合”这一类

归一化(softmax)、信息熵、交叉熵

旧巷老猫 提交于 2020-02-03 14:08:34
机器学习中经常遇到这几个概念,用大白话解释一下: 一、归一化 把几个数量级不同的数据,放在一起比较(或者画在一个数轴上),比如:一条河的长度几千甚至上万km,与一个人的高度1.7m,放在一起,人的高度几乎可以被忽略,所以为了方便比较,缩小他们的差距,但又能看出二者的大小关系,可以找一个方法进行转换。 另外,在多分类预测时,比如:一张图,要预测它是猫,或是狗,或是人,或是其它什么,每个分类都有一个预测的概率,比如是猫的概率是0.7,狗的概率是0.1,人的概率是0.2... , 概率通常是0到1之间的数字,如果我们算出的结果,不在这个范围,比如:700,10,2 ,甚至负数,这样就需要找个方法,将其转换成0-1之间的概率小数,而且通常为了满足统计分布,这些概率的和,应该是1。 最常用的处理方法,就是softmax,原理如上图(网上淘来的)。 类似的softmax(1)=0.12,softmax(-3)=0,这个方法在数学上没毛病,但是在实际运用中,如果目标值x很大,比如10000,那e的10000次方,很可能超出编程语言的表示范围,所以通常做softmax前,要对数据做一下预处理(比如:对于分类预测,最简单的办法,所有训练集整体按比例缩小) 二、信息熵 热力学中的热熵是表示分子状态混乱程度的物理量,而且还有一个所谓『熵增原理』,即:宇宙中的熵总是增加的,换句话说