栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

周学习总结

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

周学习总结

EM算法 高斯混合模型

随机变量 X 满足如下概率分布:
P ( X ; θ ) = ∑ j = 1 k α j φ ( X ; θ j ) P(X ; theta)=sum_{j=1}^{k} alpha_{j} varphileft(X ; theta_{j}right) P(X;θ)=j=1∑k​αj​φ(X;θj​)
其中 α j alpha_{j} αj​ 是满足 α j > 0 alpha_{j}>0 αj​>0且 ∑ j = 1 k α j = 1 sum_{j=1}^{k} alpha_{j}=1 ∑j=1k​αj​=1的系数; φ ( X ; θ j ) varphileft(X ; theta_{j}right) φ(X;θj​)是参数 θ j = ( μ j , σ j 2 ) theta_{j}=left(mu_{j}, sigma_{j}^{2}right) θj​=(μj​,σj2​)的高斯分布密度函数。
假设 α j alpha_j αj​为随机变量 z j z_j zj​服从概率分布 z j   P ( Z ; λ ) z_j ~ P(Z; lambda) zj​ P(Z;λ),则参数 θ = { λ , μ , ∑ } theta={lambda,mu,sum} θ={λ,μ,∑}

由于样本集X的变量相互独立,因此想要找到一组参数 θ theta θ使事件发生的概率最大
arg ⁡ max ⁡ θ ^ P ( X ; θ ) = arg ⁡ max ⁡ θ ^ ∏ i = 1 m ∑ j = 1 n P ( X = x i , Z = z j ; θ ) = arg ⁡ max ⁡ θ ^ ∏ X ∑ Z P ( X , Z ; θ ) = arg ⁡ max ⁡ θ ^ L ( θ ) begin{aligned} arg max _{hat{theta}} P(X ; theta) &=arg max _{hat{theta}} prod_{i=1}^{m} sum_{j=1}^{n} Pleft(X=x_{i}, Z=z_{j} ; thetaright) \ &=arg max _{hat{theta}} prod_{X} sum_{Z} P(X, Z ; theta) \ &=arg max _{hat{theta}} L(theta) end{aligned} argθ^max​P(X;θ)​=argθ^max​i=1∏m​j=1∑n​P(X=xi​,Z=zj​;θ)=argθ^max​X∏​Z∑​P(X,Z;θ)=argθ^max​L(θ)​
Z是函数的隐变量,通常是要求解多个概率的系数,且 ∑ j = 1 P ( Z = z j ) = 1 sum_{j=1} P(Z=z_j) = 1 ∑j=1​P(Z=zj​)=1

(1) 变换似然函数并寻找下界
对似然函数取对数,用 l o g ( ∑ i = 1 x i ) > = ∑ i = 1 l o g ( x i ) log(sum_{i=1} x_i) >= sum_{i=1} log(x_i) log(∑i=1​xi​)>=∑i=1​log(xi​)凹函数的性质求解下界
L ( θ ) = ∑ i = 1 m log ⁡ ∑ j = 1 n P ( X = x i , Z = z j ; θ ) = ∑ i = 1 m log ⁡ ∑ j = 1 n Q ( Z = z j ; θ z ) P ( X = x i , Z = z j ; θ ) Q ( Z = z j ; θ z ) ≥ ∑ i = 1 m ∑ j = 1 n Q ( Z = z j ; θ z ) log ⁡ P ( X = x i , Z = z j ; θ ) Q ( Z = z j ; θ z ) = ∑ X ∑ Z Q ( Z ; θ z ) log ⁡ P ( X , Z ; θ ) Q ( Z ; θ z ) begin{aligned} mathcal{L}(theta) &=sum_{i=1}^{m} log sum_{j=1}^{n} Pleft(X=x_{i}, Z=z_{j} ; thetaright) \ &=sum_{i=1}^{m} log sum_{j=1}^{n} Qleft(Z=z_{j} ; theta_{z}right) frac{Pleft(X=x_{i}, Z=z_{j} ; thetaright)}{Qleft(Z=z_{j} ; theta_{z}right)} \ & geq sum_{i=1}^{m} sum_{j=1}^{n} Qleft(Z=z_{j} ; theta_{z}right) log frac{Pleft(X=x_{i}, Z=z_{j} ; thetaright)}{Qleft(Z=z_{j} ; theta_{z}right)} \ &=sum_{X} sum_{Z} Qleft(Z ; theta_{z}right) log frac{P(X, Z ; theta)}{Qleft(Z ; theta_{z}right)} end{aligned} L(θ)​=i=1∑m​logj=1∑n​P(X=xi​,Z=zj​;θ)=i=1∑m​logj=1∑n​Q(Z=zj​;θz​)Q(Z=zj​;θz​)P(X=xi​,Z=zj​;θ)​≥i=1∑m​j=1∑n​Q(Z=zj​;θz​)logQ(Z=zj​;θz​)P(X=xi​,Z=zj​;θ)​=X∑​Z∑​Q(Z;θz​)logQ(Z;θz​)P(X,Z;θ)​​

E 步

高斯混合模型产生了 m 个样例,每个样例 x i x_i xi​ 的隐含类别 Z = z j Z = z_j Z=zj​ 的概率,E步即求解隐变量 z j z_j zj​的过程,先估计参数 θ = { α , μ , ∑ } theta={ alpha, mu,sum} θ={α,μ,∑}的初值,则Z的后验概率为
Q i ( Z = z j ) = P ( Z = z j ∣ X = x i ; θ ) = P ( Z = z j , X = x i ; θ ) P ( X = x i ; θ ) = P ( Z = z j , X = x i ; θ ) ∑ r = 1 k P ( Z = z r , X = x i ; θ ) = α j φ ( X = x i ; θ j ) ∑ r = 1 k α r φ ( X = x i ; θ r ) begin{aligned} Q_{i}left(Z=z_{j}right) &=Pleft(Z=z_{j} mid X=x_{i} ; thetaright) \ &=frac{Pleft(Z=z_{j}, X=x_{i} ; thetaright)}{Pleft(X=x_{i} ; thetaright)} \ &=frac{Pleft(Z=z_{j}, X=x_{i} ; thetaright)}{sum_{r=1}^{k} Pleft(Z=z_{r}, X=x_{i} ; thetaright)} \ &=frac{alpha_{j} varphileft(X=x_{i} ; theta_{j}right)}{sum_{r=1}^{k} alpha_{r} varphileft(X=x_{i} ; theta_{r}right)} end{aligned} Qi​(Z=zj​)​=P(Z=zj​∣X=xi​;θ)=P(X=xi​;θ)P(Z=zj​,X=xi​;θ)​=∑r=1k​P(Z=zr​,X=xi​;θ)P(Z=zj​,X=xi​;θ)​=∑r=1k​αr​φ(X=xi​;θr​)αj​φ(X=xi​;θj​)​​

M步

M步其实就是在求解出 Q i ( Z = z j ) Q_i(Z=z_j) Qi​(Z=zj​)之后,根据极大似然函数求极值求解参数 θ theta θ的值
L ( θ ) = ∑ X ∑ Z Q ( Z ; θ z ) log ⁡ P ( X , Z ; θ ) Q ( Z ; θ z ) = ∑ i = 1 m ∑ j = 1 k Q i ( Z = z j ; θ ) log ⁡ P ( X = x i , Z = z j ; θ ) Q i ( Z = z j ; θ ) = ∑ i = 1 m ∑ j = 1 k Q i ( Z = z j ) log ⁡ P ( X = x i ; μ , Σ ) P ( Z = z j ; λ ) Q i ( Z = z j ) begin{aligned} mathcal{L}(theta) &=sum_{X} sum_{Z} Qleft(Z ; theta_{z}right) log frac{P(X, Z ; theta)}{Qleft(Z ; theta_{z}right)} \ &=sum_{i=1}^{m} sum_{j=1}^{k} Q_{i}left(Z=z_{j} ; thetaright) log frac{Pleft(X=x_{i}, Z=z_{j} ; thetaright)}{Q_{i}left(Z=z_{j} ; thetaright)} \ &=sum_{i=1}^{m} sum_{j=1}^{k} Q_{i}left(Z=z_{j}right) log frac{Pleft(X=x_{i} ; mu, Sigmaright) Pleft(Z=z_{j} ; lambdaright)}{Q_{i}left(Z=z_{j}right)} end{aligned} L(θ)​=X∑​Z∑​Q(Z;θz​)logQ(Z;θz​)P(X,Z;θ)​=i=1∑m​j=1∑k​Qi​(Z=zj​;θ)logQi​(Z=zj​;θ)P(X=xi​,Z=zj​;θ)​=i=1∑m​j=1∑k​Qi​(Z=zj​)logQi​(Z=zj​)P(X=xi​;μ,Σ)P(Z=zj​;λ)​​

求解参数 μ l mu_{l} μl​,公式就和我们平时求解均值的公式一样,这里 w i , j = Q i ( Z = z j ) w_{i,j}=Q_i(Z=z_j) wi,j​=Qi​(Z=zj​)
μ l = ∑ i = 1 m w i , l x i ∑ i = 1 m w i , l mu_{l}=frac{sum_{i=1}^{m} w_{i, l} x_{i}}{sum_{i=1}^{m} w_{i, l}} μl​=∑i=1m​wi,l​∑i=1m​wi,l​xi​​求解参数 ∑ l sum_l ∑l​
Σ l = ∑ i = 1 m ( x i − μ l ) ( x i − μ l ) T w i , l ∑ i = 1 m w i , l Sigma_{l}=frac{sum_{i=1}^{m}left(x_{i}-mu_{l}right)left(x_{i}-mu_{l}right)^{T} w_{i, l}}{sum_{i=1}^{m} w_{i, l}} Σl​=∑i=1m​wi,l​∑i=1m​(xi​−μl​)(xi​−μl​)Twi,l​​求解 α l alpha_l αl​
α l = 1 m ∑ i = 1 m w i , l alpha_{l}=frac{1}{m} sum_{i=1}^{m} w_{i, l} αl​=m1​i=1∑m​wi,l​ 详细过程 高斯混合回归 GMR

高斯混合回归 ( Gaussian Mixture Regression)是另一种流行的时间序列和运动表示技术。它依赖于多元高斯分布的线性变换和条件反射性质。GMR提供了一种综合机制来计算输出分布,其计算时间与用于训练模型的数据点的数量无关。GMR的一个特点是它不直接对回归函数进行建模。相反,它首先以高斯混合模型(GMM)的形式来模拟数据的联合概率密度。然后可以从学习的联合密度模型计算回归函数,从而非常快速地计算条件分布。

在GMR中,输入变量和输出变量都可以是多维的。可以选择输入-输出维度的任何子集,如果需要,它可以在每个时间步长中进行更改。因此,可以考虑输入-输出映射的任何组合,其中对其余维度的期望被计算为一个多元分布。下面,我们将在时间步 t t t的数据点 x t ∈ R D boldsymbol{x}_{t} in mathbb{R}^{D} xt​∈RD的块分解,将GMM中第 k k k个高斯分布的中心 μ k mu_k μk​和协方差 Σ k Sigma_k Σk​表示为
x t = [ x t I x t O ] , μ k = [ μ k I μ k O ] , Σ k = [ Σ k I Σ k I O Σ k O I Σ k O ] boldsymbol{x}_{t}=left[begin{array}{c} boldsymbol{x}_{t}^{I} \ boldsymbol{x}_{t}^{O} end{array}right], quad boldsymbol{mu}_{k}=left[begin{array}{l} boldsymbol{mu}_{k}^{I} \ boldsymbol{mu}_{k}^{O} end{array}right], quad boldsymbol{Sigma}_{k}=left[begin{array}{cc} boldsymbol{Sigma}_{k}^{I} & boldsymbol{Sigma}_{k}^{I O} \ boldsymbol{Sigma}_{k}^{O I} & boldsymbol{Sigma}_{k}^{O} end{array}right] xt​=[xtI​xtO​​],μk​=[μkI​μkO​​],Σk​=[ΣkI​ΣkOI​​ΣkIO​ΣkO​​]

我们首先考虑基于时间的轨迹的例子,使用 x t I boldsymbol{x}_{t}^I xtI​的时间变量。在每个时间步长 t t t, P ( x t O ∣ x t I ) P(boldsymbol{x}_t^O|boldsymbol{x}_t^I) P(xtO​∣xtI​)可以计算为多元高斯条件分布
P ( x t o ∣ x t I ) = ∑ k = 1 K h k ( x t I ) N ( μ ^ k o ( x t I ) , Σ ^ k o ) , mathcal{P}left(boldsymbol{x}_{t}^{o} mid boldsymbol{x}_{t}^{I}right)=sum_{k=1}^{K} h_{k}left(boldsymbol{x}_{t}^{I}right) mathcal{N}left(hat{boldsymbol{mu}}_{k}^{o}left(boldsymbol{x}_{t}^{I}right), hat{boldsymbol{Sigma}}_{k}^{o}right), P(xto​∣xtI​)=k=1∑K​hk​(xtI​)N(μ^​ko​(xtI​),Σ^ko​),
则高斯分布的参数更新为:
μ ^ k o ( x t I ) = μ k o + Σ k O I Σ k I − 1 ( x t I − μ k I ) Σ ^ k o = Σ k O − Σ k O I Σ k I − 1 Σ k I O  and  h k ( x t I ) = π k N ( x t I ∣ μ k I , Σ k I ) ∑ i = 1 K π i N ( x t I ∣ μ i I , Σ i I ) hat{boldsymbol{mu}}_{k}^{o}left(boldsymbol{x}_{t}^{I}right)=boldsymbol{mu}_{k}^{o}+boldsymbol{Sigma}_{k}^{O I} boldsymbol{Sigma}_{k}^{I-1}left(boldsymbol{x}_{t}^{I}-boldsymbol{mu}_{k}^{I}right) \ begin{aligned} hat{boldsymbol{Sigma}}_{k}^{o} &=boldsymbol{Sigma}_{k}^{O}-boldsymbol{Sigma}_{k}^{O I} boldsymbol{Sigma}_{k}^{I-1} boldsymbol{Sigma}_{k}^{I O} \ text { and } quad h_{k}left(boldsymbol{x}_{t}^{I}right) &=frac{pi_{k} mathcal{N}left(boldsymbol{x}_{t}^{I} mid boldsymbol{mu}_{k}^{I}, boldsymbol{Sigma}_{k}^{I}right)}{sum_{i=1}^{K} pi_{i} mathcal{N}left(boldsymbol{x}_{t}^{I} mid boldsymbol{mu}_{i}^{I}, boldsymbol{Sigma}_{i}^{I}right)} end{aligned} μ^​ko​(xtI​)=μko​+ΣkOI​ΣkI−1​(xtI​−μkI​)Σ^ko​ and hk​(xtI​)​=ΣkO​−ΣkOI​ΣkI−1​ΣkIO​=∑i=1K​πi​N(xtI​∣μiI​,ΣiI​)πk​N(xtI​∣μkI​,ΣkI​)​​
其中 h k h_k hk​是EM算法估计的E步,求解隐变量

当需要单峰输出分布时,可以使用总均值和方差定律(见图,右)来用高斯分布来近似该分布
P ( x t o ∣ x t I ) = N ( x t o ∣ μ ^ O ( x t I ) , Σ ^ o ( x t I ) ) μ ^ O ( x t I ) = ∑ k = 1 K h k ( x t I ) μ ^ k O ( x t I ) Σ ^ O ( x t I ) = ∑ k = 1 K h k ( x t I ) ( Σ ^ k o + μ ^ k O ( x t I ) μ ^ k O ( x t I ) ⊤ ) − μ ^ O ( x t I ) μ ^ O ( x t I ) ⊤ begin{aligned} mathcal{P}left(boldsymbol{x}_{t}^{o} mid boldsymbol{x}_{t}^{I}right) &=mathcal{N}left(boldsymbol{x}_{t}^{o} mid hat{boldsymbol{mu}}^{O}left(boldsymbol{x}_{t}^{I}right), hat{boldsymbol{Sigma}}^{o}left(boldsymbol{x}_{t}^{I}right)right) \ hat{boldsymbol{mu}}^{O}left(boldsymbol{x}_{t}^{I}right) &=sum_{k=1}^{K} h_{k}left(boldsymbol{x}_{t}^{I}right) hat{boldsymbol{mu}}_{k}^{O}left(boldsymbol{x}_{t}^{I}right) \ hat{boldsymbol{Sigma}}^{O}left(boldsymbol{x}_{t}^{I}right) &=sum_{k=1}^{K} h_{k}left(boldsymbol{x}_{t}^{I}right)left(hat{boldsymbol{Sigma}}_{k}^{o}+hat{boldsymbol{mu}}_{k}^{O}left(boldsymbol{x}_{t}^{I}right) hat{boldsymbol{mu}}_{k}^{O}left(boldsymbol{x}_{t}^{I}right)^{top}right)-hat{boldsymbol{mu}}^{O}left(boldsymbol{x}_{t}^{I}right) hat{boldsymbol{mu}}^{O}left(boldsymbol{x}_{t}^{I}right)^{top} end{aligned} P(xto​∣xtI​)μ^​O(xtI​)Σ^O(xtI​)​=N(xto​∣μ^​O(xtI​),Σ^o(xtI​))=k=1∑K​hk​(xtI​)μ^​kO​(xtI​)=k=1∑K​hk​(xtI​)(Σ^ko​+μ^​kO​(xtI​)μ^​kO​(xtI​)⊤)−μ^​O(xtI​)μ^​O(xtI​)⊤​

高斯过程回归 高斯过程

高斯过程(Gaussian Process)指高斯分布与随机过程,是定义在连续域上的无限多个高斯随机变量组成的随机过程,即高斯过程是一个无限维的高斯分布
对于一个连续域 T T T(假设他是一个时间轴),如果我们在连续域上任选 n n n个时刻: t 1 , t 2 , t 3 , . . . , t n ∈ T t_1, t_2, t_3, ...,t_n in T t1​,t2​,t3​,...,tn​∈T,使得获得的一个 n n n维向量 { ξ 1 , ξ 2 , ξ 3 , … , ξ n } left{xi_{1}, xi_{2}, xi_{3}, ldots, xi_{n}right} {ξ1​,ξ2​,ξ3​,…,ξn​}都满足其是一个 n n n维高斯分布,那么这个 { ξ t } {xi_t} {ξt​}就是一个高斯过程。

核函数

核函数以径向基函数为例,其中 s s s和 t t t表示任意两个时刻,核函数也称协方差函数。
k ( s , t ) = σ 2 exp ⁡ ( − ∥ s − t ∥ 2 2 l 2 ) k(s, t)=sigma^{2} exp left(-frac{|s-t|^{2}}{2 l^{2}}right) k(s,t)=σ2exp(−2l2∥s−t∥2​)

高斯过程回归 GPR

用 μ ( t ) mu(t) μ(t)和 k ( s , t ) k(s,t) k(s,t)来定义高斯过程,因为没有观测值,因此是一个先验,如果获取一组观测值后,如何修正高斯过程的均值函数与核函数,使之得到后验过程?

假设一个回归问题: x O = f ( x I ) + η boldsymbol{x}^O = f(boldsymbol{x}^I) +boldsymbol{eta} xO=f(xI)+η, f f f是未知函数, η eta η是高斯噪声,通过假设观测数据集作为输入-输出对 { x t I , x t O } t = 1 N left{boldsymbol{x}_{t}^{mathcal{I}}, boldsymbol{x}_{t}^{mathcal{O}}right}_{t=1}^{N} {xtI​,xtO​}t=1N​,目的是评估函数 f f f的形式和相应的输出分布 x O boldsymbol{x}^O xO, 即 x O ∗ ∼ P ( x O ∣ x I ∗ ) boldsymbol{x}^{mathcal{O} *} sim mathcal{P}left(boldsymbol{x}^{mathcal{O}} mid boldsymbol{x}^{mathcal{I} *}right) xO∗∼P(xO∣xI∗)

协方差是高斯过程的核心,通过使用核函数 k ( x i I , x j I ) k(boldsymbol{x}_i^I , boldsymbol{x}_j^I) k(xiI​,xjI​)定义,提供两个样本 x i I boldsymbol{x}_i^I xiI​和 x j I boldsymbol{x}_j^I xjI​之间的协方差元素。对于一组输入 x I = { X 1 I , X 2 I , … , X N I } boldsymbol{x}^I={X_1^I,X_2^I,…,X_N^I } xI={X1I​,X2I​,…,XNI​},协方差矩阵(也称为GM矩阵)被定义为:
K ( x I , x I ) = [ k ( x 1 I , x 1 I ) k ( x 1 I , x 2 I ) ⋯ k ( x 1 I , x N I ) k ( x 2 I , x 1 I ) k ( x 2 I , x 2 I ) ⋯ k ( x 2 I , x N I ) ⋮ ⋮ ⋱ ⋮ k ( x N I , x 1 I ) k ( x N I , x 2 I ) ⋯ k ( x N I , x N I ) ] boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)=left[begin{array}{cccc} kleft(boldsymbol{x}_{1}^{mathcal{I}}, boldsymbol{x}_{1}^{mathcal{I}}right) & kleft(boldsymbol{x}_{1}^{mathcal{I}}, boldsymbol{x}_{2}^{mathcal{I}}right) & cdots & kleft(boldsymbol{x}_{1}^{mathcal{I}}, boldsymbol{x}_{N}^{mathcal{I}}right) \ kleft(boldsymbol{x}_{2}^{mathcal{I}}, boldsymbol{x}_{1}^{mathcal{I}}right) & kleft(boldsymbol{x}_{2}^{mathcal{I}}, boldsymbol{x}_{2}^{mathcal{I}}right) & cdots & kleft(boldsymbol{x}_{2}^{mathcal{I}}, boldsymbol{x}_{N}^{mathcal{I}}right) \ vdots & vdots & ddots & vdots \ kleft(boldsymbol{x}_{N}^{mathcal{I}}, boldsymbol{x}_{1}^{mathcal{I}}right) & kleft(boldsymbol{x}_{N}^{mathcal{I}}, boldsymbol{x}_{2}^{mathcal{I}}right) & cdots & kleft(boldsymbol{x}_{N}^{mathcal{I}}, boldsymbol{x}_{N}^{mathcal{I}}right) end{array}right] K(xI,xI)=⎣⎢⎢⎢⎡​k(x1I​,x1I​)k(x2I​,x1I​)⋮k(xNI​,x1I​)​k(x1I​,x2I​)k(x2I​,x2I​)⋮k(xNI​,x2I​)​⋯⋯⋱⋯​k(x1I​,xNI​)k(x2I​,xNI​)⋮k(xNI​,xNI​)​⎦⎥⎥⎥⎤​
即混合高斯分布服从 x O ∼ N ( μ ( x I ) , K ( x I , x I ) ) boldsymbol{x}^O sim mathcal{N}left(boldsymbol{mu}left(boldsymbol{x}^{mathcal{I}}right), boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)right) xO∼N(μ(xI),K(xI,xI))

当存在与观测值相关的相关的噪声时, I I I是单位矩阵,即噪声仅添加在对角线上
K ~ ( x I , x I ) = K ( x I , x I ) + Θ G P I tilde{boldsymbol{K}}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)=boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)+Theta^{mathrm{GP}} boldsymbol{I} K~(xI,xI)=K(xI,xI)+ΘGPI

对于回归问题,我们感兴趣的是给定输入数据 x I ∗ boldsymbol{x}^{I*} xI∗的后验分布 x O ∗ boldsymbol{x}^{O*} xO∗,那么输入输出对 { x I , x O } { boldsymbol{x}^I, boldsymbol{x}^O} {xI,xO}增加输入新的输入 x I ∗ boldsymbol{x}^{I*} xI∗和输出 x O ∗ boldsymbol{x}^{O*} xO∗的联合分布为:
[ x O x O ∗ ] ∼ N ( [ μ ( x I ) μ ( x I ∗ ) ] , [ K ( x I , x I ) K ( x I , x I ∗ ) K ( x I ∗ , x I ) K ( x I ∗ , x I ∗ ) ] ) left[begin{array}{c} boldsymbol{x}^{mathcal{O}} \ boldsymbol{x}^{mathcal{O} *} end{array}right] sim mathcal{N}left(left[begin{array}{c} boldsymbol{mu}left(boldsymbol{x}^{mathcal{I}}right) \ boldsymbol{mu}left(boldsymbol{x}^{mathcal{I} *}right) end{array}right],left[begin{array}{cc} boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right) & boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I} *}right) \ boldsymbol{K}left(boldsymbol{x}^{mathcal{I} *}, boldsymbol{x}^{mathcal{I}}right) & boldsymbol{K}left(boldsymbol{x}^{mathcal{I} *}, boldsymbol{x}^{mathcal{I} *}right) end{array}right]right) [xOxO∗​]∼N([μ(xI)μ(xI∗)​],[K(xI,xI)K(xI∗,xI)​K(xI,xI∗)K(xI∗,xI∗)​])
利用条件高斯分布可以估计出输出 x O ∗ boldsymbol{x}^{O*} xO∗的后验分布:
x O ∗ ∣ x O ∼ N ( μ ∗ , Σ ∗ ) boldsymbol{x}^{mathcal{O} *} mid boldsymbol{x}^{mathcal{O}} sim mathcal{N}left(boldsymbol{mu}^{*}, boldsymbol{Sigma}^{*}right) xO∗∣xO∼N(μ∗,Σ∗)

其中均值与协方差:
μ ∗ = μ ( x I ∗ ) + K ( x I ∗ , x I ) K ( x I , x I ) − 1 ( x O − μ ( x I ) ) Σ ∗ = K ( x I ∗ , x I ∗ ) − K ( x I ∗ , x I ) K ( x I , x I ) − 1 K ( x I , x I ∗ ) begin{aligned} boldsymbol{mu}^{*} &=boldsymbol{mu}left(boldsymbol{x}^{mathcal{I} *}right)+boldsymbol{K}left(boldsymbol{x}^{mathcal{I} *}, boldsymbol{x}^{mathcal{I}}right) boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)^{-1}left(boldsymbol{x}^{mathcal{O}}-boldsymbol{mu}left(boldsymbol{x}^{mathcal{I}}right)right) \ boldsymbol{Sigma}^{*} &=boldsymbol{K}left(boldsymbol{x}^{mathcal{I} *}, boldsymbol{x}^{mathcal{I} *}right)-boldsymbol{K}left(boldsymbol{x}^{mathcal{I} *}, boldsymbol{x}^{mathcal{I}}right) boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I}}right)^{-1} boldsymbol{K}left(boldsymbol{x}^{mathcal{I}}, boldsymbol{x}^{mathcal{I} *}right) end{aligned} μ∗Σ∗​=μ(xI∗)+K(xI∗,xI)K(xI,xI)−1(xO−μ(xI))=K(xI∗,xI∗)−K(xI∗,xI)K(xI,xI)−1K(xI,xI∗)​

也就是说,设置了高斯过程的先验参数,一旦拿到一些观测值,那么就可以对高斯过程的均值函数和核函数进行修正,得到一个修正后的后验高斯过程,而更新后验参数的信息就来自于观测值。

概率运动基元

ProMP(probabilistic movement primitive)模型假设每一条演示的轨迹 m ∈ { 1 , … , M } m in {1,…,M} m∈{1,…,M} 可以用 K K K个归一化RBF的加权和来近似
ξ m = Ψ w m + ϵ , ϵ ∼ N ( 0 , λ I ) boldsymbol{xi}_{m}=boldsymbol{Psi} boldsymbol{w}_{m}+boldsymbol{epsilon}, quad boldsymbol{epsilon} sim mathcal{N}(0,lambda boldsymbol{I} ) ξm​=Ψwm​+ϵ,ϵ∼N(0,λI)
基函数的定义为
Ψ = [ I ϕ 1 ( t 1 ) I ϕ 2 ( t 1 ) ⋯ I ϕ K ( t 1 ) I ϕ 1 ( t 2 ) I ϕ 2 ( t 2 ) ⋯ I ϕ K ( t 2 ) ⋮ ⋮ ⋱ ⋮ I ϕ 1 ( t T ) I ϕ 2 ( t T ) ⋯ I ϕ K ( t T ) ] boldsymbol{Psi}=left[begin{array}{cccc} boldsymbol{I} phi_{1}left(t_{1}right) & boldsymbol{I} phi_{2}left(t_{1}right) & cdots & boldsymbol{I} phi_{K}left(t_{1}right) \ boldsymbol{I} phi_{1}left(t_{2}right) & boldsymbol{I} phi_{2}left(t_{2}right) & cdots & boldsymbol{I} phi_{K}left(t_{2}right) \ vdots & vdots & ddots & vdots \ boldsymbol{I} phi_{1}left(t_{T}right) & boldsymbol{I} phi_{2}left(t_{T}right) & cdots & boldsymbol{I} phi_{K}left(t_{T}right) end{array}right] Ψ=⎣⎢⎢⎢⎡​Iϕ1​(t1​)Iϕ1​(t2​)⋮Iϕ1​(tT​)​Iϕ2​(t1​)Iϕ2​(t2​)⋮Iϕ2​(tT​)​⋯⋯⋱⋯​IϕK​(t1​)IϕK​(t2​)⋮IϕK​(tT​)​⎦⎥⎥⎥⎤​
其中 Ψ ∈ R D T × D K boldsymbol{Psi} in mathbb{R}^{DT times DK} Ψ∈RDT×DK, I ∈ R D I in mathbb{R}^{D} I∈RD,根据最小二乘法,求解最小标准差,向量 w m ∈ R D K boldsymbol{w}_m in mathbb{R}^{DK} wm​∈RDK可以被估计为
w m = ( Ψ ⊤ Ψ ) − 1 Ψ ⊤ ξ m boldsymbol{w}_{m}=left(boldsymbol{Psi}^{top} boldsymbol{Psi}right)^{-1} boldsymbol{Psi}^{top} boldsymbol{xi}_{m} wm​=(Ψ⊤Ψ)−1Ψ⊤ξm​

假设 { w m } m = 1 M left{boldsymbol{w}_{m}right}_{m=1}^{M} {wm​}m=1M​服从高斯分布 N ( μ w , Σ w ) mathcal{N}(boldsymbol{mu}^{boldsymbol{w}} ,boldsymbol{Sigma}^{boldsymbol{w}}) N(μw,Σw),则轨迹分布表示为
P ( ξ ) = ∫ P ( ξ ∣ w ) P ( w ) d w mathcal{P}(boldsymbol{xi})=int mathcal{P}(boldsymbol{xi} mid boldsymbol{w}) mathcal{P}(boldsymbol{w}) d boldsymbol{w} P(ξ)=∫P(ξ∣w)P(w)dw
积分去掉权重系数 w boldsymbol{w} w,从而得到轨迹的高斯分布
ξ ∼ N ( Ψ μ w , Ψ Σ w Ψ ⊤ + λ I ) boldsymbol{xi} sim mathcal{N}left(boldsymbol{Psi} boldsymbol{mu}^{boldsymbol{w}}, boldsymbol{Psi} boldsymbol{Sigma}^{w} boldsymbol{Psi}^{top}+lambda boldsymbol{I}right) ξ∼N(Ψμw,ΨΣwΨ⊤+λI)

ProMP 参数为 θ = { λ , μ k I , Σ k I , μ w , Σ w } theta = {lambda, mu_k^I , Sigma_k^I , boldsymbol{mu}^{boldsymbol{w}}, boldsymbol{Sigma}^{boldsymbol{w}}} θ={λ,μkI​,ΣkI​,μw,Σw},估计DK维的高斯分布,提供运动的紧凑表示,分离时间分量 Ψ Psi Ψ和空间分量 N ( μ w , Σ w ) mathcal{N}(boldsymbol{mu}^{boldsymbol{w}} ,boldsymbol{Sigma}^{boldsymbol{w}}) N(μw,Σw)。与DMP类似,ProMP可以与GMM/GMR结合,作为联合分布问题自动估计基函数的参数和泛化,而不是人工指定它们。




转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/768658.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号