为什么机器可以学习(一)

*1 机器学习是否可行

有没有人在学习当中有这样一种忧虑,我们在训练数据所得到的模型是否像,真的能在未来的预测中表现的一样好。不妨再具体一些,股市中我们根据历史数据学到了一个表现很不错的模型,你敢按照模型对未来的预判操作真金白银的投资吗?

2.没有人可以预测未来

我们先来看下面这个例子。

也不知是谁从哪儿搞来了这么几条数据,整理成表格1的前三列所示( | 样本编号 | 特征 | 标注 | ),希望我们找出特征和标注之间的规律。

于是,八路、霹霹、王抗美、沃伯特 4 位算法工程师对这个问题进行了学习,最终得到了4个模型。

据说八汰使用了PLA学习算法,学得了模型g1。他把g1所逼近的 Ground Truth 记作f1。
据说霹霹使用了强化学习算法,学得了模型g2。他把g2所逼近的 Ground Truth 记作f2。
据说王抗美使用了深度学习算法,学得了模型g3。他把g3所逼近的 Ground Truth 记作f3。
而沃伯特则没有透露他的算法,总之得到了模型g4。他把g4所逼近的 Ground Truth 记作f4。这 4 个模型学得怎么样呢?我们来看看表格1的后4列,这4列记录了模型的输出。比照第三列的样本标注可以看到,在训练数据上模型的输出和样本标注完全一致,4个人的模型都表现的相当好.)
在这里插入图片描述
我们发现模型在训练集上面的表现非常好,但是在训练集上面的表现不具备代表性,我们需要对未知数据进行预测。未知数据上面的表现才具有一定的代表性。
于是我们找到了表格二的两组数据,这两天数据的标注是未知的,学习到的模型在训练集上面的表现相同,但是在预测数据上面的表现却各不相同。
表格二
在这里插入图片描述
机器学习中有关非常有名的定理叫做 No free Lunch,在这种例子描述的情况下,这些算法的期望水平是一样的。

3 用N0 free Lunch看世界

具体来说,在上面的例子中,在这批不知从哪儿来的训练数据的情况下,可能产生训练数据的 Ground Truth f 有多个,但又因为没有具体的场景,导致这多个 f 是真正产生这批训练数据的 Ground Truth 的概率是一样的。

而无论哪种学习算法必定最终倾向了其中的某个 f ,因此最终这些算法的期望水平就是一样的。(学习算法的这种倾向,称为学习算法的归纳偏好(inductive bias),简称“偏好”。)

后面我们会看到,在具体的实际场景中,某些 f 代表的可能性发生的概率大,某些 f 代表的可能性发生的概率小,某些可能性则根本不会发生。它们的概率不是均等的,因此不再满足NFL定理的前提。举个例子,比如有一个不透明的存钱罐,里面有几百颗硬币。你随机抓出一把发现抓上来的全都是1元的硬币。这时让你预测再捞一次发生的情况,很显然捞上来全部是1角的概率,就会远远的低于全部是1元的概率。

这个时候的黑色罐子,在我们看不见的上帝真相之间,世界发生了倾斜。

于是,在具体的现实问题中,那些归纳偏好与问题本身匹配的算法就能取得很好的效果,从而另学习是可行的。

最终总结一句,我们花了那么大的力气,绕了一大圈连蒙太奇都用上了,就是希望你能理解NFL定理背后所表达的哲学,即:
脱离具体的问题来谈模型的好坏,是没有任何意义的。

猜你喜欢

转载自blog.csdn.net/weixin_42522635/article/details/86352271
今日推荐