智客公社

标题: 「精读」自然言语处理基础之softmax函数 [打印本页]

作者: 如果裤衩会飞    时间: 2019-6-4 09:48
标题: 「精读」自然言语处理基础之softmax函数
在后面几节【精读】中,终极君向大家引见了自然言语处理中的几个重要的基础内容。

这些内容外面都有一个异样的部分--softmax函数。

也就是各种类型的神经网络和言语模型最后输入的一个激活函数

先举个例子


[attach]152001[/attach]



在深度学习中,最常见的就是多分类成绩。

比如我们要让人工智能判别图片的内容。

判别之前我们曾经训练人工智能可以辨认小猫,小狗,小兔(3种动物)。

[attach]152002[/attach]



再让它去区分一张从未见过的新图片。

而最后的结果又是互斥的(即这张图片不能既是小猫又是小狗)

那么首先我们要建立数学的映射关系ϕ1(x)。

将我们的图片和结果(上述的3种动物)分别对应起来,那么ϕ1(x)会映射到一个3维向量(y={c1,c2,c3})当中。

向量中的每一维,都对应着一个能够的分类结果(如c1=1或0,是小猫或不是小猫)。

由于结果是互斥的,所以y存在以下n种方式:小猫=[1,0,0],小狗=[0,1,0],小兔=[0,0,1]

电脑看了这张新图片后,假设最后输入的结果为:新图片= [3,1,-3]

那么我们经过softmax的函数公式,计算得到不同类别之间的相对概率,新图片=[0.88,0.12,0]。不难发现0.88最大,也就是说这张图片是小猫的能够性最大。

概念组成

我们首先来看softmax这个词的组成:

max:从数学下去讲,有两个数a和b, 假如a>b,当取max的时分,就直接取a,没有第二种能够。

用代码表示 if a > b return a; else b

在分类成绩中(尤其是多分类成绩),这样做太相对了些。

所以我们更想用一个概率去表示分类结果,也就是说大的那个我们常常可以获得到,但是小的那个偶然也可以获得到。

这个时分softmax就派上用场了,它把分类结果映射为0-1之间的实数,并且归一化保证和为1,因此分类的概率之和也刚好为1。

那我们来看看他的定义,假设我们有一个数组V,Vi表示V中的第i个元素,那么这个元素的softmax值就是:

[attach]152003[/attach]



即该元素的对数值与一切的元素对数的和的比值

下图更笼统的展现了softmax函数的详细求解过程

[attach]152004[/attach]



好了,明天就先讲到这儿
作者: 1楚河汉界1    时间: 2019-6-4 16:49
大佬,这是大佬
作者: 茻匸    时间: 2019-6-5 16:55
好棒的分享楼主多写点吧,写完记得通知我,哈哈
作者: zlc940218    时间: 2019-6-7 07:17
众里寻他千百度,蓦然回首在这里!




欢迎光临 智客公社 (http://bbs.cnaiplus.com/) Powered by Discuz! X3.4