![深度学习与神经网络](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=1739185419-loIlTcrgulwXfiTnAF2uvsDA5T91Rq3H-0-92f957da5a6ee69904cf27de28fe54c8)
其中,分母充当了正则项的作用,有。
对于一个有K个神经元x的输出层,式(2-21)中的每个分类i的条件概率为
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_3.jpg?sign=1739185419-EA6UJ0XgZIdbF3aB9RnbJW5UczkBgkva-0-47ca5edba4a30ea91565574367c813de)
其中,wi是分类i的权重向量。
式(2-22)的向量形式表示为
![](https://epubservercos.yuewen.com/2D541D/25638820209150006/epubprivate/OEBPS/Images/44429_57_4.jpg?sign=1739185419-AdIVSNMtxUXGcb7XtUHBLCLu0vccTVHd-0-d024fcfcdad5b6396ef1823bfd1b3cff)
其中,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=1739185419-0zqQ10uBA7Rq9MmztOiRzVndscKLnXT1-0-85861c9788316ef7a5ba65414134600d)
其中,η是学习率;是当参数为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=1739185419-uGBM2RMRmhGDhO0ByhL5fCQ4oGxfhfSf-0-3238174b0adb8c7ca8bea114c5321d68)
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=1739185419-z4UyUtWLxcnOBjWC3DiGc7qvmoAYKlhO-0-d30ad047c64b488c1681f76b27d0d4aa)