【机器学习基础】贝叶斯神经网络

本系列为《模式识别与机器学习》的读书笔记。

一,混合密度网络

作为逆问题,考虑机械臂的运动学问题。正向问题forward problem)是在给定连接角的情况下求解机械臂末端的位置,这个问题有唯⼀解。然⽽,在实际应⽤中,我们想把机械臂末端移动到⼀个具体的位置,为了完成移动,必须设定合适的连接角。正向问题通常对应于物理系统的因果关系,通常有唯⼀解。

图5.29~5.30,图5.29给展⽰了⼀个具有两个连接的机械臂,其中,末端的笛卡尔坐标 ( x 1 , x 2 ) (x_1, x_2) (x1,x2) 由两个连接角 θ 1 \theta_1 θ1 θ 2 \theta_2 θ2 以及机械臂的(固定)长度 L 1 L_1 L1 L 2 L_2 L2 唯⼀确定。这被称为机械臂的正向运动学forward kinematics)。在实际应⽤中,必须寻找给出所需的末端位置的连接角,如图5.30所⽰,这个逆向运动学inverse kinematics)有两个对应的解,即“肘部向上”和“肘部向下”。
正向运动学
逆向运动学
考虑⼀个具有多峰性质的问题,数据的⽣成⽅式为:对服从区间 ( 0 , 1 ) (0, 1) (0,1) 的均匀分布的变量 x x x 进⾏取样,得到⼀组值 { x n } \{x_n\} { xn} ,对应的⽬标值 t n t_n tn 通过下⾯的⽅式得到:计算函数 x n + 0.3 sin ⁡ ( 2 π x n ) x_n + 0.3 \sin(2\pi{x_n}) xn+0.3sin(2πxn) ,然后添加⼀个服从 ( − 0.1 , 0.1 ) (−0.1, 0.1) (0.1,0.1) 上的均匀分布的噪声。这样,逆问题就可以这样得到:使⽤相同的数据点,但是交换 x x x t t t 的⾓⾊。

图5.31~5.32,图5.31是⼀个简单的“正向问题”的数据集,其中红⾊曲线给出了通过最⼩化平⽅和误差函数调节⼀个两层神经⽹络的结果。对应的逆问题,如图5.32所⽰,通过交换 x x x t t t 的顺序的⽅式得到。这⾥,通过最⼩化平⽅和误差函数的⽅式训练的神经⽹络给出了对数据的⾮常差的拟合,因为数据集是多峰的。
正向问题数据集
逆向问题数据集
寻找⼀个对条件概率密度建模的⼀般的框架:为 p ( t ∣ x ) p(\boldsymbol{t}|\boldsymbol{x}) p(tx) 使⽤⼀个混合模型,模型的混合系数和每个分量的概率分布都是输⼊向量 x \boldsymbol{x} x 的⼀个⽐较灵活的函数,这就构成了混合密度⽹络mixture density network)。对于任意给定的 x \boldsymbol{x} x 值,混合模型提供了⼀个通⽤的形式,⽤来对任意条件概率密度函数 p ( t ∣ x ) p(\boldsymbol{t}|\boldsymbol{x}) p(tx) 进⾏建模。

图5.33,混合密度⽹络mixture density network)可以表⽰⼀般的条件概率密度 p ( t ∣ x ) p(\boldsymbol{t}|\boldsymbol{x}) p(tx) , ⽅法为:考虑 t \boldsymbol{t} t 的⼀个参数化的混合模型,参数由以 x \boldsymbol{x} x 为输⼊的神经⽹络的输出确定。
混合密度⽹络
显式地令模型的分量为⾼斯分布,即

p ( t ∣ x ) = ∑ k = 1 K π k ( x ) N ( t ∣ μ ( x ) , σ k 2 ( x ) I ) (5.99) p(\boldsymbol{t}|\boldsymbol{x})=\sum_{k=1}^{K}\pi_{k}(\boldsymbol{x})\mathcal{N}(\boldsymbol{t}|\boldsymbol{\mu}(\boldsymbol{x}),\sigma_{k}^{2}(\boldsymbol{x})\boldsymbol{I})\tag{5.99} p(tx)=k=1Kπk(x)N(tμ(x),σk2(x)I)(5.99)

混合系数必须满⾜下⾯的限制

∑ k = 1 K π k ( x ) = 1 , 0 ≤ π k ( x ) ≤ 1 \sum_{k=1}^{K}\pi_{k}(\boldsymbol{x})=1, 0 \le \pi_{k}(\boldsymbol{x}) \le 1 k=1Kπk(x)=1,0πk(x)1

可以通过使⽤⼀组softmax输出来实现

π k ( x ) = exp ⁡ ( a k π ) ∑ l = 1 K exp ⁡ ( a l π ) (5.100) \pi_{k}(\boldsymbol{x})=\frac{\exp(a_{k}^{\pi})}{\sum_{l=1}^{K}\exp(a_{l}^{\pi})}\tag{5.100} πk(x)=l=1Kexp(alπ)exp(akπ)(5.100)

⽅差必须满⾜ σ k 2 ( x ) ≥ 0 \sigma_{k}^{2}(\boldsymbol{x})\ge0 σk2(x)0 ,因此可以使⽤对应的⽹络激活的指数形式表⽰,即

σ k ( x ) = exp ⁡ ( a k σ ) (5.101) \sigma_{k}(\boldsymbol{x})=\exp(a_{k}^{\sigma})\tag{5.101} σk(x)=exp(akσ)(5.101)

由于均值 μ k ( x ) \mu_{k}(\boldsymbol{x}) μk(x) 有实数分量,因此可以直接⽤⽹络的输出激活表⽰

μ k j ( x ) = a k j μ (5.102) \mu_{kj}(\boldsymbol{x})=a_{kj}^{\mu}\tag{5.102} μkj(x)=akjμ(5.102)

混合密度⽹络的可调节参数由权向量 w \boldsymbol{w} w 和偏置组成。这些参数可以通过最⼤似然法确定,或者等价地,使⽤最⼩化误差函数(负对数似然函数)的⽅法确定。对于独⽴的数据,误差函数的形式为

E ( w ) = − ∑ n = 1 N ln ⁡ { ∑ k = 1 K π k ( x n , w ) N ( t n ∣ μ k ( x n , w ) , σ k 2 ( x n , w ) I ) } (5.103) E(\boldsymbol{w})=-\sum_{n=1}^{N}\ln\left\{\sum_{k=1}^{K}\pi_{k}(\boldsymbol{x}_n,\boldsymbol{w})\mathcal{N}(\boldsymbol{t}_n|\boldsymbol{\mu}_k(\boldsymbol{x}_n,\boldsymbol{w}),\sigma_{k}^{2}(\boldsymbol{x}_n,\boldsymbol{w})\boldsymbol{I})\right\}\tag{5.103} E(w)=n=1Nln{ k=1Kπk(xn,w)N(tnμk(xn,w),σk2(xn,w)I)}(5.103)

把混合系数 π k ( x ) \pi_k(\boldsymbol{x}) πk(x) 看成与 x \boldsymbol{x} x 相关的先验概率分布,从⽽就引⼊了对应的后验概率,形式为

γ n k = γ k ( t n ∣ x n ) = π k N n k ∑ l = 1 K π l N n l (5.104) \gamma_{nk}=\gamma_{k}(\boldsymbol{t}_n|\boldsymbol{x}_n)=\frac{\pi_{k}\mathcal{N}_{nk}}{\sum_{l=1}^{K}\pi_{l}\mathcal{N}_{nl}}\tag{5.104} γnk=γk(tnxn)=l=1KπlNnlπkNnk(5.104)

其中 N n k

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值