其他分享
首页 > 其他分享> > 论隐马尔可夫模型在谈恋爱中的重要性

论隐马尔可夫模型在谈恋爱中的重要性

作者:互联网

  学习了隐马尔科夫模型至今也有一些时日了,前一阵子由于会错了女朋友的意思,搞得心里有些芥蒂,虽然没有掀起什么波澜,但这却引起了我对人生的思考:

如何通过这件事让我们更好地理解隐马尔可夫模型呢?

  首先我们来讲一个故事:

  故事的主人公是我们的朋友小丁,小丁同学最近交了一个女朋友芳名李建钢,两个人平日里感情还挺不错。这天下午,小丁和李建钢在公园散步,路上遇到了小丁的前女友,赵铁柱,两人一见面,竟热情的聊起来。

  李建钢在一旁心中满是尴尬,但还是礼貌的小丁的前女友说了声“你好”

  小丁见状,心中不禁为女朋友的“大度 ”点了个赞,转过头来,邀请赵铁柱和他们一起出游。

  李建钢心中不乐意了,但是一时找不到什么理由拒绝,在大庭广众之下也不好发脾气,从牙缝中挤出一句“多一个人也热闹点”。

  小丁这时候还没有意识到事情的严重性,心里感激涕零,暗暗赞赏自己现女友的与众不同。三个人就这么度过了一个“愉快”的下午。

  晚上各自回到家之后,李建钢越想越气,觉得自己没有受到起码的尊重,最后觉得这样的男友扔了也罢,反手一条微信,发了一句“你是个好人”,然后就将小丁删除、拉黑了。

  小丁回到家里,还在回味今天的偶遇,也不禁啧啧赞叹李建钢表现的“大度”,这时手机收到李建钢的消息。

  “我是个好人?交往了这段时间,这个女人总算明白我和那些渣男不一样了!”小丁乐开了花,关上灯,闭上眼睛,寻思着明天一定要给李建钢带的煎饼果子中多加一个蛋,脑海中已然浮现出李建钢那幸福的表情。

现在我们分析一下这个故事,走进小丁这个笨蛋的内心世界。
废话不多说,推理开始~

  首先,不难看出,如果我们用马尔科夫模型来描述这个故事,那么“李建钢说的话”就可以看作观测序列,表示为OOO,这个是小丁同学可以观察到的;而“李建钢内心的想法”就可以看作状态序列,表示为III,这是小丁同学所看不到的。

I=(i1,i2,i3)O=(o1,o2,o3) I=(i_1,i_2,i_3)\\ O=(o_1,o_2,o_3) I=(i1​,i2​,i3​)O=(o1​,o2​,o3​)
在这里插入图片描述

  所有可能的状态的集合,就是李建钢的想法,可以简化为“生气”和“不生气”,用QQQ表示;
Q=("") Q=("生气",“不生气”) Q=("生气",“不生气”)
  所有可能的观测的集合,就是李建刚说的话,也可以简化为“好话”和“气话”,用VVV表示。
Q=("") Q=("好话",“气话”) Q=("好话",“气话”)
  根据观察,可以知道观测序列:
O=() O=(“好话”,“好话”,“好话”) O=(“好话”,“好话”,“好话”)
  李建钢可能属于讨好型人格,说的全是“好话”~

  我们知道隐马尔可夫模型的三要素:λ=(A,B,π)\lambda = (A,B,\pi)λ=(A,B,π)。在这件事情中,三要素中的概率不去通过算法计算,而是使用生活的常识,对女孩子的心思有个先验的概率估计。

  李建钢是一个不错的女孩,但是有着很强的自尊心,所以偶遇小丁的前女友,虽然有一点点尴尬,但是还是保持礼貌的微笑,并且大方地打了招呼,可以猜测,遇到这种情况,李建钢会有0.6的概率生气,有0.4的概率不会生气。π\piπ就可以表示为:
π=(0.60.4) \pi= \begin{pmatrix} 0.6\\0.4 \end{pmatrix} π=(0.60.4​)

  和一些女孩子一样,当李建钢生气的时候,说的话总是让人捉摸不定,说好话和气话的概率各位0.5;当她不生气的时候,说好话的概率是0.9,说气话的概率是0.1,这0.1的气话可以理解为偶尔撒撒娇。那么BBB就可以表示为:
B=(0.50.50.90.1) B= \begin{pmatrix} 0.5&0.5\\0.9&0.1 \end{pmatrix} B=(0.50.9​0.50.1​)

  AAA的情况有些复杂,如果小丁当时察觉到女朋友生气了,开始和女友好好沟通,并与前女友保持距离,那么李建钢由生气转换成继续生气的概率是0.4,同时有0.6的概率被哄好,由不生气转换成生气的概率是0.3,由不生气保持不生气的概率是0.7,这时AAA表示为A1A_1A1​:
A1=(0.40.60.30.7) A_1= \begin{pmatrix} 0.4&0.6\\0.3&0.7 \end{pmatrix} A1​=(0.40.3​0.60.7​)

  但是小丁看起来不太聪明的亚子,并没有采用上述的方法,这时李建钢由生气转换成继续生气的概率是0.9,同时有0.1的概率被哄好,由不生气转换成生气的概率是0.9,由不生气保持不生气的概率是0.1,这时AAA表示为A2A_2A2​:
A2=(0.90.10.90.1) A_2= \begin{pmatrix} 0.9&0.1\\0.9&0.1 \end{pmatrix} A2​=(0.90.9​0.10.1​)

  我们知道了模型和观测序列,想要知道状态序列,这个问题属于隐马尔可夫模型基本问题中的预测问题。
  下面我们来帮助小丁同学使用维特比算法推测状态序列,也就是李建钢内心真实的想法。

  根据事情的经过不难看出,小丁果断采用的是第二种方案,即选择使用了A2A_2A2​这个矩阵。
  使用δi(j)\delta_i(j)δi​(j)来表示状态为jjj,第iii个时间的观测为“好话”的概率。状态1表示为“生气 ”,状态2表示“不生气”
δ1(1)=0.6×0.5=0.3δ1(2)=0.4×0.9=0.36 \delta_1(1)=0.6×0.5=0.3 \\ \delta_1(2)=0.4×0.9=0.36 δ1​(1)=0.6×0.5=0.3δ1​(2)=0.4×0.9=0.36
  取其中最高的数接着进行计算,这里可以看出,李建钢还算是一个大度的人,偶遇前女友之后还是可以大概率呈“不生气”的状态。接下来:
δ2(1)=0.36×0.9×0.5=0.162δ2(2)=0.36×0.1×0.9=0.0324δ3(1)=0.162×0.9×0.5=0.0729δ3(2)=0.162×0.1×0.9=0.01458 \delta_2(1)=0.36×0.9×0.5=0.162 \\ \delta_2(2)=0.36×0.1×0.9=0.0324\\ \delta_3(1)=0.162×0.9×0.5=0.0729 \\ \delta_3(2)=0.162×0.1×0.9=0.01458 δ2​(1)=0.36×0.9×0.5=0.162δ2​(2)=0.36×0.1×0.9=0.0324δ3​(1)=0.162×0.9×0.5=0.0729δ3​(2)=0.162×0.1×0.9=0.01458
在坐标轴上的显示为:
在这里插入图片描述
  经过分析我们知道,李建钢真正生气的点在于小丁竟然邀请前女友和他们一起出行,仔细一想,这个生气的理由很符合常理。而小丁竟然在这之后一错再错,最终酿成悲剧!

  如果我们使用第一种情况,使用“哄+好好沟通+和前女友保持距离”的 策略,再来进行计算:
δ1(1)=0.6×0.5=0.3δ1(2)=0.4×0.9=0.36δ2(1)=0.36×0.3×0.5=0.054δ2(2)=0.36×0.7×0.9=0.2268δ3(1)=0.2268×0.3×0.5=0.03402δ3(2)=0.2268×0.7×0.9=0.142884 \delta_1(1)=0.6×0.5=0.3 \\ \delta_1(2)=0.4×0.9=0.36\\ \delta_2(1)=0.36×0.3×0.5=0.054 \\ \delta_2(2)=0.36×0.7×0.9=0.2268\\ \delta_3(1)=0.2268×0.3×0.5=0.03402 \\ \delta_3(2)=0.2268×0.7×0.9=0.142884 δ1​(1)=0.6×0.5=0.3δ1​(2)=0.4×0.9=0.36δ2​(1)=0.36×0.3×0.5=0.054δ2​(2)=0.36×0.7×0.9=0.2268δ3​(1)=0.2268×0.3×0.5=0.03402δ3​(2)=0.2268×0.7×0.9=0.142884
在这里插入图片描述
  可以看出,李建钢生气的概率一直维持在一个很低的水平!

  由此得出结论,谈恋爱还是要学会哄人的。— —

  小丁同学算不上什么渣男,也不是特别聪明,归根揭底,还是当时学习隐马尔可夫模型的时候没有学好,没有在一开始关注到李建钢的想法,并且后面一错再错,导致了最后的不欢而散。

  第二天,小丁同学捧着煎饼果子去找李建钢,却发现自己联系不上李建钢了。在苦苦哀叹造化弄人的同时,也希望他能冷静下来,明白学好数学的重要性。

(狗头.jpg)

标签:0.9,生气,0.36,谈恋爱,0.5,小丁,李建钢,马尔可夫,论隐
来源: https://blog.csdn.net/qq_34924057/article/details/106691426