马尔科夫随机场在深度学习中的应用

本文介绍了马尔科夫随机场在深度学习中的应用,包括图像分割和图像纹理合成。通过条件概率、贝叶斯定理、马尔科夫链等概念,解释了马尔科夫随机场的原理。在图像分割中,利用马尔科夫随机场和吉布斯分布求解像素点的分类标记,实现图像分割。在图像纹理合成中,通过MRF进行纹理迁移,选择最匹配的像素点生成新图像。马尔科夫随机场与深度学习的结合为图像处理提供了有效方法。
摘要由CSDN通过智能技术生成

前言

深度学习中,许多的实现并不单单是神经网络的搭建和训练,也包括使用一系列传统的方法与之结合的方式去增强深度学习的实现效果,在语义分割(semantic segmentation)和风格迁移(style transfer)中都有使用过MRF-Markov Random Field(马尔科夫随机场)这个概念,并且达到了不错的效果。

《马尔科夫随机场(MRF)在图像处理中的应用-图像分割、纹理迁移》 使用MRF的Image Synthesis得到的风格相比style-transfer更加抽象

《马尔科夫随机场(MRF)在图像处理中的应用-图像分割、纹理迁移》 Deeplab-v2中采用全连接条件随机场对结果进行优化

马尔科夫网络这个传统方法的概率模型思想值得我们去借鉴,本文主要对马尔科夫随机场进行讲解,并且对使用MRF这个方法的深度学习项目进行分析和描述。

概念铺垫

首先我们简单说一下后面介绍需要的一些基础知识,这些知识其实都是我们大学课程中学习过的课程。在《概率论》、《算法导论》以及《统计学方法》中都有详细介绍。这里只是进行简单的介绍,虽然是基础,但是对马尔科夫随机场的理解还是很有帮助的。

条件概率和贝叶斯定理

条件概率,我们使用这个概念的时候往往是用来解决逆问题,也就是已知结果反推原因的一个过程。而经典的贝叶斯定理公式:

我们常常利用这个公式去推导我们无法直接观测的问题,首先明白一个概念:上面的式子中,A是结果,B是原因。而上面这个式子我们要做的任务就是:

  • 已知P(A|B)P(B)(P(A)可以通过P(A)={\sum }^{n}P(A|B)\times P(B_{i} )计算得到)
  • 要求P(B|A)

我们一般称P(原因)先验概率P(原因|结果)称为后验概率,相应的为先验分布和后验分布。

随机游走

随机游走是一个典型的随机过程,就和我们丢骰子走步数一样。但这里我们简单分为两种可能,假设我们抛掷一个硬币,正面我们就向上走一步,反面我们就向下走一步。

这个过程很简单,也就是向下走和向上走的概率都是50%,也就是我们设:

X_0 = 0, X_t = X_{t-1} + Z_t

那么下图就是一些具体的观测值。

随机游走很两个特点我们要注意:

  • 每次行动时,下一步的动作和前几步动作没有关系,和前几步的动作都没关系,也就是说我们无法通过当前的状态去推断未来的状态
  • 因为每一步和周围周围的行动都没有关系,所以我们可以知道,无论上方的图折线如何变化,其发生的概率都是一样的(反射原理)。

假如我们在在t=9的时候将折线进行翻转,这种情况的概率和之前是一样的。

无向图与有向图模型

图模型我们一般是用于表示随机变量之间的相互作用,我们把随机变量带到图中,图中每一个点是我们实际图中的像素点,每个像素点通过“边”来连接。

概率无向图模型(probabilistic undirected graphical model)又称为马尔科夫随机场(Markov Random Field),或者马尔科夫网络。而有向图模型通常被称为信念网络(belief network)或者贝叶斯网络(Bayesian network)。对于这个我们要稍加区分

有向图每个边都是有方向的,箭头所指的方向表示了这个随机变量的概率分布点,比如一个节点a到节点b的一个箭头,这个箭头就表明了节点b的概率由a所决定。我们举个简单的例子(例子来源于深度学习圣经P342使用图描述模型结构):

假设一个接力赛,Alice的完成时间为t_0,Bob的完成时间为t_1,而Carol的完成时间为t_2。和之前说的一样,t_2取决于t_1,而t_1取决于t_0,而t_2间接依赖于t_0

也就是说Carol的完成时间和Bob有关系和Alice也有关系,是单方向依赖的.

本文我们要说的是马尔科夫随机场,马尔科夫随机场是无向图模型,也就是两个点之前并没有明确的前后以及方向关系,虽然两个点之前存在相互作用,但是这个作用仅仅在附近的点与点之间,与更远处的点或者最前面的点并没有关系。

用公式表示一下:

下面我们来正式介绍一下:

马尔科夫随机场

马尔科夫随机场之前简单进行了提及,我们知道其特点是两点之间的因果关系没有明确的方向,我们再来举个例子来说明一下(例子来源于A friendly introduction to Bayes Theorem and Hidden Markov Models):

这个例子是很经典的天气心情假设,假设下图中右面的人是Bob,他在天气比较晴朗的时候有极大的可能是高兴的,而在下雨的时候有一定可能是郁闷的。而现在我们要做的就是根据Bob的心情情况来猜测当前的天气信息。

这个就是典型的已知结果(Bob的心情)去推导原因(天气情况)。

当然我们需要一些其他的概率信息(也就是上面贝叶斯定理中我们要做的任务中需要的信息P(原因)P(结果|原因)),我们通过统计一段时间的天气以及Bob的心情变化得出了我们需要的概率信息。

也就是15天中10天是晴天(某一天是晴天的概率是10/15=2/3),5天是阴天(某一天是阴天的概率是5/15=1/3)。而且昨天是晴天今天是晴天的概率是0.8,昨天是阴天今天晴天的概率是0.2;昨天是阴天今天是阴天的概率是0.6,昨天是阴天今天是晴天的概率是0.4。

另外还有Bob在这些天的心情情况,可以分别总结出,晴天阴天Bob的心情概率。

好了,我们所需要的概率都计算完毕,那么我们需要的就是搭建一个HMM(Hidden Mardov Model)因马尔科夫模型。

要说到HMM首先要说马尔科夫链。

马尔科夫链

马尔科夫链即上图中晴天(B)和阴天(A)的转换公式:

我们以上面的例子为例,A和B两种状态(B代表晴天A代表阴天),有四种可能的转移概率(transition probabilities),分别是 A->A、A->B、B->B、B->A。可以看到下图右面的概率分布(P(A|A)也就是晴天到晴天的概率为0.8,其他概率与上面的晴天阴天概率相同),另外右边概率转移矩阵的每一行概率加起来都为1。

通过这个天气的马尔科夫链,我们就可以得到接下来的天气情况(S代表Sunny晴天,R代表rainy雨天):

当然上面表示仅仅是简单的马尔科夫链,如果是复杂的马尔科夫链:

显然,右边是这个马尔科夫链的概率转移矩阵,每一行的概率值加起来为1。

上面动图来源于参考中的:Markov Chains

HHM隐马尔可夫模型

说完马尔科夫链我们来说明下HMM隐马尔科夫模型。

我们再来看一下之前的图:

我们知道,上面的晴天和阴天的转换公式为我们之前说到的马尔科夫链,但是在我们之前说明的问题中,我们要通过观察Bob的心情来推测今天的天气。也就是说,上面的天气变化(晴天变为阴天)是随机变化,Bob的心情(由天气导致的心情变化)也是随机变化,整个的过程就是所谓的双重随机过程

上面的过程有两个特点:

  • 输出(Bob的心情)依然只和当前的状态(今天的天气)有关
  • 想要计算观察的序列(知道Bob连续好多天的心情,推算出最可能的连续几天的天气情况),只需要依照最大似然概率计算即可

下面的O_1,O_2,...,Q_t即观察值(Bob的天气),而S_1,S_2,...,S_t为中间的状态(天

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值