精华内容
下载资源
问答
  • 条件随机场模型是由Lafferty在2001年提出的一种典型的判别式模型。它在观测序列的基础上对目标序列进行建模,重点解决序列化标注的问题条件随机场模型既具有判别式模型的优点,又具有产生式模型考虑到上下文标记间的...

    条件随机场模型是由Lafferty在2001年提出的一种典型的判别式模型。它在观测序列的基础上对目标序列进行建模,重点解决序列化标注的问题条件随机场模型既具有判别式模型的优点,又具有产生式模型考虑到上下文标记间的转移概率,以序列化形式进行全局参数优化和解码的特点,解决了其他判别式模型(如最大熵马尔科夫模型)难以避免的标记偏置问题。

    条件随机场模型(conditional random fields )是一种无向图模型,它是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。即给定观察序列O,求最佳序列S。

    —预备知识
      —产生式模型和判别式模型(Generative model vs. Discriminative model)
    —概率图模型

    (1)机器学习方法的两种分类:产生式模型和判别式模型


    假定输入x, 类别标签y


    —产生式模型(生成模型)估计联合概率 P(x, y), 因可以根据联合概率来生成样本 —: HMMs
    —判别式模型(判别模型)估计条件概率 P(y|x), 因为没有x的知识,无法生成样本,只能判断分类: SVMs,CRF,MEM
      举例:(o和s分别代表观察序列和标记序列)
    (1,0), (1,0), (2,0), (2, 1)
    产生式模型:

    1)p(x, y):P(1, 0) = 1/2, P(1, 1) = 0, P(2, 0) = 1/4, P(2, 1) = 1/4.

     2)构建o和s的联合分布p(s,o)

    3)产生式模型中,观察序列作为模型的一部分;

    4)产生式模型:无穷样本==》概率密度模型 = 产生模型==》预测

    判别式模型:

    1)P(y|x):P(0|1) = 1, P(1|1) = 0, P(0|2) = 1/2, P(1|2) = 1/2
    2)构建o和s的条件分布p(s|o)
    3)判别式模型中,观察序列只作为条件,因此可以针对观察序列设计灵活的特征。
    4)判别式模型:有限样本==》判别函数 = 预测模型==》预测
        一般认为判别型模型要好于生成型模型,因为它是直接根据数据对概率建模,而生成型模型还要先求两个难度相当的概率
    概率图模型
    1)用图的形式表示概率分布
    2)基于概率论中贝叶斯规则建立起来的,解决不确定性问题,可以用于人工智能、 数据挖掘、 语言处理文本分类等领域
         图模型是表示随机变量之间的关系的图,图中的节点表示随机变量,缺少边表示条件独立假设。因此可以对联合分布提供一种紧致表示
    3)根据边是否有方向,有两种主要的图模型
    无向图:亦称马尔科夫随机场(Markov Random Fields, MRF’s)或马尔科夫网络(Markov Networks)
    有向图:亦称贝叶斯网络(Bayesian Networks)或信念网络(Belief Networks, BN’s).
    混合图模型,有时称为链图(chain graphs)
    例如:其中有两个概念:位置(site),相空间(phase space)。“位置”好比是一亩亩农田;“相空间”好比是种的各种庄稼。我们可以给不同的地种上不同的庄稼,这就好比给随机场的每个“位置”,赋予相空间里不同的值。所以,俗气点说,随机场就是在哪块地里种什么庄稼的事情。
    —简单地讲,随机场可以看成是一组随机变量的集合(这组随机变量对应同一个样本空间)。当给每一个位置中按照某种分布随机赋予相空间的一个值之后,其全体就叫做随机场。(当然,这些随机变量之间可能有依赖关系,一般来说,也只有当这些变量之间有依赖关系的时候,我们将其单独拿出来看成一个随机场才有实际意义。)
      4)具有马尔科夫性质
    5)体现了一个思想:离当前因素比较遥远(这个遥远要根据具体情况自己定义)的因素对当前因素的性质影响不大。
       

    1 链式条件随机场模型的图结构

    clip_image002

    2 条件随机场模型的分解式

    clip_image004

    clip_image006

    2 原理:

    (1)目标函数:基于最大熵原则进行建模,定义样本条件熵

    clip_image008

    (2)约束条件:

    以团为单位定义特征clip_image010

    约束特征的样本期望与模型期望相同:

    clip_image012

    另外:

    clip_image014

    (3)求解:运用拉格朗日乘数法,求解出条件随机场的分布形式如下:

    clip_image016

    4 CFR与HMM的比较

    一般序列分类模型常常采用隐马模型(HMM), 像基于类的中文分词, 但隐马模型中存在两个假设: 输出独立性假设和马尔可夫性假设.


     其中, 输出独立性假设要求序列数据严格相互独立才能保证推导的正确性, 而事实上大多数序列数据不能 被表示成一系列独立事件.


     而条件随机场则使用一种概率图模型, 具有表达长距离依赖性和交叠性特征的能力, 能够较好地解决标注(分类)偏置等问题的优点, 而


    且所有特征可以进行全局归一化, 能够求得全局的最优解。


    CRF就像一个反向的隐马尔可夫模型(HMM),两者都是用了马尔科夫链作为隐含变量的概率转移模型,只不过HMM使用隐含


    变量生成可观测状态,其生成概率有标注集统计得到,是一个生成模型;而CRF反过来通过可观测状态判别隐含变量,其概率亦通


    过标注集统计得来,是一个判别模型。由于两者模型主干相同,其能够应用的领域往往是重叠的,但在命名实体、句法分析等领域


    CRF更胜一筹。当然你并不必须学习HMM才能读懂CRF,但通常来说如果做自然语言处理,这两个模型应该都有了解。 


    CRF详细的介绍和公式推导推荐这个PPT教程:http://wenku.baidu.com/view/f32a35d2240c844769eaee55.html。 

    另外推荐一篇HMM应用于中文分词的一篇易读的入门教程,非常形象:http://blog.sina.com.cn/s/blog_68ffc7a40


    100uebv.html 

    下面仅针对专门做自然语言处理的同学做一个快速形象的上手简介,并指出最重要的特征。这里假设你已经有基本的自然语言


    处理概念和马尔科夫链的基本知识。CRF本质上是隐含变量的马尔科夫链+可观测状态到隐含变量的条件概率。说隐含变量和可观测


    状态很抽象,我们以词性标注为例(如果你不知道什么是词性标注,请百度一下),在词性标注中词性标签就是隐含变量,具体的


    词语就是可观测状态,词性标注的目的是通过可观测到的一个个单词推断出来每个单词应该被赋予的词性标签。下文将用词性标签


    和词语代替上述两个名词。 

    先说马尔科夫链,这里体现了CRF的随机场特征(准确的说是马尔科夫随机场)。这里CRF和HMM都假设词性标签是满足马


    尔科夫性的,即当前词性仅和上一个词性有概率转移关系而与其它位置的词性无关,比如形容词后面跟形容词的概率是0.5,跟修饰


    性“的”的概率为0.5,跟动词的概率为0。因此,通过在一个标注集上进行统计,我们很容易得到一个概率转移矩阵,即任意词性A


    后紧邻任意词性B的概率都可以被统计出来。对HMM来说这部分就结束了,对CRF来说,可以在二维条件转移矩阵基础上再增加一


    维词语特征,如“当AB相邻,A是动词且B单词长度超过3时,B是名词的概率是xx"。大家可能注意到了马尔科夫链的窗口为1,即它


    仅考虑上1个词,这不见得是最合理的。这其实是一个对特征稀疏问题的折中,可以想象仅对两个词性AB统计P(B|A)能够得到很多数


    据的反馈,而如果统计长度为6的窗口,如P(G | ABCDEF)就会遇到数据稀疏的问题,因为很可能序列ABCDEF根本就没有在数据集


    中出现过.数据稀疏对机器学习的影响是巨大的,因此马尔科夫链实际以损失一定全局信息的基础上换来了更饱满的数据,实验证明


    这笔交易在词性标注时是赚的。 

    再说词性与词语直接的映射概率,这里体现了CRF的条件特征。如果是HMM,这里会直接统计词性-->单词的条件概率矩阵,


    比如 ”动词“ 生成 ”发射“ 的概率可能为1.5%,而生成”微软“ 的概率为0. 然后对于每一种可能的词性序列结合与条件概率相


    乘就能得到每一个候选序列的生成概率,然而取概率最高的作为标注结果即可。而CRF正好反过来,CRF通过发掘词语本身的特征


    (如长度,大小写,匹配特定词表等,也可以包括词语本身),把每个词语转化成为一个一维特征向量(vector),然后对于每个特征


    计算特征到词性的条件概率,这样每个词语对候选词性的条件概率即为所有特征条件概率的加和。比如我们假设特征向量只有两


    个,且P ( ”词语长度>3" --> 名词词性)的概率为0.9, P("词语位于句子末尾“ --> 名词词性)概率为0.4,且一个词恰好满足这


    两个特征,则其为名词的条件概率为 (0.9 + 0.4) / 2 = 0.65. 这样,CRF根据这个条件转移数值再结合词性的马尔科夫特性,就可以


    使用与HMM类似的方法寻找最优的词性标注序列了。 


    优点:

    (1)CRF没有HMM那样严格的独立性假设条件,因而可以容纳任意的上下文信息。特征设计灵活(与ME一样) ————与HMM比较

    (2)同时,由于CRF计算全局最优输出节点的条件概率,它还克服了最大熵马尔可夫模型标记偏置(Label-bias)的缺点。 ­­————与MEMM比较

    (3)CRF是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。

    ————与ME比较

    缺点:训练代价大、复杂度高

    5 应用

     条件随机场理论(CRFs)可以用于序列标记、数据分割、组块分析等自然语言处理任务中。在中文分词、中文人名识别、歧义消解等汉语自然语言处理任务中都有应用,表现很好。

    在线性链CRF上, 这个计算任务可以用一般的Viterbi算法来有效地完成.

    目前我发现的关于CRF的实现有:

    * CRF++(http://crfpp.sourceforge.net/)

    * Pocket CRF(http://sourceforge.net/project/showfiles.php?group_id=201943)

    关于CRF简介及代码实现的网址:http://www.inference.phy.cam.ac.uk/hmw26/crf/#software

    条件随机场(CRF)识别命名实体



    展开全文
  • 当得到车道实例(即知道哪些像素属于哪条车道)后,就需要对每条线参数描述。 曲线拟合 算法作为这个参数描述,流行的拟合模型有三次多项式,样条曲线,回旋曲线。为了提高拟合质量且保持计算效率,通常将图像转到...

     

    本文讲解的是用于车道线检测的一个网络结构叫lanenet,

    转载请备注,多谢哈|!

     

    2018.2发表出来的,文章下载地址https://arxiv.org/abs/1802.05591

    github上代码https://github.com/MaybeShewill-CV/lanenet-lane-detection

    官方训练的模型文件(我下载的官方模型是2019.6.26 版本的)我上传至百度盘了(造福翻墙不了的朋友):

    链接:https://pan.baidu.com/s/1xlELGM0O9K1U8bITlxUjnA 提取码:o3g3

     

     

     

    论文标题:Towards End-to-End Lane Detection: an Instance Segmentation Approach
    作者:Davy Neven Bert De Brabandere Stamatios Georgoulis Marc Proesmans Luc Van Gool ESAT-PSI, KU Leuven

     

     

     

    摘要——当今很多车都带有辅助驾驶员的驾驶的功能,比如车道保持功能。该功能能使车辆保持在车道间的适当位置,这个功能对于有潜在车道偏离或者自动驾驶中的轨迹规划和决策都至关重要。传统的车道检测方法依赖于高度定义化,手工特征提取和启发式方法,通常是需要后处理技术,而这往往会使得计算量大,不利于道路场景多变下的应用扩展。最近越来越多的方法是借助深度学习建模,为像素级的车道分割做训练,即使当在大的感受野中并无车道标记的存在。尽管这类方法有他们的优势,但他们受限于检测一个预训练的,固定数量的车道线(比如本车道)问题,且无法处理车道变化。 本文,我们突破了前面提到的限制,将车道检测问题转为实例分割问题,从而每个车道线各自形成一个实例,这样就能够实现端到端的训练了。在分割车道线用于拟合车道之前,我们进一步提出采用一个已学习好的透视变换,在图像上做这种调整,与固定的鸟瞰图做对比。通过这么做,我们确保在道路平面变化下的车道线拟合的鲁棒性,不同于现有依赖于固定的且预先定义的透视变换矩阵的方法。总结就是,我们提出了一种快速车道检测的算法,运行帧率达50fps,能够处理多数车道和车道变换。本算法在tuSimple数据集中验证过且取得较有优势的结果。

     

     

     

    1.介绍(本人不做一字不漏的翻译,挑重点的写出来)

    传统车道线检测方法(如下)主要依赖于高度定义化,手工特征提取和启发式方法以确保车道线分割出来。

     

     

    [4] A. Borkar, M. Hayes, M. T. Smith, A Novel Lane Detection System With Efficient Ground Truth Generation. IEEE Trans. Intelligent Transportation Systems, vol. 13, no. 1, pp. 365-374, 2012.

    [9] H. Deusch, J. Wiest, S. Reuter, M. Szczot, M. Konrad, K. Dietmayer, A random finite set approach to multiple lane detection. ITSC, pp. 270-275, 2012.

    [15] J. Hur, S.-N. Kang, S.-W. Seo, Multi-lane detection in urban driving environments using conditional random fields. Intelligent Vehicles Symposium, pp. 1297-1302, 2013.

    [17] H. Jung, J. Min, J. Kim, An efficient lane detection algorithm for lane departure detection. Intelligent Vehicles Symposium, pp. 976-981, 2013.

    [33] H. Tan, Y. Zhou, Y. Zhu, D. Yao, K. Li, A novel curve lane detection based on Improved River Flow and RANSA. ITSC, pp. 133-138, 2014.

    [35] P.-C. Wu, C.-Y. Chang, C.-H. Lin, Lane-mark extraction for automobiles under complex conditions. Pattern Recognition, vol. 47, no. 8, pp. 2756-2767, 2014.

     

     

    较为常见的手工特征提取是基于颜色的,结构的,bar filter, ridge feature等,结合hough 变换和粒子滤波或Kalman滤波。当识别出车道线之后,利用后处理技术过滤掉误检和成组分割在一起的情况以得到最终车道线。
    整体的车道检测系统可参考这篇文章:[3] A. Bar-Hillel, R. Lerner, D. Levi, G. Raz, Recent progress in road and lane detection: a survey. Mach. Vis. Appl., vol. 25, no. 3, pp. 727-745, 2014.
    最近出现的方法是用深度网络做dense 预测以替代人工提取特征的方法,比如像素级的车道线分割。下面是当前深度网络相关研究——

    Gopalan等人用像素-层次结构特征描述子来做上下文信息建模并且用增强算法来选择相关上下文信息特征做车道标记检测。Kim and Lee 将CNN和RANSAC 算法结合从边缘图像来检测车道,他们用CNN主要是为了图像增强,而且只有在道路场景复杂情况下,例如路边树,栅栏或十字路口。

    Huval等人提出现有的CNN模型能用于高速自动驾驶,得到端到端的CNN能够用于车道检测与分类。

    He等人介绍了一种双视觉CNN网络-DVCNN,利用前视和俯视图像可排除误检和去除非车道结构的目标。

    Li等人利用多目标深度卷积网络用于寻找车道的几何结构属性(如位置,方向)并结合RNN来检测车道线。

    Lee等提出多任务网络能同时检测和识别车道和道路标记,即便在不好天气和低光照条件。

    【上诉深度网络类方法的共性问题】然而产生的二值化车道线分割图仍需要分离到不同的车道实例中。为处理这个问题,一些方法采用后处理来解决,主要是用启发式的方法,比如几何特性。但启发式方法计算量大且受限于场景变化鲁棒性问题。另一条思路是将车道检测问题转为多类别分割问题,每条车道属于一类,这样能实现端到端训练出分类号的二进制图。但该方法受限于只能检测预先定义的,固定数量的车道线。此外,由于每个车道都有一个指定的类别,所以它无法处理车道的变化。

     

     

     

    论文思路:受语义分割和实例分割任务中dense预测的启发,将车道检测问题转为实例分割问题,每个车道线形成独立的实例,但都属于车道线这个类别。我们设计了一个带分支结构的多任务网络,如车道实例分割,由一个车道分割分支和一个车道embedding分支构成能够实现端到端训练。车道分割分支输出两类:背景或车道线;车道embedding分支进一步将分割后得到的车道线分离成不同车道实例。
    当得到车道实例(即知道哪些像素属于哪条车道)后,就需要对每条线做参数描述。曲线拟合算法作为这个参数描述,流行的拟合模型有三次多项式,样条曲线,回旋曲线。为了提高拟合质量且保持计算效率,通常将图像转到鸟瞰图后做拟合。最后再逆变换到原图即可。但有个问题是:这个透视变换矩阵会受地面线影响(如上坡)。本文在做曲线拟合前先训练一个网络用于生成透视变换矩阵系数以解决道路平面变动的影响。论文模型的主框架如下图:

     

     

    文章作者对论文的总结如下:

     

     

    2. 方法

     

    A lanenet网络

    二值化分割
    上图中的下面那个分支就是用于训练输出得到一个二值化的分割图,白色代表车道线,黑色代表背景。为了构建GT分割图,我们将每天车道线的对应像素连成线,这么做的好处是即使车道线被遮挡了,网络仍能预测车道位置。给分割网络用标准的交叉熵损失函数做训练的。由于目标类别是2类(车道/背景)高度不平衡(我的理解就是背景较车道线的像素多太多),我们应用 bounded inverse class weighting。可参考论文:[29] A. Paszke, A. Chaurasia, S. Kim, E. Culurciello, ENet: A deep neural network architecture for real-time semantic segmentation. CoRR abs/1606.02147, 2016.

     

    实例分割
    当分割分支识别得到车道后,为了分离车道像素(就是为了知道哪些像素归这条,哪些归那条车道),我们训练训练了一个车道instance embedding分支网络(上图上面那个网络)。我们用基于one-shot的方法做距离度量学习(参考论文:[5] B. De Brabandere, D. Neven, L. Van Gool. CoRR abs/1708.02551, 2017.),该方法易于集成在标准的前馈神经网络中,可用于实时处理。利用聚类损失函数,instance embedding分支训练后输出一个车道线像素点距离,归属同一车道的像素点距离近,反之远,基于这个策略,可聚类得到各条车道线。具体实现的原理是

    就是说有两股力在做较量,一股是方差项,主要是将每个embedding往某条车道线的均值方向拉(激活拉这个动作的前提是embedding太远了,远于阈值δv就开始pull),另一股是距离项,就是使两个类别的车道线越远越好(激活推这个动作的前提是两条车道线聚类中心的距离太近啦,近于阈值δd就push)。最后这个总损失函数L的公式如下:

     

     

     

     

    终止聚类的条件是:车道聚类(即各车道线间间距)中心间距离>δd,每个类(每条车道线)中包含的车道线像素离该车道线距离<δv
    Once the network has converged, the embeddings of lane pixels will be clustered together (see fig. 2), so that each cluster will lay further than δd from each other and the radius of each cluster is smaller than δv.

     

     

    聚类
    设置 δd > 6δv为迭代终止条件,使上述的loss做迭代。
    架构
    网络共享前面两个stage。分割分支输出单通道的图像。embedding分支输出N通道的图像。每个分支的权重相同。

    LaneNet only shares the first two stages (1 and 2) between the two branches,leaving stage3 of the ENet encoder and the full ENet decoder as the backbone of each separate branch. The last layer of the segmentation branch outputs a one channel image (binary segmentation), whereas the last layer of the embedding branch outputs a N-channel image, with N the embedding dimension. This is schematically depicted in Fig. 2. Each branch’s loss term is equally weighted and back-propagated through the network.

     

     

     

    B 用H-NET做车道线曲线拟合
    lanenet网络输出的是每条车道线的像素集合。常规处理是将图像转为鸟瞰图,这么做的目的就是为了做曲线拟合时弯曲的车道能用2次或3次多项式拟合(拟合起来简单些)。关于这个变换矩阵的问题上面已经描述过了,意思就是通过H-Net网络学习得到的变换矩阵参数适用性更好(可看下图)。

     

     

    其中转换矩阵H是拥有6个自由度的矩阵。

     

    曲线拟合:

     

     

    这部分讲的有点细,大致意思就是将原图上车道线像素点P通过H-Net学习得到的变换矩阵H,变换到俯视图下的像素点坐标P'。在变换后的图像上通过给定的y'算出对应的x',将x'通过H得到变换前原图上对应坐标x。拟合的思想是用最小平方项拟合。那么loss的定义就是反推回来的x和原图上真实的x的差方。

     

     

    其中H-Net结构构件由连续的3x3卷积,batchnorm和ReLU构成,用的是最大池化,最后有2个全连接层。具体见下图——

     

    测试数据集

     

     

    用的是TuSimple的车道线数据集,3626张训练图像和2782张测试图像,采集自较好和稍好的气候情况。包含白天不同时刻2,3,4车道或较多的高速道路。每张图都提供了该图前19帧图像(不过这19帧是未标注的),标注的图像是json格式的。指示在许多离散的y坐标上对应的x位置。每张图包含当前车道(左右车道)的车道线标准信息(共计4条线),测试集也如此,当改变车道时,会出现第5条车道线。
    准确性的定义是每张图gt点数中正确点所占的比例。所谓预测正确的点是那些与gt点距离小于一定阈值的就认为预测准确。作者还给出False positive和false negative的定义作为模型好坏的评测标注。

     

     

     

     

     

     

    模型网络设置(帧率达50fps)

    LaneNet

    embedding维度是4(输出4通道),δv=0.5,δd=3,输入图像resize到512x256,采用Adam优化器,batchsize=8,学习率=5e-4;

     

     

    H-Net

    3阶多项式,输入图像128x64,Adam优化器,batchsize=10,学习率=5e-5;

     

     

    作者最后的结论就是用H-Net比用固定的转换矩阵要好,用3阶多项式拟合要比2阶好,用了透视变换比不用好~总之当前模型框架要出色。

     

    展开全文
  • PGM:有向图模型:贝叶斯网络

    万次阅读 2016-09-09 17:26:10
    http://blog.csdn.net/pipisorry/article/details/52489270为什么用贝叶斯网络联合分布的显式表示Note: n个变量的联合分布,每个x对应两个值,共n个x,且所有概率总和为1,则联合分布需要2^n-1个参数。贝叶斯表示...

    http://blog.csdn.net/pipisorry/article/details/52489270

    为什么用贝叶斯网络

    联合分布的显式表示

    Note: n个变量的联合分布,每个x对应两个值,共n个x,且所有概率总和为1,则联合分布需要2^n-1个参数。

    贝叶斯网表示

    独立性质的应用会降低参数数目,表达更紧凑。

    [PGM:贝叶斯网表示之朴素贝叶斯模型naive Bayes :独立性质的利用]

    皮皮blog



    贝叶斯网络

        贝叶斯网络(Bayesian network),又称信念网络(Belief Network),或有向无环图模型(directed acyclic graphical model),是一种概率图模型,于1985年由Judea Pearl首先提出。它是一种模拟人类推理过程中因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG)。 

        贝叶斯网络的有向无环图中的节点表示随机变量,它们可以是可观察到的变量,或隐变量、未知参数等。认为有因果关系(或非条件独立)的变量或命题则用箭头来连接。若两个节点间以一个单箭头连接在一起,表示其中一个节点是“因(parents)”,另一个是“果(children)”,两节点就会产生一个条件概率值。总而言之,连接两个节点的箭头代表此两个随机变量是具有因果关系,或非条件独立。

        例如,假设节点E直接影响到节点H,即E→H,则用从E指向H的箭头建立结点E到结点H的有向弧(E,H),权值(即连接强度)用条件概率P(H|E)来表示,如下图所示:

        简言之,把某个研究系统中涉及的随机变量,根据是否条件独立绘制在一个有向图中,就形成了贝叶斯网络。其主要用来描述随机变量之间的条件依赖,用圈表示随机变量(random variables),用箭头表示条件依赖(conditional dependencies)。

    贝叶斯网的边的指向代表节点对其指向节点的直接影响

    模型:联合概率的表示

        令G = (I,E)表示一个有向无环图(DAG),其中I代表图形中所有的节点的集合,而E代表有向连接线段的集合,且令X = (Xi)i ∈ I为其有向无环图中的某一节点i所代表的随机变量,若节点X的联合概率可以表示成:

    则称X为相对于一有向无环图G 的贝叶斯网络,其中, 表示节点i之“因”,或称pa(i)是i的parents(父母)。 
    此外,对于任意的随机变量,其联合概率可由各自的局部条件概率分布相乘而得出:
        

    更复杂的学生示例


    Note: 这里给出的概率都是条件概率而不是联合概率,如i0, d0  g1值0.3表示p(g1 | i0, d0)。
    且从图中可知,这里I和D是独立的。

    局部概率模型



    模型表示



     推理模式

    考虑贝叶斯网Bstudent,并观察当证据获得时各种事件的概率如何变化。
    当我们只有部分证据时,要想推理某个概率,要对结果进行重新归一化。

    因果推理和预测



    p(l1)概率值的推导过程:


    p(l1 | i0)的推导过程:


    证据推理和解释


    解释消除

    相同结果的不同原因可以互相影响。


    贝叶斯网的基本独立性:局部独立性

    节点只直接依赖其父节点是贝叶斯网语义的核心



    但是G和L还是有关系的

    给定节点父节点时,搜索独立性时实际上搜索的是边缘独立性。


    直觉告诉我们,变量的父节点将其从具有因果关系的性质的概率影响中屏蔽了。也就是说,一旦知道了一个 节点的父节点的值,那么与其父节点或其它祖先节点直接或间接相关的任何信息都不会影响到该节点的可信度。不过,与其后代节点相关的信息仍然可以通过证据推理过程来改变我们关于它的判断。

    贝叶斯网语义


    图与分布

    {CPD参数化有向图,给图结构关联一个参数集}
    贝叶斯网图的形式化语义是一系列独立性断言。另一方面,学生贝叶斯网是由条件概率分布作注释的图,这个图通过链式法则为贝叶斯网定义了一个联合分布。这里将证明这两个定义实际上是等价的。分布P满足与图G相关的局部独立性,当且仅当P可以由与图G相关的一系列条件概率分布表示。

    I-MAP

    与P相关的独立性集合。

    Note: 这个定义,尤其是I(G)包含于I(P)这个表示,说明G上的独立性P都满足,但是反过来P上的独立性G不一定都满足。
    Note: 关于贝叶斯网,I-map的概念本身是不充分的:完备图意味着不存在独立性假设,因此是任意分布的一个I-map。

    I-MAP到因子分解


    由贝叶斯网的条件独立性假设,有下式成立

    结果告诉我们, 联合分布中的任何表值都可以通过每个变量所对应的因子的乘积来计算。每个因子表示一个变量在网络中给定父节点时的条件概率。在G是I-MAP条件下,这种因子分解可以应用于任何分布P。
    贝叶斯网链式法则和局部概率模型

    Note: 条件概率链式法则


    独立参数个数

    学生示例中15个独立参数,联合分布的完全赋值需要47个独立参数。
    更一般的

    因子分解到I-MAP





    知识工程

    变量选择






    概率选择





    皮皮blog



    图中的独立性:全局独立性

    贝叶斯网中的独立性的两种定义:局部独立性(给定父节点条件下,每个节点都独立于它的非后代节点)和由d-分离导出的全局独立性。这两种独立性集合间相互蕴含,实际上是等价的。

    d-分离

    了解何时可以保证独立性条件 在与贝叶斯网结构G相关的分布中成立。尝试理解在变量Z的证据存在的条件下,何时考虑变量X的一个观察值有可能改变我们对Y的判断。
     

    1 直接连接



    2 间接连接

    间接的因果作用图a(间接的证据作用图b)
    如果可以观察到Z,那么X不会通过Z作用于Y(那么Y不会通过Z作用于X)。
    共同的原因图c


    X可以通过Z来影响Y,仅限于没有观察到Z的以情形。
    共同的作用d

    如果没有观察到中间节点Z,那么影响无法沿着迹X->Z<-Y流动。



    如果观察到中间节点Z或者其子节点,那么影响就沿着迹X->Z<-Y流动。

    有效迹


    全局马尔可夫独立性:d-分离



    可靠性与完备性


    可靠性soundness:如果给定某个Z时,找到两个节点X与Y是d-分离的,那么可以保证,在给定Z时它们实际上是条件独立的。
    互补性质 完备性completness: d-分离可以检测出所有可能的独立性。如果两个变量X和Y,且它们在给定Z时相互独立,那么它们是d-分离的。
    。。。

    d-分离算法
    。。。
    I-等价性
    。。。

    从分布到图

    最小i-map

    找到分布P的图的一种方法是简单地给出P的任何一个I-map图。

    。。。

    p-map

    在给定的分布P中找到可以准确刻画所有独立性的图G。

    。。。
    发现p-map
    。。。
    皮皮blog



    贝叶斯网络图模型的表示2

        为了理解有向图对于描述概率分布的作用,首先考虑三个变量 a, b, c 上的一个任意的联合分布 p(a, b, c) 。注意,现阶段我们不需要对这些变量做出任何更多的假设,例如它们是离散的还是连续的。实际上,图模型的一个强大的方面是,一个具体的图可以描述一大类概率分布。通过使用概率的乘积规则(1.11),我们可以将联合概率分布写成下面的形式。
    p(a, b, c) = p(c | a, b)p(a, b)            (8.1)
    再次使用乘积规则,这次处理方程(8.1)右侧的第二项,我们有
    p(a, b, c) = p(c | a, b)p(b | a)p(a)           (8.2)
    注意,这个分解方法对于任意的联合概率分布的选择都成立。

    简单的图模型表示

        现在,我们使用一个简单的图模型表示方程(8.2)的右侧,如下所述。首先,我们为每个随机变量 a, b, c 引入一个结点,然后为每个结点关联上公式(8.2)右侧的对应的条件概率。然后,对于每个条件概率分布,我们在图中添加一个链接(箭头),链接的起点是条件概率的条件中的随机变量对应的结点。因此,对于因子 p(c | a, b) ,会存在从结点 a, b 到结点 c 的链接,而对于因子 p(a) ,没有输入的链接。结果就是图8.1中的图。如果存在一个从结点 a 到结点 b 的链接,那么我们说结点 a 是结点 b 的父结点,结点 b 是结点 a 的子结点。注意,我们不会形式化地区分结点和结点对应的变量,而是简单地使用同样的符号表示两者。关于公式(8.2),很有趣的一点是,它的左侧关于三个变量 a, b, c 是对称的,而右侧不是。实际上,通过进行公式(8.2)的分解,我们隐式地选择了一个特定的顺序(即 a, b, c )。如果选择一个不同的顺序,我们会得到一个不同的分解方式,因此就得到一个不同的图表示形式。

    K变量联合概率分布的图模型表示

        我们将图8.1给出的例子扩展到 K 个变量的联合概率分布 p(x 1 , . . . , x K ) 。通过重复使用概率的乘积规则,联合概率分布可以写成条件概率的乘积,每一项对应一个变量,形式如下
    p(x 1 , . . . , x K ) = p(x K | x 1 , . . . , x K−1 ) . . . p(x 2 | x 1 )p(x 1 )    (8.3)
    对应一个给定的 K ,我们可以将其表示为一个具有 K 个结点的有向图,每个结点对应于公式(8.3)右侧的一个条件概率分布,每个结点的输入链接包括所有以编号低于当前结点编号的结点为起点的链接。我们说,这个图是全连接的( fully connected ),因为每对结点之间都存在一个链接。

    缺失连接图表示

        目前为止,我们操作的对象是一个完全一般的联合概率分布,从而分解方式以及对应的全连接图表示,可以应用于概率分布的任意选择。正如我们将会看到的,真正传递出图表示的概率分布的性质的有趣信息的是图中链接的缺失( absence )。考虑图8.2的图。这不是一个全连接的图,因为从 x 1 到 x 2 或者从 x 3 到 x 7 之间不存在链接。
    现在,我们将根据这幅图,写出对应的联合概率表达式。联合概率表达式由一系列条件概率的乘积组成,每一项对应于图中的一个结点。每个这样的条件概率分布只以图中对应结点的父结点为条件。例如, x 5 以 x 1 和 x 3 为条件。于是,7个变量的联合概率分布为

    p(x 1 )p(x 2 )p(x 3 )p(x 4 | x 1 , x 2 , x 3 )p(x 5 | x 1 , x 3 )p(x 6 | x 4 )p(x 7 | x 4 , x 5 )        (8.4)

    有向图和变量的概率分布间的一般关系

        我们现在说明给定的有向图和变量上对应的概率分布之间的一般关系。在图的所有结点上定义的联合概率分布由每个结点上的条件概率分布的乘积表示,每个条件概率分布的条件都是图中结点的父结点所对应的变量。因此,对于一个有 K 个结点的图,联合概率为

    其中, pa k 表示 x k 的父结点的集合, x = {x 1 , . . . , x K } 。这个关键的方程表示有向图模型的联合概率分布的分解( factorization )属性。虽然我们之前考虑的情况是每个结点对应于一个变量的情形,但是我们可以很容易地推广到让图的每个结点关联一个变量的集合,或者关联向量值的变量。很容易证明,如果公式(8.5)右侧的每一个条件概率分布都是归一化的,那么这个表示方法整体总是归一化的。

    贝叶斯网络的3种结构形式

    对于下面的贝叶斯网络:

    1. x1,x2,…x7的联合分布为


    2. x1和x2独立(对应head-to-head);

    3. x6和x7在x4给定的条件下独立(对应tail-to-tail)。

    D-Separation(D-分离)

        D-Separation是一种用来判断变量是否条件独立的图形化方法。换言之,对于一个DAG(有向无环图)E,D-Separation方法可以快速的判断出两个节点之间是否是条件独立的。

    形式1 head-to-head

    有P(a,b,c) = P(a)*P(b)*P(c|a,b),积分c后可得:

    即在c未知的条件下,a、b被阻断(blocked),是独立的,称之为head-to-head( 因 为 它 连 接 了 两 个 箭 头 的 头)条件独立。

    形式2 tail-to-tail

          


    考虑c未知,跟c已知这两种情况:

        在c未知的时候,有:P(a,b,c)=P(c)*P(a|c)*P(b|c),此时,没法得出P(a,b) = P(a)P(b),即c未知时,a、b不独立。

        在c已知的时候,有:P(a,b|c)=P(a,b,c)/P(c),然后将P(a,b,c)=P(c)*P(a|c)*P(b|c)带入式子中,得到:P(a,b|c)=P(a,b,c)/P(c) = P(c)*P(a|c)*P(b|c) / P(c) = P(a|c)*P(b|c),即c已知时,a、b独立。

    所以,在c给定的条件下,a,b被阻断(blocked),是独立的,称之为tail-to-tail条件独立。

    Any node is d-seperated from its non-descendants given its parents.父节点已知后,其它节点就不能通过父节点影响该节点的值了。

    形式3 head-to-tail

         

    还是分c未知跟c已知这两种情况:

        c未知时,有:P(a,b,c)=P(a)*P(c|a)*P(b|c),但无法推出P(a,b) = P(a)P(b),即c未知时,a、b不独立。

        c已知时,有:P(a,b|c)=P(a,b,c)/P(c),且根据P(a,c) = P(a)*P(c|a) = P(c)*P(a|c),可化简得到:

    所以,在c给定的条件下,a,b被阻断(blocked),是独立的,称之为head-to-tail条件独立。

    head-to-tail其实就是一个链式网络:

    马尔科夫链(Markov chain)

        根据head-to-tail,在xi给定的条件下,xi+1的分布和x1,x2…xi-1条件独立。意味着xi+1的分布状态只和xi有关,和其他变量条件独立。也就是当前状态只跟上一状态有关,跟之前的状态无关。这种顺次演变的随机过程,就叫做马尔科夫链(Markov chain)。也就是:

    D-Separation的3种情况的总结

    {即贝叶斯网络的3种结构形式}

     

    head-to-tail,给定 T 时,A 和 X 独立;tail-to-tail,给定S时,L和B独立;head-to-head,未给定D时,L和B独立。

    有向图d-划分性质的一般叙述

        考虑一个一般的有向图,其中 A, B, C 是任意无交集的结点集合(它们的并集可能比图中结点的完整集合要小)。我们希望弄清楚,一个有向无环图是否暗示了一个特定的条件依赖表述。我们考虑从 A 中任意结点到 B 中任意结点的所有可能的路径。
    我们说这样的路径被“阻隔”,如果它包含一个结点满足下面两个性质中的任何一个:
        • 路径上的箭头以头到尾或者尾到尾的方式交汇于这个结点,且这个结点在集合 C 中,也就是A和B的“head-to-tail型”和“tail-to-tail型”路径都通过C。
        • 箭头以头到头的方式交汇于这个结点,且这个结点和它的所有后继都不在集合 C 中,也就是A和B的“head-to-head型”路径不通过C以及C的子孙。
    如果所有的路径都被“阻隔”(上面两个条件均满足),那么我们说 C 把 A 从 B 中 d -划分开,且图中所有变量上的联合概率分布将会满足

    Note: 这里C是已知的,A和B的“head-to-tail型”和“tail-to-tail型”路径都通过C则AB条件独立;A和B的“head-to-head型”路径不通过C以及C的子孙,否则根据1在C已知的情况下AB就不独立了。

    皮皮blog


    示例:贝叶斯多项式回归

    1.2.6曲线拟合问题

        在曲线拟合问题中,我们知道训练数据 x 和 t ,以及一个新的测试点 x ,我们的目标是预测 t 的值。因此我们想估计预测分布 p(t | x, x, t) 。这里我们要假设参数 α 和 β 是固定的,事先知道的(后续章节中我们会讨论这种参数如何通过贝叶斯方法从数据中推断出来)。简单地说,贝叶斯方法就是自始至终地使用概率的加和规则和乘积规则。因此预测概率可以写成下面的形式

    p(t | x, x, t)  = ∫p(t | x, w)p(w | x, t) d w

    随机变量联合概率分布的表示

        作为有向图描述概率分布的一个例子,我们考虑1.2.6节介绍的贝叶斯多项式拟合模型。这个模型中的随机变量是多项式系数向量 w 和观测数据 t = (t 1 , . . . , t N ) T 。此外,这个模型包含输入数据 x = (x 1 , . . . , x N ) T 、噪声方差 σ 2 以及表示 w 的高斯先验分布的精度的超参数 α 。所有这些都是模型的参数而不是随机变量。
    现阶段我们只关注随机变量,我们看到联合概率分布等于先验概率分布 p(w) 与 N 个条件概率分布 p(t n | w) 的乘积( n = 1, . . . , N ),即
    (lz:8.6和p(w | x, t)是正比的)
    图模型表示的联合概率分布如图8.3所示。

    复杂模型的板( plate )表示

        当我们开始处理更加复杂的模型时,我们会看到,像图8.3那样显式地写出 t 1 , . . . , t N 的结点是很不方便的。于是,我们引入一种图结构,使得多个结点可以更简洁地表示出来。这种图结构中,我们画出一个单一表示的结点 t n ,然后用一个被称为板( plate )的方框圈起来,标记为 N ,表示有 N 个同类型的点。用这种方式重新表示图8.3,我们得到了图8.4所示的图。

    显式表示参数和随机变量

        我们有时会发现,显式地写出模型的参数和随机变量是很有帮助的。此时,公式(8.6)就变成了

    对应地,我们可以在图表示中显式地写出 x 和 α 。为了这样做,我们会遵循下面的惯例:随机变量由空心圆表示,确定性参数由小的实心圆表示。如果我们让图8.4包含确定性参数,我们就得到了图8.5。

    观测变量和潜在变量

        当我们将图模型应用于机器学习或者模式识别的问题中时,我们通常将某些随机变量设置为具体的值,例如将变量 {t n } 根据多项式曲线拟合中的训练集进行设置。在图模型中,我们通过给对应的结点加上阴影的方式来表示这种观测变量( observed variables )。于是,图8.5所示的图中,如果 {t n } 是观测变量,那么就变成了图8.6。注意, w 不是观测变量,因此 w 是潜在变量( latent variable )的一个例子。潜在变量也被称为隐含变量( hidden variable )。

    系数 w 的的后验概率

    观测到了 {t n } 的值,如果必要的话,我们可以计算系数 w 的的后验概率。现阶段,我们注意到,这是贝叶斯定理的一个直接应用。

    观测数据为条件的t 的概率分布

    其中,我们再一次省略了确定性参数,使得记号简洁。

    通常,我们对于 w 这样的参数本身不感兴趣,因为我们的最终目标是对输入变量进行预测。假设给定一个输入值 x ,我们想找到以观测数据为条件的对应的 t 的概率分布。描述这个问题的图模型如图8.7所示。以确定性参数(x)为条件,这个模型的所有随机变量(t, w)的联合分布为

    然后,根据概率的加和规则,对模型参数 w 积分,即可得到 t 的预测分布

    其中我们隐式地将 t 中的随机变量设置为数据集中观测到的具体值。


    皮皮blog



    生成式模型

    祖先取样( ancestral sampling )

        许多情况下,我们希望从给定的概率分布中抽取样本。这里简要介绍祖先取样( ancestral sampling ),与图模型特别相关。考虑 K 个变量的一个联合概率分布 p(x 1 , . . . , x K ) ,它根据公式(8.5)进行分解,对应于一个有向无环图。我们假设变量已经进行了排序,从而不存在从某个结点到序号较低的结点的链接。换句话说,每个结点的序号都大于它的父结点。我们的目标是从这样的联合概率分布中取样 x 1 , . . . , x K

    为了完成这一点,我们首先选出序号最小的结点,按照概率分布 p(x 1 ) 取样,记作 x 1 。然后,我们顺序计算每个结点,使得对于结点 n ,我们根据条件概率 p(x n | pa n ) 进行取样,其中父结点的变量被设置为它们的取样值。注意,在每个阶段,这些父结点的变量总是可以得到的,因为它们对应于已经采样过的序号较小的结点。按照具体的概率分布的取样方法将会在第11章详细讨论。一旦我们对最后的变量 x K 取样结束,我们就达到了根据联合概率分布取样的目标。为了从对应于变量的子集的边缘概率分布中取样,我们简单地取要求结点的取样值,忽略剩余结点的取样值。例如,为了从概率分布 p(x 2 , x 4 ) 中取样,我们简单地对联合概率分布取样,然后保留 x 2 , x 4 ,丢弃剩余的值 {x j̸ =2,4 } 。

    概率模型的实际应用

        对于概率模型的实际应用,通常的情况是,数量众多的变量对应于图的终端结点(表示观测值),较少的变量对应于潜在变量。潜在变量的主要作用是使得观测变量上的复杂分布可以表示为由简单条件分布(通常是指数族分布)构建的模型。

    我们可以将这样的模型表示为观测数据产生的过程。例如,考虑一个模式识别的任务,其中每个观测值对应于一幅图像(由像素灰度值的向量组成)。这种情况下,潜在变量可以看成物体的位置或者方向。给定一个特定的观测图像,我们的目标是找到物体上的后验概率分布,其中我们对于所有可能的位置和方向进行了积分。我们可以使用图8.8的图模型表示这个问题。

    The image (a vectorof pixel intensities) has a probability distribution thatis dependent on the identity of the object as well ason its position and orientation.

    生成式模型( generative model )

        图模型描述了生成观测数据的一种因果关系( causal )过程( Pearl, 1988 )。因此,这种模型通常被称为生成式模型( generative model )。相反,图8.5描述的多项式回归模型不是生成式模型,因为没有与输入变量 x 相关联的概率分布,因此无法从这个模型中人工生成数据点。通过引入合适的先验概率分布 p(x) ,我们可以将模型变为生成式模型,代价是增加了模型的复杂度。

    然而,概率模型中的隐含变量不必具有显式的物理含义。它的引入可以仅仅为了从更简单的成分中建立一个更复杂的联合概率分布。在任何一种情况下,应用于生成式模型的祖先取样方法都模拟了观测数据的创造过程,因此可以产生“幻想的”数据,它的概率分布(如果模型完美地表示现实)与观测数据的概率分布相同。在实际应用中,从一个生成式模型中产生人工生成的观测数据,对于理解模型所表示的概率分布形式很有帮助。

    皮皮blog



    离散变量

    {如何在一组离散变量上构建联合概率分布}

        指数族概率分布将许多著名的概率分布当成了指数族分布的特例。虽然指数族分布相对比较简单,但是它们组成了构建更复杂概率分布的基本元件。图模型的框架在表达这些基本元件之间的联系时非常有用。

        如果我们将有向图中的每个父结点-子结点对的关系选为共轭的,那么这样的模型有一些特别好的性质,我们稍后会给出几个例子。两种情形很值得注意,即父结点和子结点都对应于离散变量的情形,以及它们都对应高斯变量的情形,因为在这两种情形中,关系可以层次化地推广,构建任意复杂的有向无环图。我们首先考察离散变量的情形。

    一元离散变量概率分布表达式

        对于有着 K 个可能状态(使用“1- of - K ”表达方式)的一元离散变量 x ,概率 p(x | μ) 为

    (lz:多项式分布)

    并且由参数 μ = (μ 1 , . . . , μ K ) T 控制。由于限制条件 k μ k = 1 的存在,因此为了定义概率分布,只需要指定 K − 1 个 μ k 的值即可。

    多元离散变量概率分布表达式

        现在假设我们有两个离散变量 x 1 和 x 2 ,每个都有 K 个状态,我们项对它们的联合概率分布建模。我们将 x 1k = 1 和 x 2l = 1 同时被观测到的概率记作参数 μ kl ,其中 x 1k 表示 x 1 的第 k 个分量, x 2l 的意义与此相似。联合概率分布可以写成

    由于参数 μ kl 满足限制条件 ,因此这个分布由 K^ 2 − 1 个参数控制。很容易看到,对于 M 个变量的任意一个联合概率分布,需要确定的参数的数量为 K ^M − 1 ,因此随着变量 M 的数量指数增长

    减小模型中独立参数数量

    1 减少图链接

        使用概率的乘积规则,我们可以将联合概率分布 p(x 1 , x 2 ) 分解为 p(x 2 | x 1 )p(x 1 ) ,它对应于一个具有两个结点的图,链接从结点 x 1 指向结点 x 2 ,如图8.9(a)所示。边缘概率分布 p(x 1 ) 与之前一样,由 K − 1 个参数控制。类似地,条件概率分布 p(x 2 | x 1 ) 需要指定 K − 1 个参数,确定 x 1 的 K 个可能的取值。因此,与之前一样,在联合概率分布中,需要指定的参数的总数为 (K − 1) + K(K − 1) = K ^ 2 − 1 。

    现在假设变量 x 1 和 x 2 是独立的,对应于图8.9(b)所示的图模型。这样,每个变量由一个独立的多项式概率分布描述,参数的总数是 2(K − 1) 。对于 M 个独立离散变量上的概率分布,其中每个变量有 K 个可能的状态,参数的总数为 M (K − 1) ,因此随着变量的数量线性增长。从图的角度看,我们通过删除结点之间链接的方式,减小了参数的数量,代价是类别的概率分布受到了限制。

    更一般地,如果我们有 M 个离散变量 x 1 , . . . , x M ,那么我们可以使用有向图来对联合概率分布建模,每个变量对应于一个结点。每个结点的条件概率分布由一组非负参数给出,同时需要满足归一化限制条件。如果图是全连接的,那么我们有一个完全一般的概率分布,这个分布有 K M − 1 个参数。而如果图中不存在链接,那么联合概率分布可以分解为边缘概率分布的乘积,参数的总数为 M (K − 1) 。连接度处于二者之间的图使得模型能够处理比完全分解的概率分布更加一般的概率分布,同时参数的数量比一般的联合概率分布的参数数量少。作为一个说明,考虑图8.10所示的结点链。边缘概率分布 p(x 1 ) 需要 K − 1 个参数,而对于 M − 1 个条件概率分布 p(x i | x i−1 ) (其中 i = 2, . . . , M )需要 K(K − 1) 个参数。从而,参数的总数为 K − 1 + (M − 1)K(K − 1) ,这是 K 的二次函数,并且随着链的长度 M 线性增长(而不是指数增长)。

    2 参数共享

        另一种减小模型中独立参数数量的方法是参数共享(sharing),也被称为参数捆扎(tying)。例如,在图8.10给出的结点链的例子,我们可以使所有的条件概率分布p(xi|xi−1)(其中i=2,...,M)由同样的参数集合K(K−1)。加上控制x1的K−1个参数,为了定义联合概率分布所需指定的参数的总数为K2−1。   

        贝叶斯模型:引入参数的狄利克雷先验

        通过引入参数的狄利克雷先验,我们可以将离散变量上的图模型转化为贝叶斯模型。从图的观点来看,每个结点需要额外的父结点表示对应于每个离散结点的参数。这种情况在图8.11中进行了说明。

    如果我们将控制条件概率分布 p(x i | x i−1 ) (其中 i = 2, . . . , M )的参数进行参数共享,那么对应的模型如图8.12所示。

    3 对条件概率分布使用参数化的模型

        另一种控制离散变量模型参数数量的指数增长的方式是对条件概率分布使用参数化的模型,而不使用条件概率值的完整表格。为了说明这个想法,考虑图8.13所示的图,其中所有的结点表示二值变量。每个父结点变量 x i 由单一参数 μ i 控制,这个参数表示概率 p(x i = 1) ,从而对于 M 个父结点,参数总数为 M 。但是,条件概率分布 p(x 1 , . . . , x M ) 需要 2 M 个参数,每个参数表示 2 M 种父结点变量的可能配置下的概率 p(y = 1) 。因此,通常来说,确定这个条件概率分布的参数的数量会随着 M 指数增长。将 logistic sigmoid 函数作用于父结点变量的线性组合上,我们可以得到一个更加简洁的条件概率分布,形式为


    其中σ(a)=(1+exp(−a))^−1是一个logisticsigmoid函数,x=(x0,x1,...,xM)T是一个(M+1)维向量,表示父结点的M个状态加上一个额外的变量x0,其值被固定为1。w=(w0,w1,...,wM)T是一个M+1个参数的向量。与一般的情形相比,这是一个更加受限形式的条件概率分布,但是参数的数量随着M线性增长。在这种情况下,类似于选择多元高斯分布的协方差矩阵的限制形式(例如对角矩阵)。

    皮皮blog



    线性高斯模型

    {多元高斯分布如何表示为一个对应于成分变量上的线性高斯模型的有向无环图}

        说明多元高斯分布如何表示为一个对应于成分变量上的线性高斯模型的有向无环图。这使得我们在概率分布上施加有趣的结构,这些结构中的两个相反的极端情况是一般的高斯分布和对角化协方差高斯分布。几种广泛使用的方法是线性高斯模型的例子,例如概率主成分分析,因子分析,以及线性动态系统( Roweis and Ghahramani,1999 )。

    多元高斯分布的联合概率分布 p(x)

        考虑 D 个变量上的任意的有向无环图,其中结点 i 表示服从高斯分布的一元连续随机变量 x i 。这个分布的均值是结点 i 的父结点pa i 的状态的线性组合,即


    其中 w ij 和 b i 是控制均值的参数, v i 是 x i 的条件概率分布的方差。这样,联合概率分布的对数为图中所有结点上的这些条件分布的乘积的对数,因此形式为


    其中 x = (x 1 , . . . , x D ) T ,“常数”表示与 x 无关的项。我们看到这是 x 的元素的二次函数,因此联合概率分布 p(x) 是一个多元高斯分布。

    递归计算联合概率分布的均值和方差

        我们可以递归地确定联合概率分布的均值和方差,方法如下。每个变量 x i 的概率分布都是(以父结点状态为条件的)高斯分布,形式为公式(8.11)所示。因此


    其中 ε i 是一个零均值单位方差的高斯随机变量,满足 E[ε i ] = 0 且 E[ε i ε j ] = I ij ,其中 I ij 是单位矩阵的第 i, j 个元素。对公式(8.14)取期望,我们有


    这 样, 从 一 个 序 号 最 低 的 结 点 开 始, 沿 着 图 递 归 地 计 算, 我 们 就 可 以 求出 E[x] = (E[x 1 ], . . . , E[x D ]) T 的各个元素。这里,我们再一次假设所有结点的序号都大于它的父结点的句号。类似地,我们可以使用公式(8.14)和(8.15),以递归的方式得到 p(x) 的协方差矩阵的第 i, j 个元素,即

    因此协方差可以从序号最低的结点开始,递归地计算。

    两 个 极 端 的 情 形

    让 我 们 考 虑 两 个 极 端 的 情 形。
        首 先, 假 设 图 中 不 存 在 链 接, 因 此 图 由 D 个 孤 立 的 结 点组 成。 在 这 种 情 况 下, 不 存 在 参 数 w ij , 因 此 只 有 D 个 参 数 b i 和 D 个 参 数 v i 。 根 据 递 归 关 系(8.15)和(8.16),我们看到 p(x) 的均值为 (b 1 , . . . , b D ) T ,协方差矩阵是一个对角矩阵,形式为diag (v 1 , . . . , v D ) 。联合概率分布总计有 2D 个参数,表示 D 个独立的一元高斯分布组成的集合。

        现在考虑一个全连接的图,其中每个结点的序号都低于其父结点的序号。这样矩阵 w ij 的第 i 行有 i − 1 项,因此矩阵是一个下三角矩阵(主对角线上没有元素)。参数 w ij 的数量从而可以通过下面的方式得到:取 D × D 的元素个数 D^2 ,减去 D ,表示主对角线上没有元素,再除以2,因为矩阵只在对角线下方存在元素,从而参数的总数为 D(D−1)/2。独立参数 {w ij } 加上协方差矩阵中的 {v i } ,因此独立参数的总数为 D(D+1)/2 ,对应于一个一般的对称协方差矩阵。

    复杂度处于两种极端情况之间

        复杂度处于两种极端情况之间的图对应于协方差矩阵取特定形式的联合高斯分布。考虑图8.14中的图,它在变量 x 1 和 x 3 之间不存在链接。使用递归关系(8.15)和(8.16),我们看到联合高斯分布的均值和协方差为



    我们已经可以将线性高斯图模型扩展到结点表示多元高斯变量的情形。在这种情况下,我们可以将结点 i 的条件概率分布写成下面的形式

    现在 W ij 是一个矩阵。如果 x i 和 x j 的维度不同,那么 W ij 不是方阵。与之前一样,很容易证明所有变量上的联合概率分布是高斯分布。

    注意,我们已经看到高斯变量 x 的均值 μ 的共轭先验本身是 μ 上的一个高斯分布。此时我们已经遇到了线性高斯关系的一个具体的例子。因此 x 和 μ 的联合分布就是高斯分布。这对应于一个简单的具有两个结点的图,其中表示 μ 和结点是表示 x 的结点的父结点。 μ 上的概率分布的均值是控制先验分布的参数,因此它可以被看做超参数。由于超参数的值本身是未知的,因此我们可以再一次使用贝叶斯的观点,引入一个超参数上的先验概率分布。这个先验概率分布有时被称为超先验( hyperprior ),它还是一个高斯分布。这种构造过程原则上可以延伸到任意层次。这个模型是层次贝叶斯模型( hierarchical Bayesian model )的一个例子。


    贝叶斯网络的应用


    from: http://blog.csdn.net/pipisorry/article/details/52489270

    ref: prml chapter 8:GRAPHICAL MODELS

    [概率图模型  原理与技术[(美)科勒,(以)弗里德曼著]*

    贝叶斯网络 - 维基百科

    贝叶斯网络简介

    贝叶斯网络简介

    算法杂货铺——分类算法之贝叶斯网络(Bayesian networks)


    展开全文
  • 层次、网状、关系模型

    万次阅读 多人点赞 2017-11-18 17:12:44
    关系模型要求关系必须规范化的,关系必须满足一定的规范条件,这些规范条件中最基本的一条就是,关系的每一个分量必须是一个不可分的数据项,也就是说,不允许表中还有表。 2、关系模型的数据操纵与完整性约束 ...

    层次、网状、关系模型都是逻辑上的,它们都是以一定的方式存储在数据库系统中,这是数据库管理系统的功能,是数据库管系统中的物理存储模型。

    格式化模型

    层次模型和网状模型统称为格式化模型。格式化模型中数据结构的基本单位是基本层次联系,基本层次联系指的是两个记录以及他们之间的一对多(包括一对一)的联系。它是单记录的操作方式。
    格式化模型中实体用记录表示,实体的属性对应记录的数据项(或字段),实体之间的联系在格式化模型中转成记录之间的两两联系。

    一、层次模型

    层次模型是数据库系统中最早出现的数据模型,层次数据库系统采用层次模型作为数据的组织方式。它采用树形结构来表示各类实体以及实体间的联系。

    1、层次模型的数据结构

    满足以下两个条件的基本层次联系的集合为层次模型
    1、有且只有一个结点没有双亲结点,这个结点称为根节点;
    2、根以外的其他结点有且只有一个双亲结点。

    层次数据库系统只能处理一对多的实体联系的原因:在层次模型中,每个结点表示一个记录类型,记录类型之间的联系用结点之间的连线(有向边)表示,这种联系是父子之间的一对多的联系。
    以下是一个层次模型的示例,它像一棵倒立的树,结点的双亲是唯一的。同一双亲的子女结点称为兄弟结点,没有子女结点的结点称为叶结点。
    层次模型
    层次模型的特点:任何一个给定的记录值只能按其层次路径查看,没有一个子女记录值能够脱离双亲记录值而独立存在。

    2、层次模型的数据操纵与完整性约束

    层次模型的数据操纵主要有查询、插入、删除和更新,进行插入、删除、更新操作时要满足其完整性约束条件。
    插入:如果没有相应的双亲结点值不能插入它的子女结点值。
    删除:如果删除双亲结点值,则相应的子女结点值也将同时被删除。

    3、层次模型的优缺点

    1)优点:数据结构比较简单清晰,数据库的查询效率高,提供了良好的完整性支持。
    2)缺点:现实世界中很多联系是非层次性的,它不适用于结点之间具有多对多联系;查询子女结点必须通过双亲结点;由于结构严密,层次命令趋于程序化。

    二、网状模型

    网状数据模型的典型代表是DBTG(CODASYL)系统。

    1、网状模型的数据结构

    满足一下两个条件的基本层次联系的集合为网状模型
    1、允许一个以上的结点无双亲;
    2、一个结点可以有多于一个的双亲。
    备注:层次模型实际上是网状模型的一个特例。

    以下是网状模型的例子,网状模型中子女结点与双亲结点的联系可以不唯一。
    网状模型的例子

    2、网状模型的数据操纵与完整性约束

    DBTG在末世数据定义语言中提供了DBTG数据库完整性的若干概念和语句,主要有:
    1)支持记录码的概念。唯一标识记录的数据项的集合称为码,例如学生的学号,不允许有两个相同的学号。
    2)保证一个联系中双亲记录和子女记录之间是一对多的联系。
    3)可以支持双亲记录和子女记录之间的某些约束条件。

    3、网状模型的优缺点

    1)优点:能够更为直接地描述现实世界,如一个结点可以有多个双亲,结点直接可以有多种联系;具有良好的性能,存取效率较高。
    2)缺点:结构比较复杂,随应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握;网状模型的DDL、DML复杂,并且要嵌入某一种高级语言(C、COBOL)中,用户不容易掌握和使用;由于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节,加重了编写应用程序的负担。

    三、关系模型

    关系模型是最重要的一种数据模型。

    1、关系模型的数据结构

    关系模型中的一些术语:

    1)关系:一个关系对应通常说的一张表;
    2)元组:表中的一行即为一个元组;
    3)属性:表中的一列即为一个属性,给每一个属性起一个名称即属性名;
    4)码:也称为码键,表中的某个属性组,它可以唯一确定一个元组;
    5)域:一组具有相同数据类型的值的集合。属性的取值范围来自某个域;
    6)分量:元组中的一个属性值。
    7)关系模式:对关系的描述,一搬表示为:关系名(属性1,属性2,…,属性n)

    关系模型要求关系必须规范化的,关系必须满足一定的规范条件,这些规范条件中最基本的一条就是,关系的每一个分量必须是一个不可分的数据项,也就是说,不允许表中还有表。

    2、关系模型的数据操纵与完整性约束

    关系模型的数据操纵主要包括查询、插入、删除和更新数据,它的数据操纵是集合操作,操作对象和操作结果都是关系。
    这些操作必须满足关系的完整性约束条件:实体完整性、参照完整性和用户定义的完整性。

    3、关系模型的优缺点

    1)优点:建立在严格的数学概念的基础上;概念单一,无论实体还是实体之间的联系都是用关系来表示。对数据的检索和更新结构也是关系(也就是我们常说的表);它的存取路径对用户透明,从而具有更高的独立性、更好的安全保密性,简化了程序员的工作个数据库开发建立的工作。
    2)缺点:存取路径的隐蔽导致查询效率不如格式化数据模型。

    展开全文
  • )都需要建模,最终选择最优概率的label为结果,所以没有什么判别边界。(对于序列标注问题,那只需要构件一个model) 中间生成联合分布,并可生成采样数据。 生成式模型的优点在于,所包含的信息非常齐全,我称之...
  • vgg16网络模型的学习理解

    万次阅读 2018-11-07 11:13:53
    保证在有相同感知野的条件下,提升了网络的深度,在一定程度上提升了网络的效果,减少了权重参数的数量。   为什么使用1*1的卷积核? 1.为了使我们的网络更深。 2.降低维度 3.为了增加更多的非线性变换 1*1的...
  • CRF++/CRF/条件随机场的特征函数模板

    千次阅读 2018-10-01 23:11:20
    其次第一列代表的是需要标注的“字或词”,最后一列是输出位"标记tag",如果有额外的特征,例如词性什么的,可以加到中间列里,所以训练集或者测试集的文件最少要有两列。 以分词举例,标签为BMES: 2.特征模板 CRF+...
  • 所以这里在告诉大家历史是什么样,更要去思考哪里有错误、哪里要改进。 SPU、SKU概念 首先我们需要澄清上篇中的这两个概念,在上篇文章中“货品”是指一种概念物品,这种物品并不是一个具体的实物,当它具备...
  • http://blog.csdn.net/pipisorry/article/details/52489321马尔可夫皮皮blog无向图模型误解示例P-map不能构建贝叶斯的一个示例x1表示这个学生对概念存在误解,x0表示没有。Note: 其中的bd其实只要给定c就是相互...
  • 最大熵模型The Maximum Entropy:模型

    千次阅读 2016-10-11 17:09:52
    因为对这个"一无所知"的色子,什么都不确定,而假定它每一个朝上概率均等则是最合理的做法。从投资的角度来看,这是风险最小的做法,而从信息论的角度讲,就是保留了最大的不确定性,也就是说让熵达到最大。 ...
  • 深度学习(四十五)条件对抗网络

    千次阅读 2017-01-13 13:58:47
    在无条件对抗网络中,生成采样的样本是随机的,我们无法控制具体生成什么样的图片。加入条件模型,主要是直接在生成网络、判别网络中输入层中,分别加入额外的标签信息条件y,当然也可以是其它任意的条件信息。比如...
  • APP弱网络条件下,体验优化之道

    万次阅读 2016-07-16 16:47:21
    最近跟朋友聊天刚好聊到这一块,他们是在电商业务,商品图片及其多,API接口请求频率也高。然而,他们在移动2/3G的网络环境下,APP经常会出现Loading很久的情况,这里我把我们所分析与使用到的网络优化方案与大家...
  • 利用Netica训练简易贝叶斯网络模型【教程】

    千次阅读 多人点赞 2020-01-11 15:17:15
    找参考论文的时候发现Netica是个比较方便的贝叶斯网络工具(相比Matlab的贝叶斯网络工具箱等Netica不用敲代码学语法),而且是可视化交互界面,对新手相当友好,只是网上没什么教程,只能看官方文档自己摸索。...
  • DBN模型

    千次阅读 2015-07-19 13:39:10
    (一)马尔可夫随机场 1.概率图模型:1)用图的形式来表示概率分布;2)用图的方法来求解概率分布问题;3)可分为概率有向图模型跟概率无向...(2)成对马尔可夫性:任意两个没有边连接的结点条件独立 其中u,v表示任
  • 数学建模四大模型总结

    万次阅读 多人点赞 2019-06-13 15:31:53
    1.5.4 车辆路径问题(VRP) 车辆路径问题(也称车辆计划):已知个客户的位置坐标和货物需求,在可供使用车辆数量及运载能力条件的约束下,每辆车都从起点出发,完成若干客户点的运送任务后再回到起点,要求以最少的...
  •  PFR人民日报标注语料库是在得到人民日报社新闻信息中心许可的条件下,以1998年和2014人民日报语料为对象,由北京大学计算语言学研究所和富士通研究开发中心有限公司共同制作的标注语料库。为了促进中文信息处理...
  • CTC模型

    万次阅读 多人点赞 2015-09-17 20:10:53
    因此预测标签的条件概率可以表示为相应PATH的条件概率之和: (二)条件概率的计算(前后向计算) (三)模型训练 1.损失函数 2.梯度下降法优化 (四)解码 ps:该博文只...
  • 马尔科夫模型与隐马尔科夫模型

    万次阅读 2018-03-15 22:08:02
    该过程具有如下特性:在已知目前状态(现在)的条件下,它未来的演变(将来)不依赖于它以往的演变 (过去 )。例如森林中动物头数的变化构成——马尔可夫过程。在现实世界中,有很多过程都是马尔可夫过程,如液体中...
  •     满足下面两个条件的基本层次联系的集合为层次模型     1. 有且只有一个结点没有双亲结点,这个结点称为根结点     2. 根以外的其它结点有且只有一个双亲结点 其实层次数据模型就是的图形表示就是一...
  • 贝叶斯网络上检查条件独立性

    千次阅读 2018-06-01 16:51:23
    前两天了一个在贝叶斯网络上检查子集间条件独立性的题,认真研究了一番。题目要求在一个贝叶斯网络模型中,给出X、Y、Z三个集合,检查在观察到集合Z的条件下,集合X和集合Y的条件独立性。算法如下。 1. Convert ...
  • HMM:隐马尔可夫模型 - 表示

    万次阅读 2016-02-23 12:37:53
    动态贝叶斯 ,是一种著名的 有向(无环)图 模型,主要用于时序数据建模(语音识别、自然语言处理等)。  隐马尔科夫模型可以被看成状态空间模型[ 顺序数据:状态空间模型 ]的一个具体实例,其中潜在变量是离散...
  • LSTM模型详解

    万次阅读 多人点赞 2018-03-08 15:37:47
    在传统的RNN中,训练算法使用的是BPTT,当时间比较长时,需要回传的残差会指数下降,导致网络权重更新缓慢,无法体现出RNN的长期记忆的效果,因此需要一个存储单元来存储记忆,因此LSTM模型被提出;2.下面两个图可以...
  • 万兆多光纤在1/10GbE校园主干的应用 光缆系统的工程师通常会提出两个问题:1、校园主干应选择何种类型的光纤?2、需要安装多少光纤?解决这两个问题需要进行一系列的分析,以协助网络设计者做出最佳决策。本...
  • 模型与算法

    千次阅读 2019-04-21 19:35:18
    如果研究的问题是特殊的,比如,我今天所的事情的顺序,因为每天不一样,就没有必要建立模型。如果研究问题具有一般性,比如我要研究办银行卡,办羊城通卡,或者办其他卡的顺序,由于它们的先后次序基本相同,因此...
  • Windows socket之Select模型开发

    万次阅读 多人点赞 2012-12-21 14:55:40
    Windows socket select模型开发。... 使用select模型,可以使当执行操作的套接字满足可读可写条件时,给应用程序发送通知。收到这个通知后,应用程序再去调用相应的Windows socket API去执行函数调用。
  • 算法&模型

    万次阅读 多人点赞 2015-09-16 15:23:38
    在行业设备大数据平台建设中,势必要用到大数据技术,而大数据技术中,机器学习与...  在进行数据挖掘时,首先要进行商业理解,即我们需要达到什么目的,解决什么问题;其次需要进行数据理解,我们需要哪些数据以及需
  • 模板模型(Template Models)主要包括模板变量(TemplateVariables)和语言(Language)。   模板模型可以应用于无限大的贝叶斯网络;...语言有很多种,各种语言都有各种应用条件,从而构造出大
  • 就是说 服务端 没有把数据给 客户端 之前,客户端什么都不能。它们同样一件事情,就是说它们有相同步调,即同步。 阻塞、非阻塞 客户端与服务端是否从头到尾始终都有一个持续连接,以至于 占用了通道,不让其他...
  • 数据模型组成要素

    千次阅读 2019-08-19 22:02:24
    精确地描述了系统的静态特性、动态特性和完整性约束条件 三部分组成: 数据结构–描述系统的静态特性 刻画数据模型性质的重要方面 数据结构的类型来命名数据模型 层次结构-层次模型、网状结构-网状模型、关系结构-...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 340,293
精华内容 136,117
关键字:

做网模需要什么条件