计算机视觉的问题是根据视觉数据 x \bold{x} x 推测现实状态 w \bold{w} w 的过程
模型分为两种
根据视觉数据求现实状态概率分布 P r ( w ∣ x ) Pr(\bold{w}|\bold{x}) Pr(w∣x) 的判别模型。
根据现实状态求视觉数据概率分布 P r ( x ∣ w ) Pr(\bold{x}|\bold{w}) Pr(x∣w) 的生成模型。
判别模型:
我们设正态分布函数 P r ( w ∣ x , θ ) = N o r m w [ μ , σ 2 ] Pr(w|x,\bm{\theta})=Norm_w[\mu,\sigma^2] Pr(w∣x,θ)=Normw[μ,σ2]。其中,参数 μ \mu μ 为均值, σ 2 \sigma^2 σ2 为方差。它们决定了函数的形状,代入自变量 w w w即可求得 w w w处的概率密度。
若假定均值 μ \mu μ和 x x x成线性关系 μ = ϕ 0 + ϕ 1 x \mu=\phi_0+\phi_1x μ=ϕ0+ϕ1x,则 P r ( w ∣ x , θ ) = N o r m w [ ϕ 0 + ϕ 1 x , σ 2 ] Pr(w|x,\bm{\theta})=Norm_w[\phi_0+\phi_1x,\sigma^2] Pr(w∣x,θ)=Normw[ϕ0+ϕ1x,σ2],这种方法称为线性回归。那么模型的参数集 θ = { ϕ 0 , ϕ 1 , σ 2 } \bm{\theta}=\{\phi_0,\phi_1,\sigma^2\} θ={ϕ0,ϕ1,σ2},学习算法的任务就是利用数据集 { x i , w i } i = 1 I \{x_i,w_i\}^I_{i=1} {xi,wi}i=1I进行拟合,求 θ \bm{\theta} θ 。求好之后推理算法的任务很简单,就是把新数据 x x x 代入,求得 w w w 的概率分布。
判别模型的图像,颜色深度代表 P r ( w ∣ x ) Pr(w|x) Pr(w∣x)的大小
生成模型:
生成模型正好相反,若仍采用正态分布+线性回归,则设 P r ( x ∣ w , θ ) = N o r m x [ ϕ 0 + ϕ 1 w , σ 2 ] Pr(x|w,\bm{\theta})=Norm_x[\phi_0+\phi_1w,\sigma^2] Pr(x∣w,θ)=Normx[ϕ0+ϕ1w,σ2] 。同理用数据拟合求得 θ = { ϕ 0 , ϕ 1 , σ 2 } \bm{\theta}=\{\phi_0,\phi_1,\sigma^2\} θ={ϕ0,ϕ1,σ2}。
假设 w w w 也满足正态分布, P r ( w ) = N o r m w [ μ p , σ p 2 ] Pr(w)=Norm_w[\mu_p,\sigma_p^2] Pr(w)=Normw[μp,σp2],用数据 { w i } i = 1 I \{w_i\}^I_{i=1} {wi}i=1I求出 θ p = { μ p , σ p 2 } \bm{\theta_p}=\{\mu_p,\sigma_p^2\} θp={μp,σp2}。
求好后,推理算法用贝叶斯定理求新数据 x x x 对应 w w w 的概率分布:
P r ( w ∣ x ) = P r ( x ∣ w ) P r ( w ) P r ( x ) Pr(w|x)=\frac{Pr(x|w)Pr(w)}{Pr(x)} Pr(w∣x)=Pr(x)Pr(x∣w)Pr(w)
判别模型:
因为 w w w 只能取0或1,我们可以使用伯努利分布。它的唯一参数 λ \lambda λ表示 w w w取1的概率。 P r ( w = 1 ) = λ Pr(w=1)=\lambda Pr(w=1)=λ。
同示例1,我们设 λ = f ( x ) \lambda=f(x) λ=f(x)。由于概率 λ ∈ [ 0 , 1 ] \lambda\in[0,1] λ∈[0,1],我们先把x输入线性函数(结果属于R),再把结果给到sigmoid函数(结果在0和1之间):
λ = B e r n w [ s i g [ ϕ 0 + ϕ 1 x ] ] = B e r n w [ 1 1 + e x p [ − ϕ 0 − ϕ 1 x ] ] ] \lambda=Bern_w[sig[\phi_0+\phi_1x]]=Bern_w[\frac{1}{1+exp[-\phi_0-\phi_1x]} ]] λ=Bernw[sig[ϕ0+ϕ1x]]=Bernw[1+exp[−ϕ0−ϕ1x]1]]
这个操作称为逻辑回归。
这个模型的参数集合 θ = { ϕ 0 , ϕ 1 } \bm{\theta}=\{\phi_0,\phi_1\} θ={ϕ0,ϕ1}
生成模型:
不多解释。
P r ( w ∣ , θ ) = N o r m x [ μ w , σ w 2 ] Pr(w|,\bm{\theta})=Norm_x[\mu_w,\sigma_w^2] Pr(w∣,θ)=Normx[μw,σw2]
由于 w w w只有2个值,可以直接写成:
P r ( w = 0 ∣ , θ ) = N o r m x [ μ 0 , σ 0 2 ] Pr(w=0|,\bm{\theta})=Norm_x[\mu_0,\sigma_0^2] Pr(w=0∣,θ)=Normx[μ0,σ02]
P r ( w = 1 ∣ , θ ) = N o r m x [ μ 1 , σ 1 2 ] Pr(w=1|,\bm{\theta})=Norm_x[\mu_1,\sigma_1^2] Pr(w=1∣,θ)=Normx[μ1,σ12]
先验概率:
P r ( w ) = B e r n w [ λ p ] Pr(w)=Bern_w[\lambda_p] Pr(w)=Bernw[λp]
学习算法计算参数集合:
θ = { μ 0 , σ 0 , μ 1 , σ 1 , λ p } \bm{\theta}=\{\mu_0,\sigma_0,\mu_1,\sigma_1,\lambda_p\} θ={μ0,σ0,μ1,σ1,λp}
推理算法用贝叶斯:
P r ( w ∣ x ) = P r ( x ∣ w ) P r ( w ) Σ w = 0 1 P r ( x ∣ w ) P r ( w ) Pr(w|x)=\frac{Pr(x|w)Pr(w)}{\Sigma_{w=0}^1Pr(x|w)Pr(w)} Pr(w∣x)=Σw=01Pr(x∣w)Pr(w)Pr(x∣w)Pr(w)