我是靠谱客的博主 烂漫小鸭子,最近开发中收集的这篇文章主要介绍贝叶斯正则化在神经网络拟合中的通俗理解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

机器学习中防止过拟合的方法:3种

增加数据集
正则化<多用L2正则化>
Dropout<深度学习中常采用的一种正则化方法>

这里简单解释一下Dropout方法:Dropout可以简单地理解为在DNNs训练的过程中,以概率P丢弃部分神经元,即:使得被丢弃的神经元输出为0。使用时要注意Dropout率的选择(0.01,0.25,0.5)

正则化:通过修改损失函数防止过拟合
Dropout:通过修改神经网络本身来防止过拟合

************************ 分割线简单说下损失函数,需要了解更具体内容请参照百度 *****************************

“损失函数”又称为“代价函数”,其表征了将随机事件或随机变量的取值映射为非负实数,以表示该随机事件的“风险”或“损失”的函数
应用:
统计学&机器学习中:作为模型的参数估计;
宏观经济学中:用于风险管理和决策;
控制理论中:用于最优控制理论
应用中,通过 最小化损失函数 来求解和评估模型。

********************************** 损失函数结束的标志 **************************************************

贝叶斯正则化

贝叶斯分析(前方高能 公式要出现了 不过很简单)

P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B)=frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)
P ( A ∣ B ) P(A|B) P(AB):后验概率 P ( x ∣ D , α , β , M ) P(boldsymbol{x}|D,alpha,beta,M) P(xD,α,β,M)
P ( B ∣ A ) P(B|A) P(BA):已知A发生的条件下,B发生的概率 P ( D ∣ x , β , M ) P(D|boldsymbol{x},beta,M) P(Dx,β,M)
P ( A ) P(A) P(A):先验概率 P ( x ∣ α , M ) P(boldsymbol{x}|alpha,M) P(xα,M)
P ( B ) P(B) P(B):B的边缘概率<正则化中用作归一化因子> P ( D ∣ α , β , M ) P(D|alpha,beta,M) P(Dα,β,M)

第一层贝叶斯框架

P ( x ∣ D , α , β , M ) = P ( D ∣ x , β , M ) P ( x ∣ α , M ) P ( D ∣ α , β , M ) P(boldsymbol{x}|D,alpha,beta,M)=frac{P(D|boldsymbol{x},beta,M)P(boldsymbol{x}|alpha,M)}{P(D|alpha,beta,M)} P(xD,α,β,M)=P(Dα,β,M)P(Dx,β,M)P(xα,M)
x boldsymbol{x} x:包含网络所有权值偏置值的向量
D D D训练数据集
α alpha α β beta β:与密度函数相关的参数
M M M:代表了所选取的 网络结构,即模型

P ( D ∣ x , β , M ) P(D|boldsymbol{x},beta,M) P(Dx,β,M):已知前一次训练所得的权值 x boldsymbol{x} x,参数 β beta β,网络模型 M M M的情况下,训练数据 D D D的概率密度

P ( x ∣ α , M ) P(boldsymbol{x}|alpha,M) P(xα,M):该项为模型中的先验项,即正则项,表征了权值 x boldsymbol{x} x的概率密度。而前一次训练所获得的权值 x boldsymbol{x} x是在已知网络模型 M M M和参数 α alpha α的前提下获得的。
正则化表示对某一问题加以先验的限制或约束,以达到某种特定目的的一种手段或操作
这里的正则项可以是 L 1 L1 L1范数 L 2 L2 L2范数
L 1 L1 L1范数相当于加入了一个Laplacean先验项,可以保证模型的稀疏性,即某些参数等于0。
L 2 L2 L2范数相当于加入了一个Gaussian先验项,可以保证模型的稠密性,即参数的值不会太大或者太小,比较集中。

P ( D ∣ α , β , M ) P(D|alpha,beta,M) P(Dα,β,M):训练数据 D D D的边缘概率,被称为证据,是个归一化因子。该项与 x boldsymbol{x} x无关,故在最大化后验概率 P ( x ∣ D , α , β , M ) P(boldsymbol{x}|D,alpha,beta,M) P(xD,α,β,M)时并不关心 P ( D ∣ α , β , M ) P(D|alpha,beta,M) P(Dα,β,M),但是 P ( D ∣ α , β , M ) P(D|alpha,beta,M) P(Dα,β,M)估计参数 α alpha α β beta β时扮演了很重要的角色。



解释完每一项的意义后,接下来该求解了(下面的公式慢慢分析,不要心急)

P ( D ∣ x , β , M ) = 1 Z D ( β ) e x p ( − β E D ) P(D|boldsymbol{x},beta,M)=frac{1}{Z_{_D}(beta)}exp(-beta E_{_D}) P(Dx,β,M)=ZD(β)1exp(βED)
β = 1 / ( 2 σ ϵ 2 ) beta={1}/{(2sigma_epsilon^2)} β=1/(2σϵ2) σ ϵ 2 sigma_epsilon^2 σϵ2 ϵ q epsilon_q ϵq 中每个元素的方差。

Z D ( β ) = ( 2 π σ ϵ 2 ) N / 2 = ( π / β ) N / 2 Z_{_D}(beta)=(2pisigma_epsilon^2 )^{N/2}=(pi/beta)^{N/2} ZD(β)=(2πσϵ2)N/2=(π/β)N/2;其中 N N N的取值为 Q × S M Qtimes S^M Q×SM Q Q Q:训练数据集上的目标数, S M S^M SM中的每一个元素分别表示了 F F F对第 m m m 层中净输入的第 i i i 个元素变化的敏感度。具体内容将在文末标注。

E D E_{_D} ED F ( x ) = E D = ∑ q = 1 Q ( t q − a q ) T ( t q − a q ) F(boldsymbol{x})=E_{_D}=sumlimits_{q=1}^Q(boldsymbol{t}_q-boldsymbol{a}_q)^T(boldsymbol{t}_q-boldsymbol{a}_q) F(x)=ED=q=1Q(tqaq)T(tqaq)中所定义的网络在训练集上的误差平方和,其中 t q boldsymbol{t}_q tq 表示网络的目标输出,即真值; a q boldsymbol{a}_q aq 表示经过网络拟合的输出。

该项可称作似然函数,是一个关于网络权值 x boldsymbol{x} x的函数,表述了当网络权值 x boldsymbol{x} x为什么样的组合时,训练数据 D D D的概率密度 P ( D ∣ x , β , M ) P(D|boldsymbol{x},beta,M) P(Dx,β,M)可以最大。
为了获得使得 P ( D ∣ x , β , M ) P(D|boldsymbol{x},beta,M) P(Dx,β,M)最大的网络权值 x boldsymbol{x} x,我们在这里提出最大似然法则。若这个似然函数为一个高斯函数时,当 E D E_{_D} ED取得最小值时, P ( D ∣ x , β , M ) P(D|boldsymbol{x},beta,M) P(Dx,β,M)取得最大值。因此可以假设训练集 D D D含有高斯噪声,这样可以使用统计学的方法(极大似然估计)推出标准的误差平方和性能指标。


P ( x ∣ α , M ) = 1 Z W ( α ) e x p ( − α E W ) P(boldsymbol{x}|alpha,M)=frac{1}{Z_{_W}(alpha)}exp(-alpha E_{_W}) P(xα,M)=ZW(α)1exp(αEW)
α = ( 1 ) / ( 2 σ w 2 ) , σ w 2 alpha=(1)/(2sigma_w^2),sigma_w^2 α=(1)/(2σw2)σw2是每个权值的方差

Z W ( α ) = ( 2 π σ w 2 ) n / 2 = ( π / α ) n / 2 , n Z_{_W}(alpha)=(2pisigma_w^2 )^{n/2}=(pi/alpha)^{n/2},n ZW(α)=(2πσw2)n/2=(π/α)n/2n 是网络中权值和偏置值的数量。

E W = ∑ i = 1 n x i 2 E_{_W}=sumlimits_{i=1}^nx_i^2 EW=i=1nxi2 是权值的平方和

该项称为先验密度,是一个正则项,体现了在收集数据前我们对网络权值 x boldsymbol{x} x 的了解。
贝叶斯正则化即要对该问题加以先验的限制或约束,以达到我们需要的目的的一种手段或操作。
这里的正则项可以是 L 1 L1 L1范数 L 2 L2 L2范数
L 1 L1 L1范数相当于加入了一个 L a p l a c e a n Laplacean Laplacean先验项,可以保证模型的稀疏性,即某些参数等于0。
L 2 L2 L2范数相当于加入了一个 G a u s s i a n Gaussian Gaussian先验项,可以保证模型的稠密性,即参数的值不会太大或者太小,比较集中。

此处我们假设权值是以0为中心的较小值,因此选择了一个零均值的高斯先验密度


P ( D ∣ α , β , M ) P(D|alpha,beta,M) P(Dα,β,M)是一个归一化项,与 x boldsymbol{x} x 无关,用来估计参数 α , β alpha,beta αβ
综上,可以将第一层贝叶斯框架写成如下的形式:
P ( x ∣ D , α , β , M ) = 1 Z D ( β ) 1 Z W ( α ) e x p ( − ( β E D + α E W ) ) 归 一 化 因 子 = 1 Z F ( α , β ) e x p ( − F ( x ) ) P(boldsymbol{x}|D,alpha,beta,M)=frac{frac{1}{Z_{_D}(beta)}frac{1}{Z_{_W}(alpha)}exp(-(beta E_{_D}+alpha E_{_W}))}{归一化因子} =frac{1}{Z_{_F}(alpha,beta)}exp(-F(boldsymbol{x})) P(xD,α,β,M)=ZD(β)1ZW(α)1exp((βED+αEW))=ZF(α,β)1exp(F(x))
其中, F ( x ) = β E D + α E W , Z F ( α , β ) = Z D ( β ) Z W ( α ) 是 关 于 α 和 β 的 函 数 ( 与 x 无 关 ) F(boldsymbol{x})=beta E_{_D}+alpha E_{_W},Z_{_F}(alpha,beta)=Z_{_D}(beta)Z_{_W}(alpha) 是关于alpha 和beta 的函数(与boldsymbol x 无关) F(x)=βED+αEWZF(α,β)=ZD(β)ZW(α)αβ(x)

为求权值最可能的取值,我们需要最大化后验密度 P ( x ∣ D , α , β , M ) P(boldsymbol{x}|D,alpha,beta,M) P(xD,α,β,M)。这相当于最小化正则性指标 F ( x ) = β E D + α E W F(boldsymbol{x})=beta E_{_D}+alpha E_{_W} F(x)=βED+αEW
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

估计参数 α , β alpha,beta αβ 于是便引出了第二层贝叶斯框架
第二层贝叶斯框架
引言

第一层贝叶斯框架中给参数 α , β alpha,beta αβ提供了这样的物理意义:

参数 β beta β 与测量噪声 ϵ q epsilon_q ϵq 的方差 σ ϵ 2 sigma_epsilon^2 σϵ2 成反比。
β ⇓ , σ ϵ 2 ⇑ , α / β ⇑ , x ⇓ , betaDownarrow ,sigma_epsilon^2Uparrow,alpha/betaUparrow,boldsymbol{x}Downarrow, βσϵ2α/βx此时网络函数变得平滑。

参数 α alpha α 与网络权值 x boldsymbol{x} x先验分布的方差 σ w 2 sigma_w^2 σw2 成反比。
α ⇓ , σ w 2 ⇑ , α / β ⇓ , x ⇑ , alphaDownarrow,sigma_w^2Uparrow,alpha/betaDownarrow,boldsymbol{x}Uparrow, ασw2α/βx此时网络函数可以具有更多的变化。这是一个结构为1-20-1的神经网络。图中细曲线表示是实际函数,空心圆圈为噪声数据,粗曲线代表训练好的神经网络的响应,黑色圆点为在训练数据点上的网络响应。图中可以看出,alpha/beta=0,01时,网络能最好地拟合实际函数,比率大于该值时,响应过于平滑,比率小于该值时,网络过拟合(左上)

定义使 后验密度 最大化的权值为 x M P boldsymbol{x}^{MP} xMP,即我们要寻找的最可能的取值
定义使 似然函数 最大化的权值为 x M L boldsymbol{x}^{ML} xML


正文:第二层贝叶斯框架(估计 α alpha α β beta β

P ( α , β ∣ D , M ) = P ( D ∣ α , β , M ) P ( α , β ∣ M ) P ( D ∣ M ) P(alpha,beta|D,M)=frac{P(D|alpha,beta,M)P(alpha,beta|M)}{P(D|M)} P(α,βD,M)=P(DM)P(Dα,β,M)P(α,βM)


未完待续…

最后

以上就是烂漫小鸭子为你收集整理的贝叶斯正则化在神经网络拟合中的通俗理解的全部内容,希望文章能够帮你解决贝叶斯正则化在神经网络拟合中的通俗理解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部