目录

  • 17.1 导言
  • 17.2 马尔可夫图及其性质
  • 17.3 连续变量的无向图模型
    • 17.3.1 图结构已知的参数估计
    • 17.3.2 估计图结构
  • 17.4 离散变量的无向图模型
    • 17.4.1 图结构已知的参数估计
    • 17.4.2 隐结点Hidden Node
    • 17.4.3 估计图结构
    • 17.4.4 受限玻尔兹曼机

17.1 导言

  • P625 graphical lasso procedure
  • P626 图模型的主要挑战是图结构选择、根据数据来估计边的参数,和从联合分布中计算边缘顶点的概率和期望.后两个任务在计算机科学中有时被称作学习learning推断inference

17.2 马尔可夫图及其性质

  • P628 成对马尔可夫独立pairwise Markov independencies

    全局马尔可夫性global Markov properties

实际上,对于有正分布的图,这两者等价(估计是说任意点的概率值不能为0)。也即满足这两者的相关概率分布associated probability distribution集合是相同的
概率分布为

其中C\mathcal CC是最大团的集合,正函数ψC(⋅)\psi_C(\cdot)ψC​(⋅)称为团势clique potentials(也就是势函数),表示XCX_CXC​中依赖性的亲和力affinities. 团如果分离,团势可以是概率密度,但是一般不是这种情况(可以考虑三个点连成线的简单例子,中间的点会出现在两个团。另外,一般把能量函数函数定义为指数函数中的幂项)

图的独立行由乘积中的团定义,称为Hammersley-Cliffodinyrd定理

  • P629 离散数据的图模型是 loglinear models for multiway contingency tables的一种特殊形式,其中f(2)f^{(2)}f(2)称为“无二阶交叉no second-order interaction”模型
  • P630 本章剩余部分关注成对马尔可夫图pairwise Markov graphs,每条边都有势函数,而且至多使用二阶交叉项。此时,模型都仅仅是关于边集edge set的成对边缘分布的函数

17.3 连续变量的无向图模型

  • P630 本节采用高斯分布,假设联合分布是高斯分布

  • P630 记多维高斯中,分块xa,xbx_a, x_bxa​,xb​,协方差矩阵为Σ\bm \SigmaΣ.
    注意给定xbx_bxb​后xax_axa​的条件协方差(也即偏协方差矩阵partial covariance matrix,ESL记作Σa⋅b\bm \Sigma_{a\cdot b}Σa⋅b​),和xax_axa​的边缘协方差是不同的。前者是Σa∣b=Σaa−ΣabΣbb−1Σba=[(Σ−1)aa]−1\bm\Sigma_{a|b}=\bm\Sigma_{aa}-\bm\Sigma_{ab}\bm\Sigma_{bb}^{-1}\bm\Sigma_{ba}=[(\bm \Sigma^{-1})_{aa}]^{-1}Σa∣b​=Σaa​−Σab​Σbb−1​Σba​=[(Σ−1)aa​]−1,后者是Σaa\bm\Sigma_{aa}Σaa​

  • P630 协方差矩阵的逆Θ\bm \ThetaΘ包含了偏协方差partial covariances的信息,尤其好算偏相关系数。参考习题17.3
    如果Θij=0\bm \Theta_{ij}=0Θij​=0,那么变量i,ji,ji,j在给定其他变量的条件下独立(硬算也行,直观上理解也行,直观上理解就是高斯分布的指数项上没有这两者的交叉项)

  • P630 P19的公式2.19给出了一般线性回归的系数,是带期望的形式。具体过程如下

    其中Z=(X1,…,Xp−1),Y=XpZ=(X_1,\dots, X_{p-1}),Y=X_pZ=(X1​,…,Xp−1​),Y=Xp​

    回归系数β=ΣZZ−1σZY\beta=\bm \Sigma_{ZZ}^{-1}\sigma_{ZY}β=ΣZZ−1​σZY​,因为

    其中1/θYY=σYY−σZYTΣZZ−1σZY>01/\theta_{YY}=\sigma_{YY}-\sigma_{ZY}^T\Sigma_{ZZ}^{-1}\sigma_{ZY}>01/θYY​=σYY​−σZYT​ΣZZ−1​σZY​>0 (由正定性可知大于0)

    (这里β\betaβ既可以写成协方差中的内容,也可以写成协方差逆中的内容)
    从中可以看出:

    • 式17.6的YYY对ZZZ的依赖只有均值。当β\betaβ中元素为0时,从式17.9第二行得到θZY\theta_{ZY}θZY​对应元素0,意味着此时ZZZ中对应元素与YYY在给定其他变量的条件下相互独立(还是习题17.3的结论)
    • 可以通过多重线性回归学习这个依赖性结构
  • P631 Θ\bm \ThetaΘ捕捉了所有的二阶信息,包括结构上的和定量的(结构上的应该就是边连不连,定量的就是具体边的函数形式)。这些信息描述每个顶点在给定剩余点时的条件分布所需要的,这也称为高斯图模型的“自然natural”参数(PRML中管这个叫精确度矩阵)

  • P631 另一个不同的图模型是协方差图covariance graph相关网络relevance network,两个顶点间协方差不为0,则用双向边连接(不是偏协方差。注意协方差不为0,在给定其他所有变量的条件下,两结点仍然可能独立。协方差为0的物理意义是两变量联合的边缘分布中不相关)。这些模型的负对数似然非凸,计算困难(没有深究这个)

  • P631 从高斯图模型得到的分布是Wishart分布.其中自然参数为ΘΣ−1\bm \Theta \bm \Sigma^{-1}ΘΣ−1实际上,偏最大化的对数似然式17.11是Wishart对数似然,这里忽略常数差异(不理解)

(这一节的思路,是不是还是想通过图模型,得出一个线性回归,所以算了β=⋯\beta=\cdotsβ=⋯)

17.3.1 图结构已知的参数估计

  • P631 给定XXX的一些观测,估计无向图的参数,无向图近似联合分布。先考虑全连通图,假设NNN个多维高斯观测xi,i=1…,Nx_i, i=1\dots, Nxi​,i=1…,N,均值μ\muμ,协方差Σ\bm \SigmaΣ,令

    为观测值的协方差矩阵,xˉ\bar xxˉ为样本均值,忽略常数,其对数似然写作

    其中已经偏最大化partially maximized了均值,得到μ=xˉ\mu=\bar xμ=xˉ。可以得到上式。上式是Θ\bm \ThetaΘ的凸函数(凸函数可以自行验证,这也是一道运用二阶矩阵求导的好题),可以得到Σ\bm \SigmaΣ的极大似然估计为S\bm SS
    (总的来说,高维高斯的极大似然解中的均值和方差和一维一样)
    如果图中没有连边,那么对应Θ=Σ−1\bm \Theta=\bm \Sigma^{-1}Θ=Σ−1的位置为0,从而式17.11变成了等式约束的凸优化问题,有许多求解方法,如迭代比例拟合过程iterative proportional fitting procedure (Speed and Kiiveri, 1996).
  • P632 这里列出一种简单的轮换方法,用不同的方式来研究稀疏性.这种方式的效果会在我们讨论图结构估计问题时变得明显
    对缺失边引入拉格朗日乘数

    梯度为

    其中Γ\bm \GammaΓ为所含缺失边非零的拉格朗日参数
    用回归来求解Θ−1\bm \Theta^{-1}Θ−1,每次求它的逆W=Θ−1\bm W=\bm \Theta^{-1}W=Θ−1的一行一列,先关注最后一行一列


    这表明

    其中β=−θ12/θ22\beta=-\theta_{12}/\theta_{22}β=−θ12​/θ22​,和式17.9一样,替换得到

    这可以解释成XpX_pXp​在其他预测变量上的约束回归的p−1p-1p−1个估计等式,S11\bm S_{11}S11​被替换成了W11\bm W_{11}W11​(这里如果没有γ12\gamma_{12}γ12​,就变成了式17.9第一行)
    假定γ12\gamma_{12}γ12​有p−qp-qp−q个非零元素,对应s12s_{12}s12​中p−qp-qp−q个零元素。可以把这些行消去,得到q×qq\times qq×q等式

    解为β^∗=(W11∗)−1s12∗\hat \beta^*=(\bm W^{*}_{11})^{-1}s_{12}^*β^​∗=(W11∗​)−1s12∗​. 从而带回式17.17得到w12w_{12}w12​.
    算法最后关于θ\thetaθ的求解,用分块求逆公式得到

    因为Γ\bm \GammaΓ对角元为0,所以w22=s22w_{22}=s_{22}w22​=s22​,从而导出在缺失边的约束下,用来估计W^,Θ^\hat\bm W, \hat \bm \ThetaW^,Θ^的算法17.1给出的简单迭代过程

    (这看着应该是先循环更新W\bm WW,最后一轮再更新θ^\hat \thetaθ^. 然后利用式11.17把图的约束信息用进去。问题是这么算为啥会收敛呢)
    (这个对角线似乎从来不更新,因为式17.13可以直接读出对角线啊!!)
  • P634 该例子中求出来的Σ^\hat \bm \SigmaΣ^和样本协方差矩阵S\bm SS不同的元素是那些缺失边(为什么会有这么神奇的现象?)Σ\bm \SigmaΣ有时称为S\bm SS的正定补positive definite completion

17.3.2 估计图结构

  • P635 大多数情况下,不知道哪些边要去掉,想试图从数据本身找出.很多作者提出用于这个目的lasso正则化
  • P635 Meinshausen and Bühlmann (2006)不试图完全估计Σ\bm \SigmaΣ或Θ\bm \ThetaΘ,仅仅估计非零组分θij\theta_{ij}θij​,将每个变量看成label,其他变量看成feature进行lasso回归,如果变量iii对jjj的估计系数非零,或jjj对iii的估计系数非0,则θij\theta_{ij}θij​非零。他们证明这个过程渐进一致估计Θ\bm\ThetaΘ的非零元集合
  • P635 可以采取更系统的含有lasso的惩罚方法

    (其实也可以用最大后验解释这个式子,认为Θ\bm \ThetaΘ服从先验拉普拉斯分布先验)该式仍然是凸函数。
    仅仅需要把算法17.1中回归步骤(b)换成修改的lasso,梯度等式为

    这里采用次梯度sub-gradient记号,如果θjk≠0\theta_{jk}\neq 0θjk​​=0,则Sign(θjk)=sign(θjk)Sign(\theta_{jk})=sign(\theta_{jk})Sign(θjk​)=sign(θjk​),如果θjk=0\theta_{jk}=0θjk​=0,则Sign(θjk)∈[−1,1]Sign(\theta_{jk})\in[-1, 1]Sign(θjk​)∈[−1,1],类似式17.18,得到

    (这里θ22\theta_{22}θ22​一定为正)。这完全等价于某个lasso回归式的估计
    考虑一般回归问题,输出y\bm yy,输入Z\bm ZZ,最小化

    梯度为

    所以W11\bm W_{11}W11​替换ZTZ\bm Z^T\bm ZZTZ,s12s_{12}s12​替换ZTy\bm Z^T \bm yZTy
    这一过程称为graphical lasso,总结如下

    采用3.8.6节的路径坐标优化Pathwise Coordinate Optimization求解修改的lasso问题,
    (路径坐标优化的细节我就不看了)
    根据式17.22,可以直接读出来W\bm WW的对角线,而且一开始W\bm WW的初始化要加λI\lambda \bm IλI
    (17.21) 的另一个构造是不对Θ\bm \ThetaΘ的对角元进行惩罚.则解矩阵的对角元wjj=sjjw_{jj}=s_{jj}wjj​=sjj​,算法的剩余部分没有改变
    该算法可以修改得到特定边的惩罚参数λjk\lambda_{jk}λjk​,因为λjk=∞\lambda_{jk}=\inftyλjk​=∞会得到θ^jk=0\hat \theta_{jk}=0θ^jk​=0,所以算法17.1是该算法一个特例(但是两者的优化方式似乎不太一样)
    此外可以快速计算并验证解的路径关于惩罚参数λ\lambdaλ的函数
    (所以总的来看,这个算法可以当作一个无监督算法)
  • P639 如果有些顶点没有观测,可以用EM来填补缺失值,见习题17.9(这题感觉给的答案不对,协方差那里应该是偏协方差,而不是协方差)

17.4 离散变量的无向图模型

  • P638 二值变量的成对马尔科夫网络,在统计力学领域有时称为伊辛模型Ising model,在机器学习领域称为玻尔兹曼机Boltzmann machines

    X={0,1}p\mathcal X=\{0,1\}^pX={0,1}p,注意这里也是只有成对交叉项建模,和上一节一样。配分函数为

    再引入和所有结点都相连的常值结点X0≡1X_0\equiv1X0​≡1
    在统计领域中,这个模型等价于 多路计数表multiway tables of counts的 一阶交叉泊松对数线性模型first-order-interaction Poisson log-linear model(这是个啥。。)
    给定其他结点条件下的logistic形式

17.4.1 图结构已知的参数估计

  • P639 假定有观测xi=(xi1,…,xip)∈{0,1}p,i=1,…,Nx_i=(x_{i1},\dots, x_{ip})\in \{0,1\}^p,i=1,\dots, Nxi​=(xi1​,…,xip​)∈{0,1}p,i=1,…,N
    对数似然为

    梯度为

    并且

    (这一步需要把Φ\PhiΦ代换一下,再写成概率形式,发现是对的)
    从而

    极大似然估计简单地把结点之间的内积估计和观测的内积匹配.这是指数族模型得分等式的标准形式,其中令充分统计量等于模型下的期望.(这后半句很有深意,多多思考)
    为了寻找极大似然估计,可以用梯度搜索或者牛顿法。然而EΘ(XjXk)E_{\bm \Theta}(X_j X_k)EΘ​(Xj​Xk​)的计算涉及p(X,Θ)p(X,\bm \Theta)p(X,Θ)的指数爆炸的情况数量,对于大ppp一般不可行。ppp小时,有标准的统计方法可以使用:

    • 泊松对数线性建模possion log-linear modeling,把问题看成大规模泊松回归问题,详见习题17.12。用牛顿法IRLS求解(这一段看了非常久,也没看懂这个逻辑。是最终变成了一个线性回归问题吗?那为什么要用IRLS求解?还是说对泊松分布最大似然的建模式用IRLS迭代几步,而不是线性回归。感觉像是后者)
    • 梯度下降。计算量可以通过联合树算法找出稀疏图中的特别团结构来降低
    • 迭代比例过滤Iterative proportional fitting,IPF. 在梯度式17.34中采用循环坐标下降cyclical coordinate descent.每一步更新一个参数使得梯度正好为0.循环进行直到所有梯度为0.一个完整的周期与算梯度花费同样的计算量,但是可能更高效

    当ppp变大,采用其他方法近似

    • 平局场近似
    • 吉布斯采样,用于近似EΘ(XjXk)E_{\bm {\Theta}}(X_jX_k)EΘ​(Xj​Xk​),对模型PΘ(Xj∣X−j)P_{\bm \Theta}(X_j|X_{-j})PΘ​(Xj​∣X−j​)逐步抽样

    (蒲公英书这里直接对式17.32和式17.33,也就是式17.34的期望采样,前者从数据集采,后者用MCMC采。进行处理,产生正相和负相)

  • P641 可分解模型decomposable models

17.4.2 隐结点Hidden Node

  • P641 对数似然

    求梯度

    (这个式子我总感觉写的没有蒲公英书清晰,实际上Xj,XkX_j,X_kXj​,Xk​是结点,XνX_\nuXν​则是结点集合)
    这里第一项分两者都可见和存在某个不可见两种秦广,前者只对数据集求期望就行了

    吉布斯采样必须在梯度搜索的每一阶段对训练集中的每一个观测进行.这个过程非常慢,甚至对于中等规模的模型。RBM就好了很多

17.4.3 估计图结构

  • P642 Lee et al. (2007)和Wainwright et al. (2007)建议用二值成对马尔科夫网络的lasso惩罚,瓶颈是EΘ(XjXk)E_{\bm \Theta}(X_jX_k)EΘ​(Xj​Xk​). 第一篇提出共轭梯度法来精确最大化含惩罚的对数似然。第二篇类似Meinshausen and Bühlmann (2006)估计高斯图,改用L1逻辑回归估计每个结点和其他结点是否有关系. 对于一条边,用两方向的绝对值的最小值或最大值来对称参数值,当样本量趋于无穷时,两者都能正确估计非零边。Hoefling and Tibshirani(2008)将graphical lasso应用到离散马尔科夫网络,得到比共轭梯度稍快的过程(这一块都略看了)
  • P642,643 高斯和二值模型的关键区别.在高斯情况下,Σ\SigmaΣ和其逆都是感兴趣的,graphical lasso过程都实现了这两者估计.然而,Meinshausen and Bühlmann (2006)对于高斯图模型的近似类似Wainwright et al. (2007)对二值情形的近似,仅得到Σ−1\Sigma^{-1}Σ−1的估计.(后者是Σ−1\Sigma^{-1}Σ−1的直接估计,前者在算法过程中先估计Σ\SigmaΣ,而后给出Σ−1\Sigma^{-1}Σ−1. 不过这一段我仍然理解不好)
    相反地,在二值数据的马尔科夫模型中,Θ\bm\ThetaΘ是感兴趣的,对它的逆不感兴趣.Wainwright et al. (2007)近似有效估计Θ\bm\ThetaΘ,是二值问题吸引人的方案

17.4.4 受限玻尔兹曼机

  • P643 这里把可见结点分开了(感觉像是三层RBM),其中V1\mathcal V_1V1​可以看作是图像二值特征,V2\mathcal V_2V2​看成10分类one-hot
  • P644 神经网络和RBM的拟合目标不一样,神经完了过最小化模型和和目标之间的误差,玻尔兹曼机最大化可见单元的联合分布的对数似然(感觉神经网络是最大化了判别模型的最大似然,RBM是最大化了生成模型的最大似然)
    RBM中可能会使用一些隐单元来建模特征向量的结构(估计就是说输入特征),从而不直接和预测有关。但是和其他导出的隐藏单元一起结合可能会有用
  • P644 当网络参数变得更大,吉布斯采样的链混合得更慢,需要更多的步骤来得到无条件的估计。Hinton设计对比散度contrastive divergence,让MC链只走几步,而不是走到收敛,仍然work. 当参数与解相差很多,迭代吉布斯采样达到稳态是不必要的,仅仅一个迭代就能发现改变估计的好方向
  • P644 (其实就是深度信念网络)

参考文献:
[1] Trevor Hastie, Robert Tibshirani, Jerome Friedman. The Elements of Statistical Learning, Second Edition
[2] ESL CN

ESL第十七章 无向图模型 学习/推断/成对马尔可夫独立/全局马尔可夫性、协方差图/高斯图/修改回归算法/图结构估计/图lasso、【受限】玻尔兹曼机/泊松对数线性建模/迭代比例过滤/对比散度相关推荐

  1. kl散度度量分布_概率图简要模型笔记(二)马尔可夫随机场与KL散度、最大熵、指数族分布、高斯分布、极大似然分布...

    这一篇文章主要是想捋一捋KL散度.最大熵.指数族分布这些东西之间的关系,这是一些非常基本的知识点,刚入门机器学习的时候,傻傻分不清楚,现在回过头来看,其实很多东西都可以串起来,不得不感叹数学真是一个很 ...

  2. 算法学习之Markov Model(马尔可夫模型)

    Markov Model(马尔可夫模型) 在概率论中,马尔可夫模型是一种用于对随机变化的系统建模的随机模型. 一种假定猜想:假设未来的状态只依赖于当前状态,而不依赖于之前发生的事件(也就是说,它假设了 ...

  3. 学习笔记——详解马尔可夫,马尔可夫链,马尔可夫模型,隐马

    目录 (一),马尔可夫 (Markov)综述 1.1,随机过程是啥玩意儿 1.2. 马尔可夫链 (Markov Chain)又是什么鬼 1.3一个经典的马尔科夫链实例 (二), 隐马尔可夫 HMM 2 ...

  4. 中文分词与马尔科夫模型之二:隐马尔科夫模型与维特比

    转载自:http://blog.sina.com.cn/s/blog_68ffc7a40100uebv.html 前面一篇博客讲到了中文分词的机械分词算法,这种算法实现相对比较简单,但是分词效果还是有 ...

  5. 【机器学习】强化学习的概念及马尔科夫决策

    系列文章目录 第十八章 Python 机器学习入门之强化学习 目录 系列文章目录 前言 一.什么是强化学习? 二.强化学习算法的示例:火星探测器 三.强化学习的回报及折扣因子 四. 强化学习中的策略 ...

  6. 强化学习(一)-->隐马尔科夫模型HMM-->HMM模型基础

    隐马尔科夫模型HMM 隐马尔科夫模型算是比较经典的机器学习模型了,在自然语言处理.语言识别.模型识别等这些领域也得到了广泛的应用.在深度学习的崛起,尤其是RNN.LSTM等神经网络序列模型的火热,HM ...

  7. 通过hmmlearn学习使用HMM隐马尔科夫模型

    一.了解隐马尔科夫模型(HMM) 具体可参考https://www.zhihu.com/question/20962240,讲得很通俗易懂. 本文使用的是hmmlearn模块,可以使用pip inst ...

  8. HMM学习笔记2 隐马尔科夫模型与前向算法

    一 序 本系列文章摘自 52nlp(我爱自然语言处理: http://www.52nlp.cn/),原文链接在 HMM 学习最佳范例,有大佬做了二次整理,参见:https://blog.csdn.ne ...

  9. 强化学习(二)马尔科夫决策过程(MDP)

    在强化学习(一)模型基础中,我们讲到了强化学习模型的8个基本要素.但是仅凭这些要素还是无法使用强化学习来帮助我们解决问题的, 在讲到模型训练前,模型的简化也很重要,这一篇主要就是讲如何利用马尔科夫决策 ...

最新文章

  1. Linux下代码运行不了?看这里设置环境变量
  2. python面试-Python面试
  3. 这是面向企业组织IT负责人的SD-WAN指南—Vecloud
  4. java application文件夹_关于java:如何动态获取Spring Boot Application jar的父文件夹路径?...
  5. Java多线程-CountDownLatch用法
  6. java 的tree_Java TreeSet higher()方法
  7. 网不好怎么办?TLS握手带宽直降80%,BabaSSL是怎么做到的?| 龙蜥技术
  8. Jmeter 新手教程
  9. JS在HTML中放的位置
  10. (转) Deep Learning Resources
  11. GIS之旅——研究生总结
  12. SM951 NVMe 版本安装Win7 的正确方法
  13. Java实现万年历【升级版】
  14. SQL 数据库清理数据库日志
  15. java抽象和接口的理解_Java学习笔记16---抽象类与接口的浅显理解
  16. python嵌入式系统开发_图解嵌入式系统开发之语言篇:初识Python
  17. golang 生态中不错的组件
  18. C语言中%d,%s,%x,%f,%.100f,%的意思
  19. 思量QQ本地会员v3.8官方2013版【免费使用部分QQ会员功能】
  20. aide打开html文件,AIDE Web(网页编辑器)

热门文章

  1. C# 可为 null 的类型
  2. ENVI辐射定标与大气校正
  3. [产品]:基于DTCloud开发的一款AI考试系统
  4. SUMO/检测器设置(E3)学习总结
  5. 广东省揭阳市谷歌卫星地图下载
  6. php mysql好学吗_PHP+MySQL好不好学?
  7. 终于有人把“嵌入式人工智能”讲明白了
  8. kettle工具之阻塞数据直到步骤都完成
  9. Linux sleep和 usleep睡眠函数的使用
  10. 他99年出生,本科身份摘FOCS 2021最佳学生论文奖,曾4刷NOI金牌