找回密码
 立即注册
搜索
查看: 152|回复: 0

机器学习与 R 语言:理解机器如何学习的必备指南

[复制链接]

2万

主题

0

回帖

6万

积分

管理员

积分
63619
发表于 2024-10-2 16:37:34 | 显示全部楼层 |阅读模式
本书本节节选自华章出版社Brett Lantz、李洪成、徐金伟、李编写的《机器学习与R语言(原书第2版)》一书第1章第1.3节更多章节有关船对船翻译的更多信息,您可以访问云栖社区“华章电脑”公众号。 1.3 机器如何学习

机器学习的正式定义是由计算机科学家 Tom M. 提出的:如果一台机器能够获取经验并利用这些经验来提高自己在未来类似经验中的表现,这就是机器学习。虽然这个定义很直观,但它完全忽略了经验如何转化为未来行动的过程,当然学习总是说起来容易做起来难。

虽然人脑从出生起就具有学习能力,但计算机学习的必要条件必须明确给出。因此,虽然理解机器学习理论并不是严格必要的,但这个基础有助于理解、区分和实现机器学习算法。

当您将机器学习与人类学习进行比较时,您会从不同的角度看待自己的想法。

无论学习者是人还是机器,基本的学习过程都是相似的。这个过程可以分为以下4个相关部分:

数据存储:利用观察、记忆存储和回忆为进一步推理提供事实依据。

抽象:涉及将数据转换为更广泛的表示形式 ( ) 和概念 ( )。

泛化:应用抽象数据来创建知识和推理,以便在新的背景下采取行动。

评估:提供反馈机制来衡量所学知识的有用性,以确定潜在的改进。

下图展示了学习过程的步骤:

请记住,虽然学习过程在概念上分为 4 个不同的部分,但这只是为了便于解释。事实上,这四个部分的学习是紧密相连的。对于人类来说,整个过程是在潜意识中发生的。我们收集数据,推理数据,概括数据,最后用心灵的“眼睛”发现模式。由于这个过程是潜在的,人与人之间的任何差异都归因于主观性的模糊概念。然而,对于计算机来说,这些步骤是明确的,因为整个过程是透明的,因此所学到的知识可以在未来的操作中进行测试、转换和应用。 1.3.1 数据存储

所有的学习都必须从数据开始。人类和计算机都使用数据存储作为高级推理的基础。在人类中,这由大脑组成,它使用生物细胞网络中的电化学信号来存储和处理短期或长期回忆的观察结果。计算机使用硬盘驱动器、闪存、随机存取存储器 (RAM) 和中央处理单元 (CPU) 来存储短期和长期记忆。

这似乎是显而易见的,但仅仅存储和检索数据的能力不足以进行学习。如果没有更深入的理解,知识就仅限于回忆,这意味着无法获得超出以前见过的信息。硬盘上的数据只有0和1。它们是存储的记忆,没有进一步的意义。

为了更好地理解这个想法的细微差别,想象一下你上次参加一场困难的考试是什么时候。这可能是大学期末考试或认证考试。在参加考试之前,您想拥有过目不忘的记忆力(比如拍照)吗?如果你这样想,你可能会失望地发现过目不忘的记忆力不太可能对你有多大帮助。即使你记住了所有的材料,你的死记硬背也是没有用的。除非您提前知道考试中将出现的确切问题和答案。否则,您将只能尝试记住所有考试问题的答案。显然,这种做法并不持久。

更好的方法是花时间选择和记忆一组有代表性的想法,同时制定其相关性以及如何应用所记忆信息的策略。这样,大量的想法就可以被理解,而无需记住它们。

1.3.2 抽象

赋予数据意义发生在抽象过程中,原始数据呈现出更抽象的意义。物体()与其表征()之间的联系可以用雷内(Rene )的名画《图像的背叛》来说明,如下图。



这幅画展示了一根烟斗和一行字“Ceci n'est pas une pipe”(这不是烟斗)。需要指出的是,所代表的管道不是真正的管道。尽管管道不是真实的,但任何看到这幅画的人都可以很容易地认出照片中显示的是管道,这表明观察它的人的头脑能够将图片中的管道与想法管道联系起来,并且然后与可以握在手中的真实烟斗联系在一起。像这样的抽象联系是知识表示的基础,是逻辑结构化信息的基础,有助于将原始感官信息转化为有意义的见解。

在知识表示的过程中,计算机将存储的原始数据总结为模型,模型是对数据中模式的显式描述。就像烟斗一样,模型表示使用原始数据之外的生活常识。它表达的概念大于各个部分的总和。

有许多不同类型的模型,其中一些您可能很熟悉。例如:

数学方程。

关系图,如树和图。

逻辑 if/else 关系。

将数据分组。

模型的选择通常不是由机器完成,而是由学习任务和可用数据的类型决定。选择模型类型的方法将在本章后面详细讨论。

将模型拟合到数据集的过程称为训练。当模型被训练时,数据被转换为总结原始信息的抽象形式。

您可能想知道:为什么这一步称为训练而不是学习?首先,请注意,当数据抽象过程结束时,学习过程并没有结束。学习者还必须概括和评估他们的培训。其次,“训练”这个词更好地暗示了这样一个事实:人类教师以特定的方式训练机器学生来理解数据。

必须注意的是,机器学习模型本身并没有提供新的数据,但它确实带来了新的知识。怎么会发生这种事?答案是:通过假设数据元素如何相关的概念,并将假设的结构应用于基础数据,以深入了解不可见的现象。例如,万有引力的发现过程。艾萨克·牛顿爵士通过将方程拟合到观测数据得出了重力的概念。但我们现在知道万有引力一直存在,只是直到牛顿发现它才被认识到。直到牛顿以将某些数据与其他数据相关联的抽象概念的形式认识到它,特别是将其转化为用于解释观察到的落体模型中的参数g之后,才被认为是一个概念。

几个世纪以来,大多数模型并没有导致科学思想的理论发展。但该模型仍然可以发现数据中以前不可见的关系。用染色体数据训练的模型可能会发现多个基因如何结合起来导致糖尿病;银行可能会发现看似无害的交易类型通常先于欺诈活动;心理学家可能会发现多种特征的组合表明出现了一种新的心理障碍。固有的模式永远存在,但是通过以不同的格式概念化信息,可以概念化模型新的想法。 1.3.3 概括

直到学习者能够将抽象知识应用到未来的行动中,学习过程才算完成。在抽象过程中可能会发现无数的固有模式,并且有很多方法可以对这些模式进行建模,其中一些比其他更有用。除非抽象过程受到限制,否则学习者将无法继续。此时,学习过程仍然会停留在问题的起点——有很多信息,但没有可以转化为行动的见解。

术语泛化描述了将抽象知识转换为可用于未来对类似但不相同任务采取行动的形式的过程。从某种程度上来说,泛化是一个难以描述的模糊过程。传统上,它被想象为训练期间可用于抽象数据的所有模型(即理论或推论)的搜索过程。换句话说,如果您想象一个包含可以从数据构建的所有可能模型(或理论)的集合,那么泛化就是将该集合中的理论数量减少到可管理的数量。

一般来说,通过一一检查并排序以供将来应用来减少模式数量是不可行的。机器学习算法一般都会采用一些捷径方法,可以快速缩小搜索空间。为此,算法应用启发式方法,训练它们猜测在哪里可以找到最有用的推理。

由于启发式方法利用相似性原理和一些其他经验法则,因此不能保证找到单个最佳模型。然而,如果不利用这些快捷方法,从大数据集中找到有用信息的任务就变得不可能。



人类经常使用启发式方法快速将经验推广到新场景(新)。如果您曾经在充分评估自己的情况之前运用直觉做出快速决定,那么您就已经无意识地使用了心理启发法。

人们快速做出决策的非凡能力往往不依赖于计算机式的逻辑,而是依赖于情感引导的启发法。有时,这种决策可能会导致不合逻辑的结论。例如,许多人认为飞机旅行比汽车旅行更可怕,尽管统计数据显示汽车更危险。这可以用既定的启发法来解释,即人们倾向于根据他们回忆过去事件的容易程度来判断事件的可能性。航空旅行事故被广泛报道,令人震惊的事件更容易被回忆起来,而汽车事故却很少在报纸上报道。

滥用启发法的愚蠢行为不仅限于人类。将启发式方法应用于机器学习算法有时会导致错误的结论。如果算法的结论是系统性的谬误或错误,则该算法被认为是有偏差的。

例如,假设机器学习算法通过寻找一条线(代表嘴)两侧的两个圆圈(代表眼睛)来学习识别面部。该算法在识别不适合模型的面孔时可能存在问题或偏差。算法无法识别的面孔可能包括戴眼镜、转动一定角度、侧视或深色皮肤的面孔。同样,机器也会对某些肤色、面部形状或其他与机器理解的世界不同的特征(即具有其他特征的面部)产生偏见。

在现代用法中,“偏差”一词带有负面含义。各种形式的媒体常常声称不带偏见,声称客观地报道事件,不被情绪所左右。然而,如果你仔细想想,一点点偏差实际上可能是有用的。如果没有任何任意性,就很难在几个相互竞争的选项中做出选择,每个选项都有自己的优点和缺点。事实上,目前心理学领域的一些研究表明,大脑中负责情绪的部分天生受损的人在做决定时会不知所措。他们可能会花费数小时来纠结于简单的决定,例如穿什么颜色的衣服。衬衫或吃饭的地方。矛盾的是,偏见有时会导致我们忽略某些信息,同时又让我们根据其他信息采取行动。理解数据集的方法有无数种,而机器学习算法就是如何在其中进行选择。

1.3.4 评价

偏差是与任何机器学习任务的抽象和泛化两个过程相关的不可避免的谬误。为了在面对无数可能的选择时采取行动,每个学习者都必须以特定的方式存在偏见。因此,每个学习器都有其弱点,并且没有一种模型能够胜过所有其他模型。因此,泛化过程的最后一步是在存在偏差的情况下评估或判断模型的成功,并在必要时应用此信息进行进一步的训练。

一旦您成功地使用了机器学习技术,您可能希望将其应用到每项任务中。抵制这种诱惑很重要,因为没有一种机器学习方法在每种情况下都是最佳的。这一事实在 David 于 1996 年发表的“没有免费午餐”理论中进行了讨论,请参阅。

一般来说,模型在初始数据集上训练后进行评估。然后在新的数据集上测试模型,以确定从训练数据导出的特征推广到新的未知数据的效果如何。值得注意的是,模型能够完美地推广到所有不可预见的情况是极其罕见的。

在某种程度上,由于数据中的噪声或无法解释的波动,该模型不能完美地概括。噪声数据是由看似随机的事件引起的,例如:

由于传感器的不准确而导致的测量误差有时会导致读取的数据增加或减少。

与人类主观性相关的问题,例如受访者回答随机问题以尽快完成调查问卷。

数据质量问题,包括缺失数据、空值、截断、编码不正确或值冲突。

现象非常复杂或知之甚少,以至于它们以非系统的方式影响数据。

试图使模型适应噪声是过度拟合问题的基础。由于噪声从定义上来说是无法解释的,因此尝试解释它可能会导致错误的结论,而这些结论无法推广到新的场景。尝试开发一种理论来解释噪声也会导致更复杂的模型,这很可能忽略了学习者试图找到的真实模式。模型在训练时表现良好,但在评估时表现不佳的现象,称为过拟合训练数据集,即它不能很好地泛化到测试数据集。

过拟合问题的解决方案取决于具体的机器学习方法。目前,重要的是要意识到存在问题。模型处理噪声数据的能力是判断模型成功与否的一个重要方面。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|【远见汇智】 ( 京ICP备20013102号-17 )

GMT+8, 2025-5-5 12:45 , Processed in 0.324414 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表