赖以生存的算法:过拟合

过拟合(Overfitting),是机器学习里很容易犯的错误。观察琢磨之后,发现,不仅是在机器学习里,在生活,学习,工作,特别是创业中,也需要我们多加小心。

什么是过拟合

什么是过拟合?让我们举个考试的例子说明,我敢保证,如果你是学霸没经历过,你身边的吃瓜群众肯定有过。

说快要期末考试了,大辉有点慌,因为整个学期把功夫都用到了小微身上。临考前几天,他搜集到了过去五年的期末考卷,疯狂的刷题,背答案。经过通宵达旦的训练,终于把五套卷子烂熟于心。考试的日子到了,大辉脚步轻盈的走进教室,扫了小微一眼,信心满满的坐下,心想,一定要第一个交卷,让小微崇拜一下。可当他拿到试卷的时候,发现失策了,之前的五套试卷都白背了,一个题都没能再现。这就是过拟合,你把全部精力都放在了过往的数据上,而当不确定的未来真正来临的时候,你惊鄂的发现,在猛虎面前,你拿了个苍蝇拍。

考试的例子,通俗易懂。在机器学习里的过拟合,看起来高深莫测,也是同样的道理。说你要做一项研究,预测一个人的幸福感和婚龄的关系。你做了很多调研,统计了很多人在结婚前三年和后三年的幸福感,然后用了很多参数画了一条美妙的曲线,把大家的幸福感都准确的圈到了,你觉得你发现了史上最重要的幸福定律。然而当你拿着你的曲线,去问一对在一起四十多年的夫妇的时候,你发现,你的曲线就其实是个笑话。

不过话说回来,过拟合也不是你想办就能办的到的,只有像诺依曼那样的人才能说出这样的话,“用四个参数我可以拟合出一头大象,而用五个参数我可以让它的鼻子摆动”。

为什么会出现过拟合

为什么会出现过拟合?因为你太天真了。还拿考试的例子来说。过去五年的试卷,先不说你收集的是不是假试卷,即便是真的,出题的教授,今年也很有可能被勇敢的女学生举报。然后,新老师为了学生的前途负责,把题换了。机器学习也是同样的套路,不要天真的以为,眼前的训练数据,都是出淤泥而不染的青莲,它们很可能都沾上了污泥,你得用清水给冲净了,再用,即便表面冲净了,可你能确定它们的心是红的吗?

所以,当你根据已有数据,做决定的时候,一定要考虑到他们的不确定性。如果你明明知道,帮你做决定的数据,本身就存在不确定性,你还会在他们身上浪费大量的精力吗?感谢巴黎大数据从业交流微信群,从业界的最前线给我分享了,在深度学习里使用贝叶斯方法来处理模型不确定性的论文,这让我深受鼓舞,说明我们找到了数学的方法,来解决我们过于天真的问题。

过拟合的危害

如果,你只是因为死记硬背往年试卷,挂了科,那么你还有补考的机会。可如果你在创办企业,过拟合,会让你花光所有的钱,用尽所有人的耐心,做出一款没人用的产品。说白了,过拟合的危害,就是造成没必要的浪费。

在创业的过程中,你有一个令人魂牵梦绕的点子,初期在朋友中的调查也反响特别好,你觉得这个产品能改变世界。如果你握着这个点子和朋友的鼓励,闭门造车,那么你很可能就是在天真的过拟合了。而明白过拟合危害的创业者,会时刻提醒自己,所有的点子,所有的反馈,都存在不确定性。我的目的,是在漆黑的道路上,不断的摸索,利用这些不确定的微光,在所有的资源耗费殆尽前,找到一条可以盈利的路。