谈谈机器学习的基本问题,不谈数学!

点击上方关注,All in AI中国

不知道你有没有这种感觉,在阅读论文的时候,我们经常会遇到一些很长的专业术语。所以,这篇文章我想要写一些我的认知中机器学习和人工智能领域最重要的主题,但不需要先验知识或数学技能。我会以漂亮图片和冷色调的形式展现我的作品,希望经过这几分钟的阅读,你可以有一个直观的理解,这样在你遇到一些晦涩难懂的内容的时候更容易理解。

用句玩笑话来说,如果之前的几年你没有生活在岩石下,你就会知道,人工智能将是下一个重要的事情。汽车被自动驾驶打败了,围棋比赛中,电脑被人工智能打败了,很多流水线的工作也被人工智能取代了,那么,很快是不是机器人会统治我们的生活,甚至推翻我们的政府,奴役我们的孩子······

当然,这只是一部分人群对于人工智能的设想,但同时也确实引出了一个问题:人工智能可能还不会像终结者演的一样统治我们,但它的限制在哪?那么答案就非常明显了,这取决于你对人工智能的定义。如果你将人工智能定义为仅仅是会使用Go的计算机,那么,我要告诉你的是,总有一天将会包含比今天更好的Go程序。但可能没有人会是使用这个定义。我不认为当梅赛德斯宣传她们的智能驱动器时,讨论的是汽车的GO的程序,另一方面,您可以像营销人员那样定义人工智能,我们的产品已经拥有了人工智能,其实在生活中我们也会经常看到这样的产品,某手机标榜人工智能,然而用起来就像是人工“智障”,它实际上就是一个卖点而已。

那么,到底什么才是真正的智能呢?经过对人类大脑、心理学乃至蚂蚁社会的大量调查后,我得出的结论是,智能包括两个主要部分:第一,识别模式的能力;第二,应用这些模式来实现目标的能力。对此有很多理由证明,但有一个例子可以很清楚地说明这一点,我们都知道轶事证据是最强大和最逻辑合理的论证。

想想那些非常聪明的人,比如数学方面突出的,他可能在课堂上不是很认真听的样子,但可能只是因为他已经学会了本质的模式,那么在完成家庭作业的时候应该也会很快,因为他善于将自己在课堂上学到的知识应用到家庭作业中去。这个定义也适用于其他类型,比如在艺术方面有天赋的人似乎很快就会意识到什么是好的艺术,并利用这种本能创造好的艺术。如果这几个生活中的例子还是不能够说服你,那么你需要去看看维基百科了,这你总没办法辩驳了吧。

谈谈机器学习的基本问题,不谈数学!

那么你就会发现,有一个专门研究算法的领域,它创建模型,从数据中提取模式,并将其应用于其他数据,这就是机器学习。我想谈谈机器学习领域中最为重要的概念之一,过度拟合。过度拟合是一种花哨的说法,它表示模型发现的模式过于复杂,这会导致预测未来点时出现问题。

谈谈机器学习的基本问题,不谈数学!

假设您的任务是绘制一条线来将红色与蓝色点分开,但是这些点的颜色可能会有些随机性,数据有点混乱。那么,黑线似乎是一个合理的解决方案。它没有正确地对所有点进行分类,但它似乎考虑到边界上的一些点可以朝任何方向进行移动。绿色解决方案成功地分离了所有点。但是区别在于:我已经突出显示了一些区域,如果你按经过绿线,新点将被归类为红色,而如果你经过黑线,则新点将被归类为蓝色。

谈谈机器学习的基本问题,不谈数学!

这肯定不是通过Microsoft Word完成的。我使用的是像Photoshop这样的专业程序。

现在,作为一个不想试图欺骗读者的作家,我相信你会同意我的观点,突出显示的黄色区域更可能包括蓝色而不是红色点。过度拟合 - 绿线在现有点(训练点)上表现更好,但在新点(测试点)上表现更差。

我们可以说,产生绿线的模型在训练点中发现了太多的模式。它很擅长找到模式,但它可能没有发现它发现的某些模式可能不适用于新的点。那么,我们根本的问题就在于发现哪些模式是真实可用的,哪些是无用的。

我绝对不是第一个注意到这个问题的人,实际上我是在课堂上学到的。许多聪明的人试图通过使用长方程和许多希腊字母提出非常聪明的方法来解决问题,以防止模型找到像绿色的那样奇怪的线条;这称为正则化。无论正则化是在训练期间添加还是融入模型本身,这都是改进机器学习的方法。

我的观点略有不同。在我看来,我们跳过了最重要的一步。在诉诸花哨的数学之前,我们忘了问自己为什么。我们会遇到这样或那样的问题,比如,为什么天空是蓝色的,或者为什么我们存在于宇宙中,但这些不是我想要知道的问题,我更关心的是为什么一般情况下智能是有效的,也试图找出哪种模式有效,为什么下一个点应该是蓝色或者是红色,为什么不是紫色的。

这个问题不是我首先提出的。事实上,我不知道是谁先问过它,但幸运的是,一路上总有人提出一个答案:一些模式工作的原因是测试数据应该独立于训练数据绘制,而两者应该来自同一个分布。这只是一种数学方式,表明当我们测试模型时,我们不应该在训练它的时候将它置于不同的环境中。下一个点是紫色的可能性很小,因为我们已经看到很多点,而且没有一个是紫色的。毕竟,当我们掷一个六面骰子时,我们不能期望一半正面一半反面,但我们可以期望,如果我们以同样的方式投掷相同的硬币,我们应该会得到类似的结果。

借用一句励志名言:“如果你总是做你一直在做的事情,你将永远得到你一直在得到的东西。”在我写下这句话之前,我从未想过机器学习可以与励志演讲联系在一起。

谈谈机器学习的基本问题,不谈数学!

好的。它是通过Microsoft Word完成的:/

很好,让我们回到正题。这与区分实际模式和过度拟合有什么关系?如果您注意到上述情况,过度拟合的主要原因是绿线模型试图拟合一些异常值。假设我们可以以某种方式将点分组到不同的区域,其中一些区域包含异常值并且不符合找到的模式(黄色区域),而另一些区域包含确实符合找到的模式的点(绿色区域)。

直观地说,“绿色”区域应该更大,包含更多点,并且在预测未来的点时更准确。换句话说,如果更多的点出现在“绿色”区域,我们会预计它们是红色的。另一方面,如果在“黄色”区域出现更多的点,虽然有些点是红色的,我们会认为大多数都是蓝色的。当然,为了获得更多积分,我们总能收集更多数据。但有时候,你会发现自己是一个贫穷的本科生,没有其他人拥有的金钱,时间或资源,无论如何,收集更多数据是不可行的。因此,我们可以省略部分训练数据,并使用我们遗漏的点“添加”点数!这也不是一个新概念,这是使用验证集调用的(我们验证模型是从训练集中找到的模式)。使用验证集来确定过度拟合的特定区域是新的一种方法。

然而,人们没有这样做是有原因的。“绿色”区域听起来非常不错,但首先,它们很难找到,其次,这些区域的构建依赖于数据。简单地说,一些地区显然是“绿色”,而其他地区显然是“黄色”,但由于区域是围绕训练数据塑造的,因此一些地区难以着色。这个问题的解决方案依赖于与美国相同的基本原则。如果在不同数据上训练的两个模型得到相同的“黄色”区域,那会有点奇怪的。

因此,如果我们对在不同数据上训练的模型重复这种着色过程,对于我们在第一个模型中不确定的区域,我们可以在第二个模型中以决策者的眼光来观察它们的颜色!如果该模型找到相同的区域,那么我们可以非常肯定它不是偶然的,所以它应该是“绿色的”。相反,如果第二个模型没有找到该区域,那么它可能是无用的,它应该被涂成“黄色”。

还有一件事。我们如何找到这些地区?我们使用聚类!那么你可能会问什么是聚类?

谈谈机器学习的基本问题,不谈数学!

聚类是在数据中找到聚类(我不是故意讽刺)。如图所示,聚类只是在数据中找到三个聚类。同一聚类中的点看起来与模型类似。如果有多种方式转换点,并在模型中绘制(例如,在神经网络的每个层中),则根据定义,在所有图中位于相同聚类中的点与模型来说是无法区分。这很清楚,如果模型可以区分它们,那么它们在某些时候会处于不同的聚类中。无论如何,如果我们定义了这些点总是在同一个聚类中的位置,那么,我们就有了我们的区域!

机器学习就是寻找可以分离点(哦还有回归)的算法。算法倾向于找到绿线,因为这样可以最大限度地减少分类错误。机器学习的挑战是找到一种可以找到黑线的算法,因为这可能在新点上更好更有效。正则化,也就是花哨的数学,帮助我们更接近黑线。这就是它的全部!

你想要一个正式的版本,应用于深度学习,以达到最先进的结果吗?您是否对奥卡姆剃刀的合理性以及与传统正规化技术的联系感兴趣? - > https://arxiv.org/abs/1904.05488 < -

谢谢阅读!

谈谈机器学习的基本问题,不谈数学!

编译出品

相关推荐