一个有用的思维模型
可以把模型看作一种可调整的转换过程,而不是一个数字大脑或答案数据库。
模型具有决定信息如何在其中流动的结构,也具有决定输入的不同部分对输出影响程度的学习值。结构和学习值共同定义了这种转换。
向天气模型提供测量数据,它可能输出降雨概率。向图像分类器提供像素,它可能输出多个标签的得分。向语言模型提供文本,它可能输出后续可能出现的文本的概率。输入和输出各不相同,但模型所扮演的角色相同。
模型不一定是神经网络。线性模型、决策树、概率模型和其他方法也可以作为AI 系统中的模型。神经网络是其中一种尤其灵活的模型类型。
AI 模型的构建和使用方式
对于机器学习模型,从构想到输出通常包含两个主要阶段:训练和推理。
在训练期间,开发者选择模型结构和目标。模型处理示例,将输出与目标进行比较,然后训练过程调整其可学习值,以减少误差或提高奖励。重复这一过程会产生一个训练好的模型:一个具有特定结构和特定学习状态的模型。
随后,模型会在未用于拟合它的数据或情境上进行评估。这项测试用于判断模型是否学到了有用的模式,而不是仅仅匹配训练示例。通过一次评估并不能证明模型适用于所有人群、环境或用途。
在推理期间,训练好的模型接收新输入并计算输出,而无需重复完整的训练过程。部署的服务可以运行数百万次推理,同时模型的学习值保持不变。只有在独立的流程收集反馈并更新或重新训练模型时,模型才会从后续交互中学习。
“模型”一词可能指这一过程中的不同产物:
- 在训练前,它可能指拟议的结构。
- 在训练后,它通常指结构加上从数据中学到的值。
- 在框架中,它可能指拟合后的对象,或包含学习状态的文件。
- 在产品目录中,它可能指一个命名的模型系列、某个特定版本,或运行该版本的端点。
这些用法相互重叠,但并不完全相同。在需要精确表达时,应确认相关说法指的是模型的设计、学习状态、模型文件,还是外围服务。
一个完整示例
考虑一个用于标记疑似垃圾邮件的极简模型。外围软件将每封邮件转换为两个输入:
- 链接数量
- 来自一个简短“紧急”词列表的词语数量
假设训练得到以下分数公式:
垃圾邮件分数 = 1.4 × 链接数量 + 0.9 × 紧急词数量 − 1.2
对于一封包含两个链接和一个紧急词的邮件:
1.4 × 2 + 0.9 × 1 − 1.2 = 2.5
对于一封没有链接和紧急词的邮件:
1.4 × 0 + 0.9 × 0 − 1.2 = −1.2
如果产品将正分数视为垃圾邮件,它就会标记第一封邮件,并放行第二封邮件。
模型就是生成该分数的转换过程:包括它的公式和学习到的数值。读取邮件、统计特征、选择阈值、将邮件移入垃圾邮件文件夹,以及允许用户纠正错误的代码,则构成了更广义的系统。
这个玩具模型很容易检查。现代神经网络可能包含许多层和学习值,而生成式模型可能会在多个可能的输出之间进行选择,而不是返回一个固定标签。但其基本任务仍然是:根据模型所捕捉的模式,将合适的输入转换为输出。
模型并不等于整个 AI 系统
通过以下管线,最容易看清这种区别:
raw input
↓
input preparation
↓
AI model: structure + learned state
↓
raw model output
↓
rules, tools, storage, and presentation
↓
system result or action例如,一个聊天机器人可能会在语言模型外围添加指令、对话历史、检索到的文档、安全检查、工具和用户界面。即使模型保持不变,改变其中任何一层也可能改变用户体验。更大的系统还可能将一个请求依次路由给多个模型。
模型的边界并不总是以相同方式打包。在一个模型中,分类阈值可能内置于模型;而在另一个系统中,阈值可能由外围代码应用。实际判断方法是:先找出执行核心学习型输入到输出转换的组件,再找出负责准备、约束、解释或处理该输出的部分。
为什么这种区分很重要
它可以避免把所有成功或失败都归因于错误的组件。糟糕的结果可能来自模型,但也可能来自缺少上下文、输入准备不当、不合适的阈值、工具故障,或推理后应用的规则。
它也使模型相关声明更容易判断。模型只有相对于具体任务、将接收的输入类型、输出的使用方式以及错误成本而言才有用。因此,模型文档应说明预期用途、评估条件、已知局限,以及未经测试的用途。单个准确率数字或产品演示无法回答所有这些问题。
最后,这种区分有助于明确你获得了何种访问权限。下载学习到的权重、通过 API 调用托管模型,以及使用完整的 AI 应用,会提供不同程度的控制权。它们可能涉及同一模型系列,但并不是同一回事。
常见误解
“模型包含其训练数据”
训练好的模型通常包含学习到的数值状态,而不是逐行可搜索的训练示例副本。这些状态捕捉了有助于生成输出的模式。不过,在某些情况下,模型仍可能复现或泄露部分训练数据,因此“不是数据库”并不意味着“不会记忆”。
“模型每次使用时都会学习”
推理通常使用固定的学习值。产品可能保存对话、为后续请求进行个性化处理,或利用反馈进行未来训练,但这些都是独立的系统行为。它们并不能证明部署的模型在对话期间自行更新了。
“AI 模型等同于算法”
算法是一种过程。训练算法会调整模型,而推理算法会执行模型。在日常语言中,这些术语可能有所重叠,但区分过程与学习结果,有助于理解为什么相同的训练方法可以根据不同数据生成不同的模型。
“所有 AI 模型都是语言模型”
大语言模型是 AI 模型的一种。其他模型可以对图像进行分类、预测数值、对搜索结果排序、检测异常、推荐项目、控制机器,或执行其他输入到输出的任务。
“更好的模型一定能带来更好的产品”
更强的模型可以提升系统的原始能力,但产品质量还取决于数据、指令、工具、防护措施、延迟、界面设计,以及模型是否适合实际任务。模型很重要,但并非唯一因素。
AI 模型如何融入更广泛的系统
AI 项目始于一项任务,以及某种判断行为是否有用的方法。训练会生成或调整模型。评估会在选定条件下检查模型的行为。部署提供运行模型所需的计算资源和外围软件。监控则持续寻找故障、变化中的输入,以及更新模型或系统的原因。
正因如此,“它使用的是哪个模型?”只是一个有用问题的起点。你可能还需要了解正在运行的版本、模型接收的输入、输出如何被处理、模型评估的目标,以及最终决策由人还是其他程序作出。
下一步阅读什么
阅读什么是 AI 训练?了解生成模型学习状态的过程;然后阅读什么是 AI 推理?了解训练好的模型处理新输入时会发生什么。什么是 LLM?将介绍许多文本和聊天产品背后的模型系列。