马尔可夫链概述

马尔可夫链因安德烈·马尔可夫(Andrey Markov,1856-1922)得名,是数学中具有马尔可夫性质的离散时间随机过程。该过程中,在给定当前知识或信息的情况下,过去(即当期以前的历史状态)对于预测将来(即当期以后的未来状态)是无关的。

  时间和状态都是离散的马尔可夫过程称为马尔可夫链, 简记为{X_n=X(n),n=0,1,2,\cdots}

  马尔可夫链是随机变量X_1,X_2,X_3\cdots的一个数列。这些变量的范围,即他们所有可能取值的集合,被称为“状态空间”,而Xn的值则是在时间n的状态。如果Xn + 1对于过去状态的条件概率分布仅是Xn的一个函数,则

  P(X_{n+1}=x|X_0,X_1,X_2,\cdots,X_n)=P(X_{n+1}=x|X_n)

  这里x为过程中的某个状态。上面这个恒等式可以被看作是马尔可夫性质。

  马尔可夫在1906年首先做出了这类过程 。而将此一般化到可数无限状态空间是由柯尔莫果洛夫在1936年给出的。

  马尔可夫链与布朗运动以及遍历假说这两个二十世纪初期物理学重要课题是相联系的,但马尔可夫寻求的似乎不仅于数学动机,名义上是对于纵属事件大数法则的扩张。

  马尔可夫链是满足下面两个假设的一种随机过程:

  1、t+l时刻系统状态的概率分布只与t时刻的状态有关,与t时刻以前的状态无关;

  2、从t时刻到t+l时刻的状态转移与t的值无关。一个马尔可夫链模型可表示为=(S,P,Q),其中各元的含义如下:

  1)S是系统所有可能的状态所组成的非空的状态集,有时也称之为系统的状态空间,它可以是有限的、可列的集合或任意非空集。本文中假定S是可数集(即有限或可列)。用小写字母i,j(或Si,Sj)等来表示状态。

  2)P=[P_{ij}]_{n\times n}是系统的状态转移概率矩阵,其中Pij表示系统在时刻t处于状态i,在下一时刻t+l处于状态i的概率,N是系统所有可能的状态的个数。对于任意i∈s,有\sum_{j=1}^NP_{ij}=l

  3)Q=[q_1,q_2\cdots q_n]是系统的初始概率分布,qi是系统在初始时刻处于状态i的概率,满足\sum_{i=1}^Nq_i=1

马尔可夫链的性质

马尔可夫链是由一个条件分布来表示的

  P(Xn + 1 | Xn)

  这被称为是随机过程中的“转移概率”。这有时也被称作是“一步转移概率”。二、三,以及更多步的转移概率可以导自一步转移概率和马尔可夫性质:

  P(X_{n+2}|X_n) = \int P(X_{n+2},X_{n+1}|X_n)dX_{n+1} = \int P(X_{n+2}|X_{n+1})P(X_{n+1}|X_n)dX_{n+1}

  同样:

  P(X_{n+3}|X_n) = \int P(X_{n+3}|X_{n+2}) \int P(X_{n+2}|X_{n+1})P(X_{n+1}|X_n)dX_{n+1}dX_{n+2}

  这些式子可以通过乘以转移概率并求k−1次积分来一般化到任意的将来时间n+k。

  边际分布P(Xn)是在时间为n时的状态的分布。初始分布为P(X0)。该过程的变化可以用以下的一个时间步幅来描述:

  P(X_{n+1}) = \int P(X_{n+1}|X_n)P(X_n)dX_n

  这是Frobenius-Perron equation的一个版本。这时可能存在一个或多个状态分布π满足:

  \pi(X) = \int P(X|Y)\pi(Y)dY

  其中Y只是为了便于对变量积分的一个名义。这样的分布π被称作是“平稳分布”(Stationary Distribution)或者“稳态分布”(Steady-state Distribution)。一个平稳分布是一个对应于特征根为1的条件分布函数的特征方程。

  平稳分布是否存在,以及如果存在是否唯一,这是由过程的特定性质决定的。“不可约”是指每一个状态都可来自任意的其它状态。当存在至少一个状态经过一个固定的时间段后连续返回,则这个过程被称为是“周期的”。

离散状态空间中的马尔可夫链模型

  如果状态空间是有限的,则转移概率分布可以表示为一个具有(i,j)元素的矩阵,称之为“转移矩阵”:

  Pij = P(Xn + 1 = i | Xn = j)

  对于一个离散状态空间,k步转移概率的积分即为求和,可以对转移矩阵求k次幂来求得。就是说,如果\mathbf{P}是一步转移矩阵,\mathbf{P}^k就是k步转移后的转移矩阵。

  平稳分布是一个满足以下方程的向量:

  \mathbf{P}\pi^* = \pi^*

  在此情况下,稳态分布π * 是一个对应于特征根为1的、该转移矩阵的特征向量。

  如果转移矩阵\mathbf{P}不可约,并且是非周期的,则\mathbf{P}^k收敛到一个每一列都是不同的平稳分布π * ,并且,

  \lim_{k\rightarrow\infty}\mathbf{P}^k\pi=\pi^*

  独立于初始分布π。这是由Perron-Frobenius theorem所指出的。

  正的转移矩阵(即矩阵的每一个元素都是正的)是不可约和非周期的。矩阵被称为是一个随机矩阵,当且仅当这是某个马尔可夫链中转移概率的矩阵。

  注意:在上面的定式化中,元素(i,j)是由j转移到i的概率。有时候一个由元素(i,j)给出的等价的定式化等于由i转移到j的概率。在此情况下,转移矩阵仅是这里所给出的转移矩阵的转置。另外,一个系统的平稳分布是由该转移矩阵的左特征向量给出的,而不是右特征向量。

  转移概率独立于过去的特殊况为熟知的Bernoulli scheme。仅有两个可能状态的Bernoulli scheme被熟知为贝努利过程

马尔可夫链的应用

[编辑]

科学中的应用

  马尔可夫链通常用来建模排队理论和统计学中的建模,还可作为信号模型用于熵编码技术,如算法编码。马尔可夫链也有众多的生物学应用,特别是人口过程,可以帮助模拟生物人口过程的建模。隐蔽马尔可夫模型还被用于生物信息学,用以编码区域或基因预测。

  马尔可夫链最近的应用是在地理统计学(geostatistics)中。其中,马尔可夫链用在基于观察数据的二到三维离散变量的随机模拟。这一应用类似于“克里金”地理统计学(Kriging geostatistics),被称为是“马尔可夫链地理统计学”。这一马尔可夫链地理统计学方法仍在发展过程中。

[编辑]

人力资源中的应用

  马尔可夫链模型主要是分析一个人在某一阶段内由一个职位调到另一个职位的可能性,即调动的概率。该模型的一个基本假设就是,过去的内部人事变动的模式和概率与未来的趋势大体相一致。实际上,这种方法是要分析企业内部人力资源的流动趋势和概率,如升迁、转职、调配或离职等方面的情况,以便为内部的人力资源的调配提供依据。

  它的基本思想是:通过发现过去组织人事变动的规律,以推测组织在未来人员的供给情况。马尔可夫链模型通常是分几个时期收集数据,然后再得出平均值,用这些数据代表每一种职位中人员变动的频率,就可以推测出人员变动情况。

  具体做法是:将计划初期每一种工作的人数量与每一种工作的人员变动概率相乘,然后纵向相加,即得到组织内部未来劳动力的净供给量。其基本表达式为:

  N_i(t)=\sum_{j=1}^k*P_{ij}+V_i(t)

Ni(t):t时间内I类人员数量;
Pji:人员从j类向I类转移的转移率;
Vi(t):在时间(t-1,t)I类所补充的人员数。

  企业人员的变动有调出、调入、平调、晋升与降级五种。表3 假设一家零售公司在1999至2000年间各类人员的变动情况。年初商店经理有12人,在当年期间平均90%的商店经理仍在商店内,10%的商店经理离职,期初36位经理助理有 11%晋升到经理,83%留在原来的职务,6%离职;如果人员的变动频率是相对稳定的,那么在2000年留在经理职位上有11人(12×90%),另外,经理助理中有4人(36×83%)晋升到经理职位,最后经理的总数是15人(11+4)。可以根据这一矩阵得到其他人员的供给情况,也可以计算出其后各个时期的预测结果。假设的零售公司的马尔可夫分析,见下表:

1999~2000 商店经理 经理助理 区域经理 部门经理 销售员 离职
商店经理

(n=12)
90%

11
        10%

1
经理助理

(n=36)
11%

4
83%

30
      6%

2
区域经理

(n=96)
  11%

11
66%

63
8%

8
  15%

14
部门经理

(=288)
    10%

29
72%

207
2%

6
16%

46
销售员

(=1440)
      6%

86
74%

1066
25%

228
供给预测 15 41 92 301 1072 351

机器学习知识点(十)马尔可夫链相关推荐

  1. (转载)机器学习知识点(十五)从最大似然到EM算法浅解

    从最大似然到EM算法浅解 机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做 ...

  2. 机器学习知识点(十九)矩阵特征值分解基础知识及Java实现

    1.特征值分解基础知识 矩阵乘法Y=AB的数学意义在于变换,以其中一个向量A为中心,则B的作用主要是使A发生伸缩或旋转变换.一个矩阵其实就是一个线性变换,因为一个矩阵乘以一个向量后得到的向量,其实就相 ...

  3. 机器学习知识点(十八)密度聚类DBSCAN算法Java实现

    为更好理解聚类算法,从网上找现成代码来理解,发现了一个Java自身的ML库,链接:http://java-ml.sourceforge.net/ 有兴趣可以下载来看看源码,理解基础ML算法.对于DBS ...

  4. 机器学习知识点(十六)集成学习AdaBoost算法Java实现

    理解http://blog.csdn.net/fjssharpsword/article/details/61913092中AdaBoost算法,从网上找了一套简单的代码加以理解. 1.基分类器,实现 ...

  5. (转载)机器学习知识点(十四)EM算法原理

    1.引言 以前我们讨论的概率模型都是只含观测变量(observable variable), 即这些变量都是可以观测出来的,那么给定数据,可以直接使用极大似然估计的方法或者贝叶斯估计的方法:但是当模型 ...

  6. (转载)机器学习知识点(十二)坐标下降法(Coordinate descent)

    首先介绍一个算法:coordinate-wise minimization 问题的描述:给定一个可微的凸函数,如果在某一点x,使得f(x)在每一个坐标轴上都是最小值,那么f(x)是不是一个全局的最小值 ...

  7. 机器学习(十九)——PageRank算法, KNN, loss function详解

    http://antkillerfarm.github.io/ PageRank算法 概述 在PageRank提出之前,已经有研究者提出利用网页的入链数量来进行链接分析计算,这种入链方法假设一个网页的 ...

  8. 机器学习知识点全面总结

    ✨写在前面:强烈推荐给大家一个优秀的人工智能学习网站,内容包括人工智能基础.机器学习.深度学习神经网络等,详细介绍各部分概念及实战教程,通俗易懂,非常适合人工智能领域初学者及研究者学习.➡️点击跳转到 ...

  9. ML:从工程化思维分析—机器学习团队十大角色的简介(背景/职责/产出物):产品经理、项目经理、业务咨询顾问、数据科学家、ML研究员、数据工程师、ML工程师、DevOps/软件开发/交付工程师

    ML:从工程化思维分析-机器学习团队十大角色的简介(背景/职责/产出物):产品经理.项目经理.业务咨询顾问.数据科学家.ML研究员.数据工程师.ML工程师.DevOps/软件开发/交付工程师 背景:在 ...

最新文章

  1. 浅析Struts 体系结构与工作原理(图)
  2. 信息安全系统设计基础第十周学习总结
  3. 这个小学生毕业典礼被全世界围观:疫情之下开脑洞,《我的世界》还能这样玩!中国网友:作业写不完的我感到嫉妒...
  4. 信息化的“五观”与“N为”
  5. sql语句中`和'两个符号的区别
  6. 在Eclipse 2.0中使用版本控制系统CVS
  7. WinCC归档数据报表控件
  8. 100人每人100元每次一人分1元给另一人问题matalb 求解
  9. python 发送邮件附件很慢_Python SMTP 发送带附件电子邮件
  10. 蓝桥杯51单片机之串口通信发送接收信息【单片机开发初学者串口必会】
  11. c++ java setobjectarrayelement_java中jni的使用:C/C++操作java中的数组
  12. VS2012:出现devenv.sln解决方案保存对话框
  13. c语言回文串试题,最短回文串 -- C语言
  14. java私塾初级_Java私塾Java初级教程
  15. 《人工智能:一种现代的方法》笔记(一)
  16. Shadow Defender 安装后启动蓝屏、无法启动、不兼容 Win10 解决方案
  17. 计算机图片显示简单原理
  18. Python 批量汉字转五笔,Word输出为Excel
  19. 计算机学算法的意义,浅析算法在计算机编程中的重要作用
  20. 一文彻底搞懂执行上下文、VO、AO、Scope、[[scope]]、作用域链、闭包

热门文章

  1. 小程序中,iOS设备获取蓝牙设备的Mac地址
  2. .NET: 使用.NET Core CLI开发应用程序
  3. datagridview后台获取选中行的值的几种方式
  4. delphi的dbgrid控件点击title排序
  5. |Vijos|树状数组|P1512 SuperBrother打鼹鼠
  6. 用python做自己主动化測试--绘制系统性能趋势图和科学计算
  7. 我的Android进阶之旅------android Matrix图片随意的放大缩小,拖动(转)
  8. 《windows核心编程》 17章 内存映射文件
  9. HDU2819Swap(二分图最大匹配)
  10. 在新的标签页中代开编辑文件