https://www.toutiao.com/a6669798537494004227/

“The future is independent of the past given the present!”

这句话看上去很拗口,但是却蕴含着“马尔科夫链”和人生哲理。请听我慢慢分解。

01 强化学习(Reinforcement Learning)

最近,机器学习(Machine Learning)和人工智能(Artificial Intelligence)都是热门话题。代表着人类技术的未来。在机器学习中,强化学习(Reinforcement Learning)则是占据着相当重要的位置。

Reinforcement Learning is a sub-field of Machine Learning which deals with the process of decision making based on the rewards being received by the agent.

举个例子就明白了:

强化学习 - 图片来源 Safaribooksonline

上图中,Agent是一个机器人,这个过程很简单,教会机器人走路,一步一步朝着目标前进。前进过程中,会有很多选择,有的选择会带来回报,比方说正50分,有的则会带来惩罚和损失,比方说负50分。那么,最后机器人到达终点,判定行走线路的优劣则变成了分数高低的评判。

如上例中,机器人选择了有火的分岔路,损失了50分;那么,相关数据会被记录下来,形成“火 = 坏的情况,扣分”的记忆,这样就能保证之后避免走到有火的分叉口了。

生活中的例子是:狗的训练

金毛

  • 比如说,你要训练狗狗握手,那么在小狗成功握手之后,你要奖励一块饼干,这样反复多次,小狗就会有 “握手 = 饼干(奖励)”的记忆,最后学会握手。
  • 如果小狗随地大小便,就要有惩罚措施,让小狗认为它的行为会带来惩罚。

这就是强化学习的过程,而其中 马尔科夫链 又是必不可少的一环。

02 马尔科夫链

安德雷·马尔科夫

安德雷·马尔科夫,1856年出生的俄国著名数学家,他和切比雪夫、李雅普诺夫一起,将概率论从濒临衰亡的边缘拯救出来。三人中以马尔科夫的贡献尤为重要,潜心向学的马尔科夫,年仅40岁就被选为科学院院士,一生中发表的概率论方面的文章或专著共有二十五篇(部)之多。他研究并提出一个用数学方法就能解释自然变化的一般规律模型,被命名为马尔科夫链(Markov Chain)。

马尔科夫链是一个随机过程,同时马尔科夫链的记忆类似于“金鱼的记忆只有3秒”,非常的健忘。

1 - 2 - 3 - 4 - 5 - 6

比如说,你现在站在5对6 进行预测,根据马尔科夫链的知识,6的状态只和5有关,而前面1到2, 2到3, 3到4,4到5的整个过程无关。

马尔科夫链认为 过去所有的信息都被保存在了现在的状态下了

马尔科夫链被用的最多的例子就是 天气预测了:

天气预测

比方说,今天下雨了(rainy),那么明天的天气会怎么样呢?

如上图:

  • 今天下雨,明天继续下雨的可能性为0.8;
  • 今天下雨,明天下雪的可能性为0.02;
  • 今天下雨,明天晴天的可能性为0.18;

也就是说,我只要知道今天是下雨,我就能知道明天天气的可能性,而不用去管前天是什么天气。

非马尔科夫链,图片来源Brilliant

袋中取球问题

在学习概率论的时候,基本上会遇到“袋中取球”的问题。如上图,袋中有2个绿球,2个红球,3个蓝球,我下一次取球是绿色的概率是多少,取完的球不放回袋中?

假设之前的取球结果是:绿,红,蓝,蓝

那么,我下一次取球的时候,袋中只有绿色球1个,红色球1个,蓝色球1个,我下一次取球的是绿色球的概率是1/3。这不仅和我最后一次取得球是蓝色有关,也和我之前每一次取的球的颜色有关,所以这个过程不是一个马尔科夫链过程。

马尔科夫链,图片来源Brilliant

如果是“袋中取球”,每一次取完球都放回袋中,那么,你下一次取球是绿色的概率始终是2/7。这就建立了一个马尔科夫随机过程

03 马尔科夫链的例题和应用

马尔科夫链在生活中应用广泛,

  • 比如时下火热的语音识别

让机器“听懂”人类的语言,两个马尔科夫模型就解决了:

声学模型:利用HMM建模(隐马尔可夫模型),HMM是指这一马尔可夫模型的内部状态外界不可见,外界只能看到各个时刻的输出值。对语音识别系统,输出值通常就是从各个帧计算而得的声学特征。

语言模型:N-Gram最简单有效,所以应用的也最广泛。它基于独立输入假设:第n个词的出现只与前面N-1个词相关,而与其它任何词都不相关,整句的概率就是各个词出现概率的乘积。这些概率可以通过直接从语料中统计N个词同时出现的次数得到。

  • 天气的预测

  • 金融领域

接触股票的朋友应该知道,股票价格的预测其实是一个典型的马尔科夫链过程,比如今天A公司股价是¥50,明天的股价可能是¥100,也可能是¥20,这只取决与公司今天的整体状况和市场对股价的预期。而与A公司1个月前的股价无关。

通过马尔科夫链的模型转换,我们可以将事件的状态转换成概率矩阵,如下例:

A和B两个状态,A到A的概率是0.3,A到B的概率是0.7;B到B的概率是0.1,B到A的概率是0.9。

a. 初始状态在A,2次运动后,状态还在A的概率是多少?

不难吧!P = A-A-A + A-B-A = 0.3 * 0.3 + 0.7 * 0.9 = 0.72

b. 如果是2次运动后的状态概率分别是多少?初始状态和终止状态未知?

马尔科夫链矩阵示例

有了状态矩阵,我们可以轻松得出以下结论:

  • 初始状态A,2次运动后状态为A的概率是0.72;
  • 初始状态A,2次运动后状态为B的概率是0.28;
  • 初始状态B,2次运动后状态为A的概率是0.36;
  • 初始状态B,2次运动后状态为B的概率是0.64;

马尔科夫链的有趣问题还有很多,有机会可以和大家一起研究下。

04 总结

马尔科夫链也蕴含着哲学的思想:

现在的你是过去早就的,而未来的你与你的过去无关,只和你当下的努力和选择有关,放下过去,不管多么辉煌或者糟粕,背上行囊,什么时候出发都来得及!

马尔科夫链(Markov Chain),机器学习和人工智能的基石相关推荐

  1. 马尔可夫 java_马尔可夫过程(以马尔科夫链Markov为例)

    马尔可夫过程(以马尔科夫链Markov为例) 马尔可夫过程 马尔可夫过程的大概意思就是未来只与现在有关,与过去无关. 简单理解就是渣男只在乎下一刻会不会爱你只取决于这一时刻对你的新鲜感,而与你之前对这 ...

  2. 马尔科夫链Markov以及空间Markov Matlab代码

    翻阅众多帖子没有一个帖子给出来,正确的清晰地马尔科夫链代码,实属悲哀.  本人在发表上一篇论文中用到了 普通马尔科夫链,顺便有偿分享一下代码,属实辛苦工作.  现代码可以计算四区间(论文中最常用的 低 ...

  3. 【强化学习】MOVE37-Introduction(导论)/马尔科夫链/马尔科夫决策过程

    写在前面的话:从今日起,我会边跟着硅谷大牛Siraj的MOVE 37系列课程学习Reinforcement Learning(强化学习算法),边更新这个系列.课程包含视频和文字,课堂笔记会按视频为单位 ...

  4. 马尔科夫链(Markov Chain)

    1,马尔可夫性 马尔可夫性(Markov Property)是指系统的下一个状态仅与当前状态有关,而与以前的状态无关 (即无记忆性(memorylessness),系统不记得当前状态以前的状态,仅仅基 ...

  5. 机器学习算法 10 —— HMM模型(马尔科夫链、前向后向算法、维特比算法解码、hmmlearn)

    文章目录 系列文章 隐马尔科夫模型 HMM 1 马尔科夫链 1.1 简介 1.2 经典举例 2 HMM简介 2.1 简单案例 2.2 案例进阶 问题二解决 问题一解决 问题三解决 3 HMM模型基础 ...

  6. 【机器学习】强化学习:马尔科夫决策过程(Markov decision process)

    本章是强化学习的基础,主要讲的就是马尔科夫决策过程,以后的内容都是以这一节为基础的,所以对本节的相关概念的理解是很重要的. 这一节的概念比较多,也是后面章节的基础,一开始笔者也是一头雾水,只有多看几遍 ...

  7. 机器学习强基计划6-1:图文详细总结马尔科夫链及其性质(附例题分析)

    目录 0 写在前面 1 从一个实例出发 2 马尔科夫链 3 马氏链的基本性质 4 C-K方程 5 平稳状态分布 6 遍历性与例题分析 0 写在前面 机器学习强基计划聚焦深度和广度,加深对机器学习模型的 ...

  8. 阿尔法狗怎么用机器学习做决策:马尔科夫链减少搜索空间说起(附PDF公号发“马链搜索”下载)...

    阿尔法狗怎么用机器学习做决策:马尔科夫链减少搜索空间说起(附PDF公号发"马链搜索"下载) 以色列理工Dr许铁 数据简化DataSimp 今天 数据简化DataSimp导读:Alp ...

  9. 马尔科夫链蒙特卡洛_蒙特卡洛·马可夫链

    马尔科夫链蒙特卡洛 A Monte Carlo Markov Chain (MCMC) is a model describing a sequence of possible events wher ...

  10. 蒙特卡洛分析_随机模拟:马尔科夫链蒙特卡洛采样MCMC与EM算法「2.3」

    最近学习了机器学习中的马尔科夫链蒙特卡洛(Markov Chain Monte Carlo, 简称MCMC) 相关的知识. 主要内容包括: [1]蒙特卡洛原则,及其应用于采样的必要性(已经发布在头条) ...

最新文章

  1. OI常用的常数优化小技巧
  2. beetl模板引擎之自定义html标签,Beetl模板引擎自定义分页标签
  3. mysql rs.next_JDBC结果集rs.next()注意事项
  4. 动脑学院_张晨到梅州职业技术学院施工现场调研:强力加快进度,确保项目如期建成...
  5. 一款好看的pycharm主题Atom One Dark
  6. ICCMO微信公众账号开发系列(1)接入微信公众账号
  7. kibana报表展示
  8. SEON - 1 怒怼Dp(1)
  9. HTML基础常见面试题
  10. 【CF 513F2】
  11. 机器人瓦力有什么西方的风格_机器人瓦力中英文对照影评
  12. 基于FPGA的花样流水灯
  13. amoled led 排列_AMOLED的PWM调光和LCD蓝光,哪个比较伤眼?
  14. python计算当天零点时间
  15. 用公式π/4≈1/1-1/3+1/5-1/7+...求π的近似值,直到发现某一项的绝对值小于10的-6次方为止。
  16. iis某狗注入绕过(get)
  17. KDB_Database_Link 使用介绍
  18. 智慧景区指挥调度系统介绍
  19. ELO kernels 记录
  20. java word设置纸张a3,word无法设置A3纸张大小

热门文章

  1. python 直播源_直播源获取软件下载|直播源获取工具(斗鱼B站西瓜)下载-蛙扑下载站...
  2. Win10 powershell字体设置
  3. [置顶] woff格式字体怎么打开和编辑?
  4. dodaf体系结构建模与分析系统软件
  5. 利用R语言的GWmodel进行GWR模型分析(内含错误解决方法)
  6. 基于javaEE的医院病历管理系统的设计与实现
  7. 常见的html字体,网页设计中最常用的字体有哪些
  8. 使用FlyMcu.exe中出现的问题
  9. 网易云音乐NCM格式转化为mp3
  10. 计算机组成原理 - 基本概念