![深度学习与神经网络](https://wfqqreader-1252317822.image.myqcloud.com/cover/351/46418351/b_46418351.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2.3 Softmax输出分类
Softmax函数也称归一化指数函数或多项(Multinomial)、多类(Multi-Class)的回归。将一个含任意实数的K维向量Z压缩到一个K维实向量σ(z)中,使得向量中每一个元素的值都在(0,1)区间,且所有元素的和为1,即向量离散概率分布的梯度对数归一化。
在人工神经网络中,该函数主要用于解决多分类问题。对于多分类任务,类别标签y∈{1,2,…,K},可以有K个取值。Softmax回归预测的属于每个分类i的概率为
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_1.jpg?sign=1739282666-EmTjvBRfE0F3ZSYzkJcwO76HyX727MnC-0-54f22ca1755f3eb159c9be18298013cf)
其中,分母充当了正则项的作用,有。
对于一个有K个神经元x的输出层,式(2-21)中的每个分类i的条件概率为
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_3.jpg?sign=1739282666-OMDC7Kn5oxiOLqO0WzMXDu9OSL9gSxQL-0-113e50bb923fac2465d6c9752792cfb9)
其中,wi是分类i的权重向量。
式(2-22)的向量形式表示为
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_4.jpg?sign=1739282666-it2XXKC24o1KPi1VRTowtJVbVM9r5eVE-0-4b7db4fcc952aa3f8ecb998cd925967b)
其中,W=[w1,…,wK]是由K个类的权值向量组成的矩阵;1K为K维的全1向量;为所有类别的预测条件概率组成的向量,第i维的值是分类i的预测条件概率。
Softmax模型的训练过程为首先初始化W0←0,然后通过下式进行迭代更新:
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_6.jpg?sign=1739282666-TCbFTlWtGi1M44FKaliaQa1XHhMQuzmv-0-3e574e3c3bd506210431d70efadd5396)
其中,η是学习率;是当参数为Wt时,Softmax模型的输出。
例2.1 某个神经元网络有7个输出值,向量为[1.0,2.0,3.0,10.0,1.0,2.0,3.0]。求Softmax函数的值,并输出一个one-hot编码形式的二分类结果。
解:因为e1≈2.72,e2≈7.39,e3≈20.09,e4≈22026.47,e5≈2.72,e6≈7.39,e7≈20.09,所以有
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_58_2.jpg?sign=1739282666-J5jStJqjYXMkB9bQa5sA6e2pO0Jo8JlC-0-a7e7fb9aaddf42e9f4d167161a64566e)
P5≈0.00012
P6≈0.00033
P7≈0.00091
因此最后输出二分类one-hot编码形式的结果为[0,0,0,1,0,0,0]。以下为例2.1的代码实现过程。
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_58_3.jpg?sign=1739282666-ixGf2TZPbdmGPmVEBOFQarqTJ2OTEcOr-0-92b2112a0f94352aeb5a1145bd4e2e34)