如果几十年前的学术界也会像娱乐圈一样发通稿,或许会出现这种情况:
《本届神经信息处理系统国际会议圆满落幕,贝叶斯学派艳压全场》
《师承达尔文,自然进化学派讲述初心》
没错,在当年的学术圈也少不了互踩和撕X。还记得之前我们提过的贝叶斯学派吗?他们用“概率”和“验证”开启了学习型AI之路。
可在当年,对他们的嘲讽也不少,其中有一个特别有趣的段子是这样的:
“换一个灯泡需要多少个贝叶斯学者?”
“不确定。”
“不确定需要多少个人?”
“不,是贝叶斯学者们不确定灯泡是不是坏了。”
马尔科夫链条:指数终结者
的确,在贝叶斯相关理论的发展初期,概率这件事,似乎是和推理相对立的。理论上来说,如果你想知道明天中午食堂做咖喱鸡的概率是多少,只能拿出上个礼拜食堂的菜单,分别把周一的到周五“做了咖喱鸡没做红烧肉”、“做了红烧肉没做咖喱鸡”、“做了小炒肉没做咖喱鸡”等等很多种状态罗列出来。这样带来的结果,就是指数性暴增。
而想要避免这种问题,佩德罗·多明戈斯曾经举过一个非常生动的例子:
队长带着纵队人行军,想确认所有人都在跟着自己,可以用一种非常笨的方法:停下来自己数一数,还要走几步就得数一下。而聪明的办法是,问你身后的第一个人“你后面有几个人”,每一个士兵都问身后的士兵同一个问题,直到最后一个人说“后面没有人”。这样倒数第二个人可以回答“我身后有一个人”,这样每个人都会在后面人报的数字上+1。
这样既能得到士兵的数量,还不用停下来。而这一纵队士兵形成了一个链条,名叫马尔科夫链条。
马尔科夫其人:数学、哲学、民主斗争
说到马尔科夫其人,还有不少传奇事迹。这位来自俄罗斯的数学家在中学时期就开始厌恶各种宗教的祈祷和忏悔,喜欢读进步读物。入读彼得堡大学数学系后,马尔科夫的数学天赋愈发凸显,他师从著名的彼得堡学派数学家切比雪夫,致力于把概率论推向实际应用。
1896年,马尔科夫正式成为了彼得堡科学院的院士,他的《概率演算》不仅是数学学术著作,还扛起了唯物主义的大旗。在那个充满了皇权、专治、愚昧教义的年代,深受民主启蒙运动影响的马尔科夫再用自己的方式为真理和科学摇旗呐喊。
同年,俄国的最后一代沙皇尼古拉斯二世上任,他粗暴专横,阻止高尔基当选科学院院士。马尔科夫和契诃夫等多名科学家、文学家一起表达了对沙皇行为的不满,马尔科夫甚至还递交声明,强调科学院无意取消高尔基当选院士的资格,不能被强加。最后甚至用辞职表达自己的不满。
在马尔科夫的余生中,他除了用心执教、研究学术外,一直在不断试图和强权斗争。
马尔科夫链条的概念,就是指“一系列事件中,某一给定事件发生的概率只取决于以前刚刚发生的那一事件。”前苏联数学家辛钦这样解释这一概念:客观世界存在着这样一种现象,当下对未来的影响程度,与过去无关。当下是已知的,过去和未来就存在着一种名为“马尔科夫性”的独立的特性。
在那个新世界体系逐渐破壳而出,旧世界体系逐渐坍缩的年代。马尔科夫链条的概念有着太强烈的哲学寓意。
如何理解隐马尔科夫模型?
回到之前的话题,我们要是想知道明天食堂做咖喱鸡的概率是多少,只需要列一个矩阵,罗列出第一天吃了小炒肉/咖喱鸡/红烧肉,第二天吃咖喱鸡的概率。
也就是说,在马尔科夫的食堂菜单中,没有礼拜一到礼拜五的菜单,只有第N天和第N+1天的概率。
比马尔科夫链更出名的,是隐马尔科夫模型(HMM)。在这里,我们不对算法进行太多数学方面的解释,还是用食堂为例。我们在食堂能吃到小炒肉、咖喱鸡、红烧肉,是因为分别有三位厨师A、B、C当班掌勺做这几个菜。而厨师隐藏在后厨,不被我们发现。
这时我们的问题也变了,变成判断明天B大厨当班的概率是多少。我们明白了今天吃到小炒肉,就是厨师A当班,明天吃到红烧肉,就是厨师C当班。从菜品可以分析出有关隐藏在后厨的厨师的概率。
而这就是隐藏马尔科夫——一个隐藏的状态,随着时间变化,改变着表象。
随机是混沌世界中唯一的真理
在马尔科夫链刚刚得出结论那阵,其实已经有类似的案例出现在其他学科的研究中,比如传播学、遗传学等等,人们开始明白,很多事物不容易一步步推导出来,而是具有一定的随机性,只是没法吧这种东西数学化。
这个世界的很多事都没法清晰解读出层层道理,正因为概率、随机这种特性在生活中无处不在,才让马尔科夫性、隐马尔科夫模型成为了机器学习中的一种基础设施。
举个最简单的例子,之前提到过分词技术,拥有大量文字语料时,我们如何寻找分词规律?
“我们如何寻找规律”这句话是表象状态,隐藏在背后的,是“我们/如何/寻找/规律”这样的状态。
假设分词模式有“A”、“AX”“XAX”三种模式。句子中“我”字可以被分割入“-我”“我们”,“律”则可以被分割入“找规律”、“规律”“律-”。其中-代表句子的开始和结束。隐马尔可夫,就可以凭借上一个字的分词状态,判断下一个字各种分词状态的概率。
比如,当“我”字被分割入“我们”,们字被分割为“们”、“们如”等等的概率就是0。
这样只考虑前一个状态的算法,极大的减少了计算量(不用总是总览整个句子)。同样的道理,在语音识别、机器翻译、金融等等多种领域都已经有了成熟的应用。虽然后来LSTM的出现凭借着强大的“记忆力”功能,正在一些领域替代了隐马尔科夫。但马尔科夫相关概念在机器学习,甚至整个科学界的牢固地位依然是无法撼动的。
可以说马尔科夫让早期贝叶斯概率论有了更加实际的应用意义,到了后期,贝叶斯网络的发展又将马尔科夫链中的哲学思想蔓延到更广的领域。
在今天,隐马尔可夫模型随处可见,可马尔科夫隐藏在公式中的独立思辨精神,又去哪了呢?
原标题:启蒙运动时的数学理论,如何成为今天机器学习的基础设施?