极大似然估计,通俗理解来说,就是我既然能抽出这些样本,那么这些样本就是最有可能被抽出的那些样本(具有最大概率),所有我将概率公式尽量最大化,的出来的www就是最优的www
例如还是这个公式:
t=wx+b+εt=wx+b+\varepsilont=wx+b+ε

其中ε\varepsilonε是一个服从正态分布的误差,这样的话,ttt就符合N(y,δ2)N(y, \delta^2)N(y,δ2)的分布。我们只要设法最大化样本(这里样本自然是yyy)的概率公式就可以了。

这是极大似然估计的操作函数(特别体现了独立同分布,这里必然是高斯分布):
P(y)=∏i=1nP(yi∣xi)=(12πδ)ne−12δ2∑i=1n(yi−wTxi)2=(12πδ)ne−12δ2(y−wTX)T(y−wTX)P(y)=\prod_{i=1}^nP(y_i|x_i)\\ =(\frac{1}{\sqrt{2}\pi\delta})^ne^{\frac{-1}{2\delta^2}\sum^n_{i=1}(y_i-\textbf w^T\textbf x_i)^2}\\ =(\frac{1}{\sqrt{2}\pi\delta})^ne^{\frac{-1}{2\delta^2}(\textbf y-\textbf w^T\textbf X)^T(\textbf y-\textbf w^T\textbf X)}P(y)=i=1nP(yixi)=(2 πδ1)ne2δ21i=1n(yiwTxi)2=(2 πδ1)ne2δ21(ywTX)T(ywTX)

取对数,有
log⁡Pw(y)=log⁡(12πδ)n+−12δ2+(y−wTX)T(y−wTX)=log⁡(12πδ)n+−12δ2+wTXTXw−2wXy+yTy\log P_w(y)=\log {(\frac{1}{\sqrt{2}\pi\delta})^n}+\frac{-1}{2\delta^2}+(\textbf y-\textbf w^T\textbf X)^T(\textbf y-\textbf w^T\textbf X)\\ =\log {(\frac{1}{\sqrt{2}\pi\delta})^n}+\frac{-1}{2\delta^2}+\textbf w^T\textbf X^T\textbf X\textbf w-2\textbf w\textbf X\textbf y+\textbf y^T\textbf ylogPw(y)=log(2 πδ1)n+2δ21+(ywTX)T(ywTX)=log(2 πδ1)n+2δ21+wTXTXw2wXy+yTy

求导,让其等于0,有
2XTXw−2XTy=0w=(XTX)−1XTy2\textbf X^T\textbf X\textbf w-2\textbf X^T\textbf y=0\\ \textbf w=(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf y2XTXw2XTy=0w=(XTX)1XTy

与最小二乘法一模一样,得解。

w\textbf ww确定后,实际上整个式子也确定了,那么δ\deltaδ能求出来吗?实际上不行的,这两者风马牛不相及,这是我们可以看到,δ\deltaδ只是表示了数据的有效程度。

ϑLϑδ=−Nδ+1δ3∑n=1N(yn−xTw^)=0δ^2=1N∑n=1N(yn−xTw^)2=1N(y−Xw^)T(y−Xw^)=1N(yTy−2yTXw^+w^TXTXw^)=1N(yTy−yTXw^)\frac{\vartheta L}{\vartheta \delta}=-\frac{N}{\delta}+\frac{1}{\delta^3}\sum^N_{n=1}(y_n-x^T\widehat{w})=0\\ \widehat{\delta}^2=\frac{1}{N}\sum^N_{n=1}(y_n-x^T\widehat{w})^2\\ =\frac{1}{N}(\textbf y-\textbf X\widehat{\textbf w})^T(\textbf y-\textbf X\widehat{\textbf w})\\ =\frac{1}{N}(\textbf y^T\textbf y-2\textbf y^T\textbf X\widehat{\textbf w}+\widehat{\textbf w}^T\textbf X^T\textbf X\widehat{\textbf w})\\ =\frac{1}{N}(\textbf y^T\textbf y-\textbf y^T\textbf X\widehat{\textbf w})ϑδϑL=δN+δ31n=1N(ynxTw )=0δ 2=N1n=1N(ynxTw )2=N1(yXw )T(yXw )=N1(yTy2yTXw +w TXTXw )=N1(yTyyTXw )

最后用w^=(XTX)−1XTy\widehat{\textbf w}=(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf yw =(XTX)1XTy化简了一下。δ\deltaδ变量就是简单的均方差误差。而均方误差(方差)正好也表示了数据的有效程度。

w^\widehat{\textbf w}w 是能够很好地诠释数据的唯一值还是很多这样的值(因为不同样本就有一个似然值)能做到同样的效果?

www的均值这样算
Ep(t∣X,w,δ2){w^}=∫w^p(t∣X,w,δ2)dtE_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\}=\int \widehat{w}p(t|\textbf X,w,\delta^2)dtEp(tX,w,δ2){w }=w p(tX,w,δ2)dt

带入w^=(XTX)−1XTt\widehat{\textbf w}=(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf tw =(XTX)1XTt
Ep(t∣X,w,δ2){w^}=(XTX)−1XT∫tp(t∣X,w,δ2)dt=(XTX)−1XTEp(t∣X,w,δ2){t}=(XTX)−1XTXw=wE_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\}=(\textbf X^T\textbf X)^{-1}\textbf X^T\int tp(t|\textbf X,w,\delta^2)dt\\ =(\textbf X^T\textbf X)^{-1}\textbf X^TE_{p(t|\textbf X,w,\delta^2)}\{t\}\\ =(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf X\textbf w\\ =\textbf wEp(tX,w,δ2){w }=(XTX)1XTtp(tX,w,δ2)dt=(XTX)1XTEp(tX,w,δ2){t}=(XTX)1XTXw=w

其中 ,用到了这样一个事实:正态分布的期望等于其均值Ep(t∣X,w,δ2){t}=XwE_{p(t|\textbf X,w,\delta^2)}\{t\}=\textbf X\textbf wEp(tX,w,δ2){t}=Xw,因为p(t∣X,w,δ2)=N(Xw,δ2I)p(t|\textbf X,w,\delta^2)=N(\textbf X\textbf w,\delta^2\textbf I)p(tX,w,δ2)=N(Xw,δ2I)。该结果告诉我们,逼近w^\widehat ww 的期望值是参数的真实值。也就是说估计值是无偏的,但实际情况可能更大或更小。

我们要牢记,最大似然w^\widehat{\textbf w}w 不止一个,不同的样本集就一个w^\widehat{\textbf w}w ,这也是我们求它的均值和方差的意义。

协方差矩阵能告诉我们w^\widehat{\textbf w}w 的变异性(w^\widehat{\textbf w}w 的离散程度),即它们被数据定义的好坏程度(w^\widehat{\textbf w}w 就是被数据搞出来的呀),变异性较大意味着没有被数据很好地定义,非对角线告诉参数如何协同变异,如果值很高且为正,说明增加一个值将导致其他值增大(可能会有这样的性状,毕竟之前的协方差都是一个数字),从而得到一个非常好的模型,趋于0则两参数相对独立,
cov{w^}=Ep(t∣X,w,δ2){w^w^T}−Ep(t∣X,w,δ2){w^}Ep(t∣X,w,δ2){w^}T=Ep(t∣X,w,δ2){w^w^}T−wwTcov\{\widehat{\textbf w}\}=E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\widehat{\textbf w}^T\}-E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\}E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\}^T\\ =E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\widehat{\textbf w}\}^T-\textbf w\textbf w^Tcov{w }=Ep(tX,w,δ2){w w T}Ep(tX,w,δ2){w }Ep(tX,w,δ2){w }T=Ep(tX,w,δ2){w w }TwwT

其中
Ep(t∣X,w,δ2){w^w^T}=Ep(t∣X,w,δ2){((XTX)−1XTt)((XTX)−1XTt)T}=(XTX)−1XTEp(t∣X,w,δ2){ttT}X(XTX)−1E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\widehat{\textbf w}^T\}=E_{p(t|\textbf X,w,\delta^2)}\{((\textbf X^T\textbf X)^{-1}\textbf X^T\textbf t)((\textbf X^T\textbf X)^{-1}\textbf X^T\textbf t)^T\}\\ =(\textbf X^T\textbf X)^{-1}\textbf X^TE_{p(t|\textbf X,w,\delta^2)}\{\textbf t\textbf t^T\}\textbf X(\textbf X^T\textbf X)^{-1}Ep(tX,w,δ2){w w T}=Ep(tX,w,δ2){((XTX)1XTt)((XTX)1XTt)T}=(XTX)1XTEp(tX,w,δ2){ttT}X(XTX)1

现在计算一点别的
cov{t}=δ2I=Ep(t∣X,w,δ2){ttT}−Ep(t∣X,w,δ2){t}Ep(t∣X,w,δ2){t}TEp(t∣X,w,δ2){ttT}=Ep(t∣X,w,δ2){t}Ep(t∣X,w,δ2){t}T+δ2I=Xw(Xw)T+δ2I=XwwTXT+δ2Icov\{\textbf t\}=\delta^2I=E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\textbf t^T\}-E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\}E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\}^T\\ E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\textbf t^T\}=E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\}E_{p(t|\textbf X,w,\delta^2)}\{\textbf t\}^T+\delta^2I\\ =\textbf X\textbf w(\textbf X\textbf w)^T+\delta^2I\\ =\textbf X\textbf w\textbf w^T\textbf X^T+\delta^2Icov{t}=δ2I=Ep(tX,w,δ2){ttT}Ep(tX,w,δ2){t}Ep(tX,w,δ2){t}TEp(tX,w,δ2){ttT}=Ep(tX,w,δ2){t}Ep(tX,w,δ2){t}T+δ2I=Xw(Xw)T+δ2I=XwwTXT+δ2I

带入,得
Ep(t∣X,w,δ2){w^w^T}=(XTX)−1XTXwwTXTX(XTX)−1+δ2(XTX)−1XTX(XTX)−1=wwT+δ2(XTX)−1E_{p(t|\textbf X,w,\delta^2)}\{\widehat{\textbf w}\widehat{\textbf w}^T\}=(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf X\textbf w\textbf w^T\textbf X^T\textbf X(\textbf X^T\textbf X)^{-1}\\ +\delta^2(\textbf X^T\textbf X)^{-1}\textbf X^T\textbf X(\textbf X^T\textbf X)^{-1}\\ =\textbf w\textbf w^T+\delta^2(\textbf X^T\textbf X)^{-1}Ep(tX,w,δ2){w w T}=(XTX)1XTXwwTXTX(XTX)1+δ2(XTX)1XTX(XTX)1=wwT+δ2(XTX)1

继续带入
cov{w^}=wwT+δ2(XTX)−1−wwT=δ2(XTX)−1cov\{\widehat{\textbf w}\}=\textbf w\textbf w^T+\delta^2(\textbf X^T\textbf X)^{-1}-\textbf w\textbf w^T\\ =\delta^2(\textbf X^T\textbf X)^{-1}cov{w }=wwT+δ2(XTX)1wwT=δ2(XTX)1

它是之前得到的2阶导数的海塞矩阵的负反函数(也是费舍尔信息矩阵的负反函数,实际上化简也就是XTX\textbf X^T\textbf XXTX,告诉我们数据能够给我们提供多少关于一个特定参数(对角元素)或参数对(非对角元素)的信息(越是负值,信息所呈现的信息量越大)。直观地讲,如果数据噪声非常大,则信息量就很低。一般来说,如果信息量很大,那么数据能够提供非常准确的参数估计且w^\widehat \textbf ww 的协方差将很低(XTX)−1(\textbf X^T\textbf X)^{-1}(XTX)1,如果信息量很低,协方差将很高),该结果告诉我们,参数的确定性/不确定性直接与对数似然值的2阶导数相关。对数似然值的2阶导数告诉我们似然函数的弯曲程度。因此,低弯曲对应于参数较高的不确定性,而高弯曲对应于较低的不确定性,换句话说,我们有了一个能够告诉我们数据能够给我们多少关于参数估计的信息表达式。这说明的数据的各种信息,很有用。
每日小常识:

三种风险(误差)

通过损失函数我们只能知道模型决策函数对于单个样本点的预测能力,损失函数得到的结果越小,说明模型对于该样本预测越准确。

那么如果想知道模型对训练样本中所有的样本的预测能力应该怎么办呢?显然只需所有的样本点都求一次损失函数然后进行累加就好了。这就经验风险,所谓的 经验风险是对所有训练样本都求一次损失函数,再累加求平均。即,模型f(x)对训练样本中所有样本的预测能力,是局部概念。 经验风险越小说明模型对训练集的拟合程度越好。
Remp(f)=1N∑i=1NL(yi,f(xi))R_{emp}(f)=\frac{1}{N}\sum^N_{i=1}L(y_i,f(x_i))Remp(f)=N1i=1NL(yi,f(xi))
但是对于未知的样本效果(测试集)怎么样呢?我们知道未知的样本数据的数量是不容易确定的,所以就没有办法用所有样本损失函数的平均值的最小化这个方法,那么怎么来衡量这个模型对所有的样本(包含未知的样本和已知的训练样本)预测能力呢?用期望, 期望风险是假设X和Y服从联合分布P(X,Y),将所有期望取平均值。是对所有样本(包含未知样本和已知的训练样本)的预测能力,是全局概念。 这就是期望风险(包括离散的和连续的),而经验风险仅仅表示决策函数对训练数据集里样本的预测能力,经验风险函数是现实的,可求的;期望风险函数是理想化的,不可求的。
Rexp(f)=Ep[L(Y,f(X))]=∫x×yL(y,f(x))P(x,y)dxdyR_{exp}(f)=E_p[L(Y,f(X))]=\int_{x\times y}L(y,f(x))P(x,y)dxdyRexp(f)=Ep[L(Y,f(X))]=x×yL(y,f(x))P(x,y)dxdy
理想的模型(决策)函数应该是让期望风险最小化,但是期望风险函数往往是不可得到的(毕竟是测试集),那就用局部最优的代替全局最优这个思想吧。这就是结构风险最小化的理论基础。
结构风险是对经验风险和期望风险的折中,在经验风险函数后面加一个正则化项(惩罚项),是一个大于0的系数λ\lambdaλ。J(f)表示的是模型的复杂度。
Rsrm(f)=1N∑i=1NL(yi,f(xi))+λJ(f)R_{srm}(f)=\frac{1}{N}\sum^N_{i=1}L(y_i,f(x_i))+\lambda J(f)Rsrm(f)=N1i=1NL(yi,f(xi))+λJ(f)
相比于经验风险,结构风险多了一个惩罚项,其中是一个λ\lambdaλ是一个大于0的系数。J(f)表示的是是模型f的复杂度(往往用wTw\textbf w^T\textbf wwTw表示,本身就是参数,参数平方和正好可以表示)。

这其实也叫做正则化,正则化就是约束www,不要让它变得太奇怪(有比较大的就会非常长),方法是wTw<λw^Tw<\lambdawTw<λ差不多的,也就是结构风险的后面附加项(λwTw\lambda w^TwλwTw)(λ\lambdaλ被称为正则化参数,wTww^TwwTw被称为正则化项),在后面加上这个项就叫正则化技术,也叫平滑项,让每个www都尽可能小,整个曲线也会越平滑。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐