1、定义
交叉熵:度量两个概率分布间的差异性信息。在信息论中,交叉熵是表示两个概率分布p,q,其中p表示真实分布,q表示非真实分布,在相同的一组事件中,其中,用非真实分布q来表示某个事件发生所需要的平均比特数。
KL散度:两个概率分布P和Q差别的非对称性的度量,也称为相对熵。用来度量使用基于Q的分布来编码服从P的分布的样本所需的额外的平均比特数。典型情况下,P表示数据的真实分布,Q表示数据的理论分布、估计的模型分布、或P的近似分布。
KL散度大于等于0,可以看做两个分布 p(x) 和 q(x)之间不相似程度的度量,越不相似,编码额外比特数越多。
最大似然:Maximum Likelihood Estimation,MLE。也称极大似然估计,是用来估计一个概率模型的参数的一种方法
CTC(Connectionist Temporal Classification):Alex Graves等人ICML 2006提出的一种端到端的RNN训练方法
目标:用来解决输入序列和输出序列难以一一对应的问题‘
方法:给定一个输入X,CTC可以对所有可能的Y计算P(Y|X)概率,从而推断最可能的输出或者计算某个Y的概率。
特点:
a、CTC扩展了标签集合,添加空元素。
b、无需数据对齐处理,即可得到预测序列。
c、目标函数就是 最大化 所有正确的预测序列的概率和。
2、交叉熵和KL散度
以维基百科中离散函数为例,
熵的定义:
结论:交叉熵 = 熵 + 相对熵
H(p)与模型参数无关,可以视为常数,最小化KL距离等价于最小化交叉熵
3、交叉熵和最大似然
定义问题:
似然函数:
最大似然:
交叉熵:使用Q分布(预测)对P分布(真实)进行编码的最小比特数
结论:最小化交叉熵,和最小化负对数似然是等价的
4、KL散度与最大似然
由第2节可知:
交叉熵 = 熵 + 相对熵
H(p, q) = H(p) + Dkl(p || q)
H(p)与模型参数,最小化交叉熵等价于最小化KL散度
由第3节可知:
最小化交叉熵,和最小化负对数似然
因此。得出结论:
最小化交叉熵、最小化KL散度、最小化负对数似然函数,三者等价
5、CTC loss和最大似然
CTC目标是全部路径的组合概率总和最大,其损失函数对应为负对数似然最小,本质上还是最大似然的思想。