多分类问题
神经网络输出多个类型,每个类型需要判断正确的概率,这个时候logisticregression就不行了,我们就需要新的函数来解决这个问题,也就是softmax,称归一化指数函数。
softmax
公式
δ ( z ) = exp z i ∑ j = 1 m exp z j , i = 1 , . . . , m \delta(z) ={ {\exp^{z_i}}\over{ \sum_{j=1}^m \exp^{z_j}}},i=1,...,m δ(z)=∑j=1mexpzjexpzi,i=1,...,m
例子
三个输出为y1=0.1,y2=0.3y3=0.6
softmax(y1)= e 0.1 e 0.1 + e 0.3 + e 0.6 e^{0.1}\over{e^{0.1}+e^{0.3}+e^{0.6}} e0.1+e0.3+e0.6e0.1=0.26
softmax(y2)= e 0.3 e 0.1 + e 0.3 + e 0.6 e^{0.3}\over{e^{0.1}+e^{0.3}+e^{0.6}} e0.1+e0.3+e0.6e0.3=0.32
softmax(y3)= e 0.6 e 0.1 + e 0.3 + e 0.6 e^{0.6}\over{e^{0.1}+e^{0.3}+e^{0.6}} e0.1+e0.3+e0.6e0.6=0.43
得到每个分类的概率,求loss,需要用交叉熵
交叉熵
什么是交叉熵
先从几个概念入手
信息熵
它是表示随机变量不确定的度量,是对所有可能发生的事件产生的信息量的期望。
一条信息的信息量大小和它的不确定性有直接的关系。
公式
𝐻(𝑋)= - ∑ i = 1 n p ( x i ) log p ( x i ) \sum_{i=1}^np(x_i) \log p(x_i) ∑i=1np(xi)logp(xi)
例子
中国和巴西踢球,之前64场,中国赢一场(貌似不太可能)。
中国赢球概率: − l o g 2 63 64 -log_2{63 \over