“随机过程随机过,实变函数学十遍,微机原理闹危机,汇编语言不会编”
这些课程真的太难了,大学里无数人为此伤透了脑筋,挂科率杠杠的。我当初也是的,特别是随机过程这门课,上完了一学期的课,只记住了几个公式,问我干嘛的?不知道!
像其他的高等数学啊,电磁场电磁波啊,通信原理啊,我都能大体知道是干嘛的,用在什么地方。讲真的,唯独就随机过程,感觉这门课太变态了,学的我云里雾里的,尤其是我当时那本只有公式,别无其他的影印教材,看了让人直蒙圈。
此后的很长一段时间,随机过程都是我的噩梦,是一段不忍回忆的历史,不过庆幸还好工作中不会接触到它,学不会就罢了。可是---直到我最近买了一本机器学习的书,翻开目录,看到了马尔可夫随机场时。。。哎,还是乖乖的去把马尔可夫链这个随机过程里很重要的概念搞搞清楚吧。
这几天又把之前的教材翻开复习了一遍,这才对随机过程和马尔可夫链有了更为深入的了解。
接下来,我用一个简单的例子,来给大家讲讲马尔可夫链到底是什么东东。
讲马尔可夫链不得不提到随机过程,因为它是随机过程课本中的,啊啊。
顾名思义,它其实就是个过程,比如今天下雨,那么明天下不下雨呢?后天下不下雨呢?从今天下雨到明天不下雨再到后天下雨,这就是个过程。那么怎么预测N天后到底下不下雨呢?这其实是可以利用公式进行计算的,随机过程就是这样一个工具,把整个过程进行量化处理,用公式就可以推导出来N天后的天气状况,下雨的概率是多少,不下雨的概率是多少。说白了,随机过程就是一些统计模型,利用这些统计模型可以对自然界的一些事物进行预测和处理,比如天气预报,比如股票,比如市场分析,比如人工智能。它的应用还真是多了去了。
话说回来,还真是佩服能构造出这些统计模型的大牛,简直脑洞大开啊。
好了,终于可以来看看马尔可夫链 (Markov Chain)到底是什么了。
它是随机过程中的一种过程,到底是哪一种过程呢?好像一两句话也说不清楚,还是先看个例子吧。
先说说我们村智商为0的王二狗,人傻不拉几的,见人就傻笑,每天中午12点的标配,仨状态:吃,玩,睡。这就是传说中的状态分布。
你想知道他n天后中午12点的状态么?是在吃,还是在玩,还是在睡?这些状态发生的概率分别都是多少? (知道你不想,就假装想知道吧~~学习真的好累~~)
先看个假设,他每个状态的转移都是有概率的,比如今天玩,明天睡的概率是几,今天玩,明天也玩的概率是几几,看图更清楚一点。
这个矩阵就是转移概率矩阵P,并且它是保持不变的,就是说第一天到第二天的转移概率矩阵跟第二天到第三天的转移概率矩阵是一样的。(这个叫时齐,不细说了,有兴趣的同学自行百度)。
有了这个矩阵,再加上已知的第一天的状态分布,就可以计算出第N天的状态分布了。
S1 是4月1号中午12点的的状态分布矩阵 [0.6, 0.2, 0.2],里面的数字分别代表吃的概率,玩的概率,睡的概率。
那么
4月2号的状态分布矩阵 S2 = S1 * P (俩矩阵相乘)。
4月3号的状态分布矩阵 S3 = S2 * P (看见没,跟S1无关,只跟S2有关)。
4月4号的状态分布矩阵 S4 = S3 * P (看见没,跟S1,S2无关,只跟S3有关)。
...
4月n号的状态分布矩阵 Sn = Sn-1 * P (看见没,只跟它前面一个状态Sn-1有关)。
=================================更新============
附:S2 的计算过程 (没兴趣的同学自行略过)
欢迎关注我的微信公众号:红猴子
这是一个工科生涨知识的号,公众号的内容有CS\EE技术, 职场以及经验谈,知乎专栏文章会首发于我的微信公众号,希望能给迷茫和困惑中的朋友一些启发与帮助,欢迎围观