什么是机器学习?

机器学习是人工智能 (AI) 的一个子集,专注于能够“学习”训练数据模式并进而对新数据做出准确 推断的算法 。这种模式识别能力使机器学习模型无需明确的硬编码指令即可做出决策或预测。

机器学习已成为人工智能领域的主导力量:它为大多数现代人工智能系统提供了支柱,从 预测 模型到自动驾驶汽车,再到 大型语言模型(LLM) 和其他 生成式人工智能 工具。

机器学习 (ML) 的核心前提是,如果你通过称为 模型训练的过程,在一个与现实世界问题充分相似的任务数据集上优化模型的性能,那么该模型就可以在其最终用例中对新数据做出准确的预测。

训练本身只是达到目的的手段:泛化,即将训练数据上的优异表现转化为现实世界场景中的有效结果,才是机器学习的根本目标。本质上,训练好的模型会将从训练数据中学习到的模式应用于推断现实世界任务的正确输出: 因此,人工智能模型的部署 被称为 人工智能推理

深度学习是机器学习的一个子集,它由大型(或者更确切地说是“深度”)人工神经网络驱动,在过去几十年中已成为几乎所有人工智能应用领域中最先进的人工智能模型架构。与传统机器学习中明确定义的算法不同,深度学习依赖于分布式的数学运算“网络”,从而具备无与伦比的能力来学习极其复杂数据的细微差别。由于深度学习需要海量数据和计算资源,它的出现恰逢 “大数据” 和 图形处理器(GPU)的重要性日益凸显。   

机器学习与数据科学密切相关 。从某种意义上说,机器学习可以理解为一系列算法和技术的集合,用于自动化数据分析,并且(更重要的是)将分析结果应用于相关任务的自主执行。

该术语的起源(尽管并非其核心概念本身)通常归功于亚瑟·L·塞缪尔 (Arthur L. Samuel) 1959 年发表在 IBM Journal 上的文章《使用跳棋进行机器学习的一些研究》(Some Studies in Machine Learning Using the Game of Checkers)。在文章的引言中,塞缪尔简洁地阐述了机器学习的理想结果:“可以对计算机进行编程,使其学会下比编写该程序的人更好的跳棋。” ¹

机器学习与人工智能

虽然“机器学习”和“人工智能”经常被混用,但它们并非完全同义词。简而言之: 所有机器学习都是人工智能,但并非所有人工智能都是机器学习

在人们的普遍认知中,“人工智能”通常与科幻作品联系在一起——通常是通过对更准确地说是 通用人工智能(AGI)的描绘,例如《2001太空漫游》中的HAL 9000 或 《机械姬》中的艾娃——或者,最近与 生成式 人工智能联系在一起。但“人工智能”是一个涵盖范围很广的术语,指的是任何能够利用信息进行决策或预测而无需人类主动干预的程序。

最基本的AI系统是一系列if-then-else语句,其规则和逻辑由数据科学家显式编程。最简单的恒温器也是一个基于规则的AI系统:当使用诸如以下这些简单的规则进行编程时,它就能正常工作: 

和 

该恒温器无需人工干预即可自主决策。更复杂的是,由医学专家编写的大型、复杂的基于规则的 决策树可以 解析症状、环境和合并症,以辅助诊断或预后。

与专家系统不同,机器学习模型的运行逻辑并非显式编程,而是 通过经验学习而来 。以过滤垃圾邮件的程序为例:基于规则的人工智能需要数据科学家手动设计准确、通用的垃圾邮件识别标准;而机器学习只需要选择合适的算法和足够的样本邮件数据集。在训练过程中,模型会接收样本邮件并预测哪些是垃圾邮件;计算预测误差,并调整算法以降低误差;如此反复,直到模型准确无误。新训练的机器学习模型已经 隐式地 学会了如何识别垃圾邮件。

随着人工智能系统需要执行的任务变得越来越复杂,基于规则的模型变得越来越脆弱:通常不可能明确定义模型必须考虑的每一个模式和变量。机器学习系统已成为人工智能的主流模式,因为从数据本身隐式学习模式本质上更加灵活、可扩展且易于访问。

 

机器学习的工作原理

机器学习的工作原理基于数学逻辑。因此,每个数据点的相关特征必须以数值形式表达,以便将数据输入到数学算法中,该算法将“学习”如何将给定的输入映射到所需的输出。

在机器学习中,数据点通常以向量形式表示,其中数据点 向量嵌入的每个元素(或维度) 对应于其特定特征的数值。对于本质上是数值型的数据,例如金融数据或地理空间坐标,这相对简单明了。但许多数据,例如文本、图像、社交媒体图数据或应用程序用户行为,并非本质上是数值型的,因此需要进行一些不那么直观的特征工程才能将其表示为机器学习适用的形式。

在机器学习算法中选择要使用的数据特征(通常是手动操作)的过程称为 特征选择。 特征提取 技术将数据提炼到仅包含最相关、最有意义的维度。两者都是 特征工程的子集,特征工程是更广泛的学科,它涉及对原始数据进行预处理,以便用于机器学习。深度学习的一个显著特点是,它通常直接处理原始数据,并自动完成大部分特征工程(或至少是特征提取)过程。这使得深度学习比传统机器学习更具可扩展性,但可解释性稍差。

机器学习模型参数和优化

举个实际例子,考虑一个简单的 线性回归 算法,用于根据三个变量的加权组合来预测房屋售价:房屋面积、房龄和卧室数量。每栋房屋都用一个三维向量嵌入来表示:   一栋30年房龄、4间卧室、面积1900平方英尺的房子可以表示为:     (尽管出于数学目的,这些数字可能首先会被缩放或归一化到更统一的范围内)。

该算法是一个简单的数学函数: 

 价格 = (A * 建筑面积(​​平方英尺)) + (B * 房间数) – (C * 房龄) + 基准价格

这里,  A ,  B  和  C  这些是模型参数:调整它们会改变模型对每个变量的权重。机器学习的目标是找到这些模型参数的最优值:换句话说,找到能够使整体函数输出最准确结果的参数值。虽然大多数现实世界的机器学习应用都涉及更复杂的算法和更多的输入变量,但其原理仍然相同:优化算法的可调参数以获得更高的准确率。

机器学习的类型

所有机器学习方法都可以根据其训练目标的性质以及(通常但不总是)其所涉及的训练数据类型,归类为三种不同的学习范式之一:监督学习、无监督学习或强化学习。

  • 监督学习 训练模型来预测给定输入的“正确”输出。它适用于需要相对于某些外部“真实值”达到一定准确度的任务,例如分类或回归。
  • 无监督学习 训练模型来识别数据中固有的模式、依赖关系和相关性。与监督学习不同,无监督学习任务不需要任何外部真实值来与输出结果进行比较。
  • 强化学习(RL) 训练模型来评估其环境并采取能够获得最大奖励的行动。强化学习场景并不存在唯一的真实答案,但确实存在“好”行动和“坏”(或中性)行动。

对于给定的模型,端到端的训练过程通常涉及多种混合方法,并利用多种学习范式。例如,无监督学习常用于预处理数据,以便后续进行监督学习或强化学习。大型语言模型(LLM)通常先通过各种监督学习方法进行初始训练(预训练)和 微调,然后再通过强化学习技术(例如基于人类反馈的强化学习(RLHF)) 进行进一步的微调 。 

在类似但又不同的实践中,各种 集成学习 方法将多个算法的输出聚合在一起。

监督式学习

监督学习算法训练模型以完成需要高精度的任务,例如 分类 或回归。监督式机器学习既为最先进的深度学习模型提供支持,也为各行各业广泛应用的各种传统机器学习模型提供支持。

  • 回归 模型用于预测连续值,例如价格、持续时间、温度或尺寸。传统回归算法的例子包括 线性回归、多项式回归和 状态空间模型
  • 分类 模型预测离散值,例如数据点所属的类别(或 )、二元决策或要采取的特定操作。传统分类算法的例子包括 支持向量机(SVM)、 朴素贝叶斯 和 逻辑回归
  • 许多监督式机器学习算法都可以用于这两种任务。例如,名义上是回归算法的输出结果可以随后用于指导分类预测。

为了衡量和优化模型的准确性,必须将模型的输出与 真实值进行比较:真实值是指对于任何给定的输入,模型的理想或“正确”输出。在传统的监督学习中,真实值由标记数据提供。例如,垃圾邮件检测模型就是在一个已标记的电子邮件数据集上进行训练的。  或者  图像 分割 模型是在已标注每个像素分类信息的图像上进行训练的。监督学习的目标是调整模型的参数,直到其输出与标注的真实值始终匹配。

监督学习的关键在于使用 损失函数 ,它衡量模型输出与训练输入批次中真实值之间的偏差(“损失”)。监督学习的目标在数学上定义为 最小化损失函数的输出。计算出损失后,可以使用各种优化算法(其中大多数涉及计算 损失函数的导数)来确定能够降低损失的参数调整。

由于这一过程传统上需要人为干预,以数据标注的形式提供真实值,因此被称为“监督式学习”。正因如此,使用标注数据在历史上被认为是监督式学习的决定性特征。但从最根本的层面来看,监督式学习的标志在于存在某种真实值,以及训练目标是最小化衡量与真实值偏差的损失函数的输出。

为了适应更灵活的监督学习概念,现代机器学习术语使用“监督”或“监督信号”来泛指任何真实来源。

自主学习

对于复杂任务和大型数据集,标注数据可能成本高昂且耗时。 自监督学习是指在训练任务时,直接从未标注数据 中获取监督信号  ——因此称为“自”监督。

例如, 自编码器 经过训练,可以压缩(或 编码)输入数据,然后使用该压缩表示重建(或 解码)原始输入。它们的训练目标是最小化 重建误差,并将原始输入本身作为真值。自监督学习也是语言学习模型(LLM)的主要训练方法:模型会获得一些文本样本,其中某些词语被隐藏或屏蔽,模型的任务是预测缺失的词语。

自监督学习通常与 迁移学习联系在一起,因为它可以提供 具有广泛能力的基础模型 ,然后  针对更具体的任务进行微调。

半监督学习

自监督学习本质上是对未标记数据进行监督学习,而 半监督学习 方法则同时使用已标记数据和未标记数据。广义而言,半监督学习包含一系列技术,这些技术利用现有已标记数据的信息来推断未标记数据点的特征,从而将后者纳入监督学习流程中。

无监督学习

无监督机器学习算法能够识别未标记数据中的内在模式,例如相似性、相关性或潜在的分组。它们在人类观察者未必能明显识别此类模式的场景中最为有用。由于无监督学习不假定存在已知的“正确”输出,因此它们不需要监督信号或传统的损失函数——这也是“无监督”的由来。

大多数无监督学习方法都执行以下功能之一:

  • 聚类 算法根据未标记数据点之间的接近程度或相似性,将它们划分成“簇”或分组。它们通常用于市场细分或欺诈检测等任务。著名的聚类算法包括K均值聚类、高斯混合模型(GMM)和基于密度的方法,例如DBSCAN。
  • 关联 算法能够识别相关性,例如特定行为与某些条件之间的相关性。例如,亚马逊等电子商务公司就使用无监督 关联 模型来驱动推荐引擎。
  • 降维 算法通过用更少数量的特征(即更少的维度)来表示数据点,从而降低数据点的复杂性,同时 保留其有意义的特征。它们通常用于数据预处理,以及数据压缩或数据可视化等任务。著名的降维算法包括 自编码器、 主成分分析 (PCA)、 线性判别分析 (LDA) 和 t 分布随机邻域嵌入 (t-SNE)。

顾名思义,无监督学习算法可以大致理解为某种程度上的“自我优化”。因此,训练无监督模型的挑战在于如何有效地进行数据预处理,以及如何正确 调整 那些影响学习过程但本身无法学习的超参数,例如 学习率 或聚类数量。

强化学习(RL)

监督学习通过优化模型使其与理想范例相匹配来训练模型,而无监督学习算法则使自身适应数据集, 强化学习 模型则通过反复试验进行整体训练。它们广泛应用于机器人、视频游戏、 推理模型 以及其他可能的解决方案和方法空间特别庞大、开放或难以定义的应用场景。在强化学习文献中,人工智能系统通常被称为“智能体”。

与监督学习中使用的独立输入输出数据对不同,强化学习(RL)处理的是相互依赖的状态-动作-奖励数据元组。强化学习的目标不是最小化误差,而是优化参数以最大化奖励。

强化学习的数学框架主要由以下几个部分构成:

  • 状态 空间 包含模型可能做出的决策所需的所有信息。状态通常会随着模型采取的每个动作而改变。
  • 行动 空间 包含模型在某一时刻被允许做出的所有决策。例如,在棋盘游戏中,行动空间包含给定时间点所有合法的走法。在文本生成中,行动空间包含LLM(逻辑逻辑模型)可用的全部“词汇表”。
  • 奖励 信号 是智能体执行每个动作后获得的反馈——可以是正反馈或负反馈,通常以标量值表示。奖励信号的值可以通过明确的规则、奖励函数或单独训练的 奖励模型来确定。
  • 策略 是驱动强化 学习智能体行为的“思维过程”。从数学角度来说,策略(π) 是一个接受状态的函数( s 作为输入并返回一个动作(a ): π(s)→a。

在 基于策略的 强化学习方法(例如近端策略优化 (PPO))中,模型直接学习策略。而在 基于价值的 方法(例如 Q 学习)中,智能体学习一个价值函数,该函数计算每个状态的“优劣”分数,然后选择能够带来更高价值状态的动作。以迷宫为例:基于策略的智能体可能会学习“在这个拐角处左转”,而基于价值的智能体则会学习每个位置的分数,并直接移动到分数更高的相邻位置。混合方法(例如 Actor-Critic 方法)学习一个价值函数,然后利用该函数来优化策略。  

在深度强化学习中,策略被表示为神经网络

深度学习

深度学习 采用  多层 人工神经网络(因此得名“深度”),而非传统机器学习中显式设计的算法。虽然神经网络在机器学习发展初期就已出现,但直到2000年代末和2010年代初,在GPU技术进步的推动下,它们才在人工智能的大多数子领域占据主导地位。

神经网络的设计灵感源于人脑,它由相互连接的“神经元”(或 节点)层组成,每个神经元执行其自身的数学运算(称为“激活函数”)。每个节点的激活函数的输出作为下一层的输入,依此类推,直至最后一层,最终计算出网络的最终输出。至关重要的是,每个节点执行的激活函数都是 非线性的,这使得神经网络能够模拟复杂的模式和依赖关系。

深度神经网络图解:什么是人工智能 (AI)?(来自 Think 内容中心学习页面)

两个神经元之间的每条连接都被赋予一个唯一的 权重:一个乘数,它会增加或减少一个神经元对下一层神经元的贡献。这些权重,以及添加到每个神经元激活函数中的独特 偏置 项,就是需要通过机器学习进行优化的参数。

反向 传播 算法能够计算 每个节点 对损失函数整体输出的贡献,从而允许通过 梯度下降 算法对数百万甚至数十亿个模型权重进行单独优化。由于需要进行大量且精细的更新才能达到最优结果,深度学习相比传统机器学习需要海量的数据和计算资源。

这种分布式结构赋予了深度学习模型强大的能力和极高的灵活性。可以将训练数据想象成散布在二维图上的数据点。本质上,传统机器学习的目标是找到一条穿过所有数据点的曲线;而深度学习则是将任意数量的、可单独调整的细线拼接起来,形成所需的形状。神经网络是 通用逼近器:理论已经证明,对于任何函数,都存在一种神经网络结构可以重现它。<sup> 3, 4</sup>

话虽如此, 理论上 可行并不意味着现有的训练方法就能实际实现。多年来,即使是深度学习模型,在某些任务上也难以达到令人满意的性能——但随着时间的推移,对标准神经网络架构的改进为机器学习模型解锁了新的能力。

卷积神经网络(CNN)

卷积神经网络(CNN)在神经网络的基础上 增加了 卷积层 。在数学中,卷积是指一个函数改变(或 卷积)另一个函数形状的运算。在CNN中,卷积层通过应用加权“滤波器”来提取数据中的重要特征 。CNN 主要用于计算机视觉模型和图像数据,但也具有许多其他重要的应用场景。

这是一幅应用于数值网格的矩阵滤波可视化图。输入图像显示了一个 3x3 的数字网格,而滤波器和输出数组则展示了转换过程。关键数值包括“9”、“4”、“16”和“0”。该图突出了数据处理中的计算概念。

循环神经网络(RNN)

循环神经网络(RNN) 专为处理序列数据而设计。传统的前馈神经网络将单个输入映射到单个输出,而RNN则通过循环操作将一系列输入映射  输出,其中输入序列中给定步骤的输出作为下一步计算的输入。实际上,这创建了一种称为 隐藏状态的内部“记忆” ,使RNN能够理解上下文和顺序。

三张图表简要解释了什么是循环神经网络

变形金刚

Transformer模型于2017年首次提出,它极大地推动了LLM(逻辑学习模型)和其他生成式人工智能支柱的出现,并在机器学习的大多数子领域取得了最先进的成果。与RNN(循环神经网络)类似,Transformer模型最初是为序列数据设计的,但巧妙的变通方法使得Transformer模型能够处理大多数数据模态。Transformer模型的独特优势在于其创新的 注意力机制,该机制使模型能够选择性地关注序列中特定时刻最相关的输入数据部分。

 

曼巴模型

Mamba模型 是一种相对较新的神经网络架构,于2023年首次提出,它基于 状态空间模型(SSM)的一种独特变体。与Transformer模型类似,Mamba模型提供了一种创新的方法,可以有选择地优先处理特定时刻最相关的信息。Mamba模型最近已成为Transformer架构的有力竞争对手,尤其是在逻辑层级模型(LLM)领域。

机器学习用例

大多数机器学习应用都属于以下一个或多个类别,这些类别主要由其用例和它们所处理的数据模式来定义。

计算机视觉

计算机视觉是人工智能的一个子领域,主要关注图像数据、视频数据以及其他需要模型或机器“识别”的数据模态,其应用范围涵盖医疗诊断、人脸识别和自动驾驶汽车等领域。计算机视觉的著名子领域包括图像分类、 目标检测、 图像分割 和 光学字符识别(OCR)。

自然语言处理(NLP)

自然语言处理(NLP)领域  涵盖了与文本、语音和其他语言数据相关的各种任务。NLP 的重要子领域包括 聊天机器人、 语音识别、 语言翻译、 情感分析、 文本生成、 文本摘要 和 人工智能代理。在现代 NLP 中,大型语言模型正以前所未有的速度推动着该领域的发展。

时间序列分析

时间序列模型 应用于异常检测、市场分析以及相关的模式识别或预测任务。它们利用机器学习技术处理历史数据,用于各种预测应用场景。

图像生成

扩散模型、 变分自编码器(VAE) 和 生成对抗网络(GAN 可用于生成应用从训练数据中学习到的像素模式的原始图像。

机器学习操作(MLOps)

机器学习操作(MLOps) 是一套实践方法,用于实施流水线式方法来构建、部署和维护机器学习模型。

精心整理和预处理训练数据,以及 选择合适的模型,是 MLOps 流程中的关键步骤。从基准数据集的设计到特定性能 指标的优先级排序,周全的训练后验证对于确保模型具有良好的泛化能力(而不仅仅是 过拟合 训练数据)至关重要。

模型部署后,必须对其进行监控,以发现 模型漂移、推理效率问题和其他不利变化。完善的 模型治理实践 对于模型的持续有效性至关重要,尤其是在监管严格或快速变化的行业中。

 

机器学习库

目前有许多开源工具、库和框架可用于构建、训练和测试机器学习项目。虽然这些库提供了一系列预配置的模块和抽象层,可以简化构建基于机器学习的模型和工作流程的过程,但从业者仍需熟悉常用的编程语言(尤其是 Python)才能充分利用它们。

一些著名的开源库,特别是用于构建深度学习模型的库,包括 PyTorch、  TensorFlow、Keras 和 Hugging Face Transformers 库。

专注于传统机器学习的著名开源 机器学习库 和工具包包括 Pandas、  Scikit-learn、  XGBoost、  Matplotlib、SciPy 和 NumPy 等。

posted @ 2026-03-31 10:45  常人元de随笔  阅读(8)  评论(0)    收藏  举报