学习RNN中产生的几个概念性疑问和解答

  1. 通常使用的损失函数——似然函数,为什么要加负对数取做负对数似然函数?
    (我以前一直说使用的是交叉熵,现在想想其实并不准确,从参数估计的角度来看,怎么也是似然函数对吧?)

    原因主要两点:

    1. 如果假设条件是独立同分布,那么似然函数往往是连乘的形式,这样子求偏导数,不容易;通过取对数的形式将连乘变为求和。
    2. 概率值是小数,多个连乘的情况下,容易造成下溢

    参考链接

  2. 负对数似然函数与交叉熵的关联是什么?
    似然用来描述已知随机变量输出结果时,未知参数可能取值的概率。
    在损失函数这个背景下,似然函数的扩展意义:衡量当前模型参数对于已知样本集的解释情况。如果从多分类的角度来说,也就是,在已知样本最终类别label的情况下,计算以你的预测值predict为参数的观测值的似然度。

    那如果是如上述黑体所说,你这个观测的模型是什么呢?
    显然就是个简单的多项分布。(注意这是有模型的)

    那什么是多项分布?,阅读参考链接1或者2,从伯努利分布(两点分布)扩展到二项分布扩展到多项分布(从扔硬币到扔骰子)。

    单次观测下的多项分布:
    学习RNN中产生的几个概念性疑问和解答
    其中,C代表类别数。p代表向量形式的模型参数,即各个类别的发生概率,如p=[0.1, 0.1, 0.7, 0.1],则p1=0.1, p3=0.7等。即,多项式分布的模型参数就是各个类别的发生概率!x代表one-hot形式的观测值,如x=类别3,则x=[0, 0, 1, 0]。xi代表x的第i个元素,比如x=类别3时,x1=0,x2=0,x3=1,x4=0。再取个对数加负号就和我们上述所说的负对数似然相同了。
    学习RNN中产生的几个概念性疑问和解答

    如果加上log的话变成:
    学习RNN中产生的几个概念性疑问和解答
    这个形式和交叉熵实际上是相同的。
    交叉熵是这样说的:
    对于某种分布的随机变量X~p(x), 有一个模型q(x)用于近似p(x)的概率分布,则分布X与模型q之间的交叉熵即:
    学习RNN中产生的几个概念性疑问和解答
    这里X的分布模型即样本集label的真实分布模型,这里模型q(x)即想要模拟真实分布模型的机器学习模型。可以说交叉熵是直接衡量两个分布,或者说两个model之间的差异。而似然函数则是解释以model的输出为参数的某分布模型对样本集的解释程度。因此,可以说这两者是“同貌不同源”,但是“殊途同归”啦。
    参考链接1 参考链接2

  3. 似然函数和概率函数是一个东西吗?
    从某个角度来说是一个东西,一个函数从两个角度去看。
    学习RNN中产生的几个概念性疑问和解答
    参考链接

部分转载自【夕小瑶的卖萌屋】,听说每一个想学机器学习的人到这里都停不下来了~