softmax与交叉熵

一、期望(Expect)

随机变量的均值: E ( x ) = x 1 ∗ P ( x 1 ) + x 2 ∗ P ( x 2 ) + … + x n ∗ P ( x n ) E(x)=x_1*P(x_1)+x_2*P(x_2)+…+x_n*P(x_n) E(x)=x1P(x1)+x2P(x2)++xnP(xn)
如果变量x满足均匀分布,那么期望=均值

二、熵(Entropy)

信息量: I ( x 0 ) = − l o g ( P ( x 0 ) ) I(x_0)=-log(P(x_0)) I(x0)=log(P(x0))
概率越小,信息量越大

熵:表示所有信息量的期望
熵: H ( x ) = − ∑ i = 1 n P ( x i ) l o g ( P ( x i ) ) H(x)=-\sum_{i=1}^n P(x_i)log(P(x_i)) H(x)=i=1nP(xi)log(P(xi))
log的底一般取2

特例
二项分布 H ( x ) = − ∑ i = 1 n P ( x i ) l o g ( P ( x i ) ) = − P ( x ) l o g ( P ( x ) ) − ( 1 − P ( x ) ) l o g ( 1 − P ( x ) ) H(x)=-\sum_{i=1}^nP(x_i)log(P(x_i))=-P(x)log(P(x))-(1-P(x))log(1-P(x)) H(x)=i=1nP(xi)log(P(xi))=P(x)log(P(x))(1P(x))log(1P(x))

三、相对熵(KL散度)

KL散度:同一随机变量x,有两个单独的概率分布P(x)和Q(x),用KL散度衡量这两个分布之间的差异
D K L ( P ∣ ∣ D ) = ∑ i = 1 n P ( x i ) l o g ( P ( x i ) Q ( x i ) ) D_{KL}(P||D)=\sum_{i=1}^nP(x_i)log(\frac{P(x_i)}{Q(x_i)}) DKL(P∣∣D)=i=1nP(xi)log(Q(xi)P(xi))
KL散度越小,表示P和Q的分布约接近。
理解:P可以理解为标签,Q可以理解为预测值。

四、交叉熵(Cross entropy)

对KL散度进行变形
在这里插入图片描述
由上式可以看出前半部分就是熵,P(x)一旦确定就是一个定值,一般不需要优化;后半部分就是交叉熵,所以在做交叉熵损失时,值越小代表预测值越接近真实值。
交叉熵: H ( P , Q ) = − ∑ i = 1 n P ( x i ) l o g ( Q ( x i ) ) H(P,Q)=-\sum_{i=1}^nP(x_i)log({Q(x_i)}) H(P,Q)=i=1nP(xi)log(Q(xi))

五、Softmax

softmax: a j = e Z j ∑ i = 1 k e Z k a_j=\frac{e^{Z_j}}{\sum_{i=1}^ke^{Z_k}} aj=i=1keZkeZj
Z j Z_j Zj表示第j个神经元的输入
a j a_j aj表示第j个神经元的输出
神经元的输出(概率)=每个神经元的输入/所有神经元的输入之和

简单说一下为什么softmax是这种形式,因为概率有两个性质:非负性和总体之和为1。 e x e^x ex让负无穷到正无穷的预测结果x映射为正数,再做归一化处理就将其转化为概率了。

将softmax代入交叉熵
H ( P , Q ) = − ∑ i = 1 n P ( x i ) l o g ( Q ( x i ) ) = − ∑ i = 1 n y i l o g a i = − ∑ i = 1 n y i l o g ( s o f t m a x ) H(P,Q)=-\sum_{i=1}^nP(x_i)log({Q(x_i)})=-\sum_{i=1}^ny_iloga_i=-\sum_{i=1}^ny_ilog(softmax) H(P,Q)=i=1nP(xi)log(Q(xi))=i=1nyilogai=i=1nyilog(softmax)
y i y_i yi代表标签

六、One-hot编码

One-hot编码就是将分类整数值映射到二进制向量
对一个几分类问题,二进制向量长度为几:
black–>0–>[1,0]  black是第0个类,对应到二进制向量第0个位置为1
white–>1–>[0,1]  white是第1个类,对应到二进制向量第1个位置为1
……
对一个分类问题
交叉熵: H = − ∑ i = 1 n y i l o g ( a i ) H=-\sum_{i=1}^ny_ilog(a_i) H=i=1nyilog(ai)
a i a_i ai是预测类别的概率, a i ∈ [ 0 , 1 ] a_i\in[0,1] ai[0,1]
y i y_i yi是0或1;
y=0时,H=0;y=1时,a越大,H越小

不定期更新,如有错误,欢迎指教!!!

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值