交叉熵学习
什么是交叉熵
语言模型的性能通常用交叉熵和复杂度(perplexity)来衡量。交叉熵的意义是用该模型对文本识别的难度,或者从压缩的角度来看,每个词平均要用几个位来编码。交叉熵可在神经网络(机器学习)中作为损失函数,交叉熵作为损失函数还有一个好处是***使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题***,因为学习速率可以被输出的误差所控制。
什么是信息量
一个事件发生的概率越大,则它所携带的信息量就越小,举个例子:
- 小明考试及格,对应的概率P(xA)=0.1P(xA)=0.1,信息量为I(xA)=−log(0.1)=3.3219I(xA)=−log(0.1)=3.3219;
- 小王考试及格,对应的概率P(xB)=0.999P(xB)=0.999,信息量为I(xB)=−log(0.999)=0.0014I(xB)=−log(0.999)=0.0014;
可以看出,结果非常符合直观:小明及格的可能性很低(十次考试只有一次及格),因此如果某次考试及格了(大家都会说:XXX竟然及格了!),必然会引入较大的信息量,对应的II值也较高。而对于小王而言,考试及格是大概率事件,在事件B发生前,大家普遍认为事件B的发生几乎是确定的,因此当某次考试小王及格这个事件发生时并不会引入太多的信息量,相应的II值也非常的低。