发布时间:2023-07-27 09:30
计算机视觉的问题是根据视觉数据 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)