隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下

隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下

最近我认识了一个姑娘,这个姑娘长得不错,眼睛大大的,个人高挑,身材火辣,对人很喜欢笑。而且这个爱笑的姑娘对我还经常打招呼,笑脸相迎,哎呀看的我胸口小鹿乱撞,是不是喜欢我呢?


隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下



隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下


哎…我这没车没钱没房子,就是一个屌丝码农,172的个子,长相一般,难道看上我了!!如果能看上我的话,这单身多年的问题就解决啦,就可以赶紧打电话给老妈啦~~,不要再给我介绍某某某啦!怎么办,最近在搞机器学习,要不用机器学习算法来预测一下吧!



01.

机器学习

贝叶斯算法


啥是贝叶斯算法,我们先来做一些定义。事件A代表姑娘对他人笑,事件B1代表姑娘喜欢一个人,而事件B2则代表了姑娘不喜欢一个人。事件的定义如下图所示。

隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下


我们假定这位姑娘对一个人笑的概率为0.7,也即P(A) = 0.7,同理我们也对事件B1和事件B2的概率做出假设,如上图所示。P(B1) = 0.2, P(B2) = 0.8。这里我们假设这个姑娘要么是喜欢一个人,要么是不喜欢一个人,所以有P(B1) + P(B2) = 1。这里我们还假定姑娘喜欢一个人的情况下对他笑的概率是0.7,也即P(A|B1) = 0.7,而姑娘不喜欢一个人对他笑的概率是0.3,即为P(A|B2) = 0.3。



所以有了上述的定义之后,我们如何利用贝叶斯公式来计算姑娘对我笑其实是喜欢我们的概率,也就是求P(B1|A)的大小呢?


隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下



我们可以这样来思考,一个姑娘对一个人笑,在我们的上述的定义中,只有两层的含义呢:
  • 要么是喜欢这个人
  • 要么是不喜欢这个人
那么只要求出在喜欢一个人的概率之下(P(B1))乘以该姑娘喜欢一个人并对其笑的概率,再除以该姑娘对所有人笑的概率,不久可以求出来我们所要寻求的结果了吗?这段话利用下图进行直观的解释更加比较容易理解。


隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下

上图中不同形状代表的是不同的概率大小,而我们最终所要求的值P(B1|A)也就是P(喜欢一个人|对一个人笑)的大小。

所以我们可以得到最后的贝叶斯公式为

隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下


为了更好的让大家理解贝叶斯公式,我们针对上述公式来举个例子:

1).假设这位姑娘对每个人都微笑,那么根据人们的经验,她对你笑说明不了任何问题。

2).而上述公式中P(对一个人笑|喜欢一个人)和P(对一个人笑|不喜欢一个人)两项的值都是1

3).因为不管她喜不喜欢他人,这个姑娘都会对人微笑

此时有=>  P(喜欢一个人|对一个人笑)=P(喜欢一个人)

4).也就是说她对你微笑并没有改变任何事情。


再举另外一个比较极端的例子,这位姑娘只对她喜欢的人微笑,这包含了两个假设,用公式描述就是P(喜欢一个人)=P(对一个人微笑),并且P(对一个人笑|喜欢一个人)=1

此时有=>P(喜欢一个人|对一个人笑)=1。

那么,她肯定是喜欢你的。


隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下



02.

用程序来算一下


下面我们利用python来阐述上面的过程。程序如下。

隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下

上图的程序中,我们利用python将贝叶斯公式进行了简单的实现,并得到了我们想要得到的概率值。


我们上述的程序中,将一个姑娘对人笑的概率设成固定值0.7,喜欢一个人的概率为0.2,与之对应的是不喜欢一个人的概率为0.8


然后你对着这个模型输入:
  • 姑娘喜欢一个人并对其笑的概率 
  • 姑娘不喜欢一个人并对其小的概率
你能知道 她对你笑到底是啥意思?



上述的讲述中,小编利用一个简单的示例带领大家理解了一下贝叶斯公式的内容,并对其进行程序实现,贝叶斯公式在机器学习中的应用范围非常的广泛,其实日常生活中经常用到!


其实机器学习看似非常深奥,但是掌握了之后对我们的帮助很大!有兴趣的同学,也可以动手研一下。以上就是小编为大家带来的分享,希望大家在阅读的同时能有所收获。


最近补充一句,我准备邀请她一起吃个西餐,当面谈一下我的算法,问问她到底怎么想的,机智如我,祝我成功!


往期热门:

漫画,开学季来临,用Python告诉你,女朋友应该从全国的哪个城市找

天下武功为快不破,戏说Python与Go高并发争锋!

获取干货源码,阅读更多有趣的案例,也可以直接去微信公众号【菜鸟学Python】获取。
菜鸟学Python » 隔壁的女神,老是对我笑?啥意思呢,我就用Python来分析一下