书名:人工智能数学方法. 基础篇
ISBN:978-7-115-68450-9
本书由人民邮电出版社发行数字版。版权所有,侵权必究。
您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。
编 著 戴金晟 贾诸青 司中威 顾昕钰 徐文波 许文俊
责任编辑 林舒媛
人民邮电出版社出版发行 北京市丰台区成寿寺路11号
邮编 100164 电子邮件 315@ptpress.com.cn
网址 http://www.ptpress.com.cn
读者服务热线:(010)81055410
反盗版热线:(010)81055315
本书系统梳理以深度学习和大模型为代表的新一代人工智能技术所需要的数学方法,涵盖数据降维、解析优化、数值优化、参数估计与推断、估计量性能分析、概率图模型、序列数据模型等,为读者提供完整的理论框架。附录部分介绍数学基础知识,高度凝练地梳理线性代数、多元函数微积分、概率论与信息论的主要知识,使得全书体系完整自恰。
本书适合作为人工智能等相关专业学生的教材,也可以为从事人工智能相关工作的科研人员和读者提供参考。
以深度学习和大模型为代表的新一代人工智能技术,正在深刻改变着信息科学与社会形态。这一浪潮的兴起,固然离不开海量数据与强大算力的支撑,但其真正的驱动力,源于一系列将数据与算力高效融合的算法模型。这些算法模型的构建、分析与优化,都深植于坚实的数学基础之上。线性代数、最优化理论、概率论与数理统计共同构成了理解和创新人工智能技术的理论基座与核心工具箱。它们不仅为描述复杂的数据模式、定义学习目标、推导求解算法提供了严谨的框架,更是推动技术从“可用”迈向“可靠”与“可解释”的理论基石。《人工智能数学方法》教材正是在这一背景下应运而生。
本教材的核心编写理念是“应用驱动,思想为纲”。我们认为,真正的理解并非止于单个方法的应用,而在于洞悉不同方法间的深层联系。基于这一理念,本书采用“问题建模一理论推导一融会贯通”的组织方式,致力于揭示看似迥异的数学概念与方法之间的内在统一性。例如,书中将探讨线性最小二乘法与低秩近似等方法如何统一植根于投影定理这一几何基础,并在此之上,进一步揭示前者在概率框架下与最大似然估计的殊途同归,以及其正则化方法背后深厚的贝叶斯渊源与数值稳定性诠释。更进一步,我们着力打破线性代数、优化理论、统计学、信息论与机器学习等领域间的壁垒,系统性地探讨它们的核心概念如何相互印证与统一。书中将深入剖析从信息论中的最大熵原理到广义线性模型与 Softmax激活函数的演进脉络,并揭示统计学中最大似然估计与信息论中交叉熵在这一框架下的等价性,统计学中的充分统计量与信息论中的互信息的内在一致性,统计学中的偏差-方差权衡与线性代数中的条件数的深刻关联,以及信息论中的 Kullback-Leibler 散度在构建机器学习中的证据下界这一统一框架中的核心作用等。这种贯通式的设计旨在构建一张知识网络,而非罗列一堆孤立的工具,从而帮助读者培养举一反三、触类旁通的数学思维与创新能力。
本教材分为基础篇与进阶篇两本。基础篇(即本书)主要面向本科阶段的人工智能、计算机、电子信息等相关专业学生,在内容介绍上遵循从具体到抽象的认知规律。其方法论的演进,体现为从直接构建优化目标的学习范式,转向通过构建概率模型进行统计推断的更一般性框架,前者构成了许多经典判别式模型的核心,而后者则是现代判别式与生成式模型的共同基础。本书内容始于数据降维(第 1 章),以直观的几何视角切入,引导读者理解线性代数在数据科学中的应用。随后,本书系统阐述了机器学习的两大优化支柱——解析优化(第2章)与数值优化(第3章)。最优化是贯穿所有机器学习方法的通用方法,本书以目标函数被直接定义的模型(如支持向量机)为载体,清晰地阐明最优化的核心原理。在此之上,本书将视角转向概率与统计,深入探讨参数估计与推断(第4章)、估计量性能分析(第 5 章)、概率图模型(第 6 章)以及序列数据模型(第 7 章),为那些需要从根据数据生成假设的过程中推导出学习目标的复杂问题提供了完整的理论框架。为确保本书的自洽性,我们还在附录中系统且高度凝练地梳理线性代数(第 8 章)、多元微积分(第 9章)、概率论(第 10 章)与信息论(第 11 章)的主干知识点,以支撑读者对本书内容的学习。本书突出以下几个特色。
1.以第一性原理为导向,重在思想启迪:我们并非直接给出算法,而是强调一种寻根溯源、从头开始梳理问题的思考方式。每章内容多以人工智能领域的经典问题为牵引,引导读者从基本的定义和原理出发,一步步推导出解决方案。这种高度符合第一性原理的写作手法,旨在帮助读者深刻理解算法为何如此设计,形成“问题—理论—洞察”的认知闭环,培养独立分析与构建模型的能力。
2.体系完整且自洽,紧扣核心技能:内容覆盖数据降维、优化方法、估计与推断、性能分析、概率图模型等核心主题,并在本书附录部分系统补充先修数学知识,确保体系的完整与自洽。
3.受众广泛,衔接未来:面向本科阶段既可作为人工智能专业的核心课程教材,也可作为计算机、电子信息等相关专业的交叉学科课程教材,帮助学生为后续研究生课程和科研实践打下坚实基础。
本教材的进阶篇面向研究生与科研一线工作者,聚焦于生成式人工智能,内容涵盖蒙特卡洛方法、变分推断、扩散模型以及大语言模型背后的生成方法等前沿课题,强调数学理论在人工智能前沿技术研究中的作用。它不仅帮助读者理解当前热点算法的数学原理,也为进一步的科研创新提供方法论支撑。
本教材主编为戴金晟、贾诸青,其中基础篇各章节主要由贾诸青负责编写、进阶篇各章节主要由戴金晟负责编写,司中威、顾昕钰、徐文波参与了全书的审阅与校对工作,许文俊负责对全书内容进行把关与复核。我们要特别感谢北京邮电大学郭军教授,对本教材从立意构思、体系结构到内容梳理,他都提出了高屋建瓴的指导意见,对全书的教学逻辑与知识体系的建立起到了关键作用。我们希望,本教材不仅能成为人工智能专业学生的重要学习参考,也能为相关学科的研究人员、工程人员提供系统而实用的人工智能数学方法指南。
由于编者水平有限,书中难免存在疏漏与不妥之处,恳请广大读者和专家不吝批评指正。在人工智能技术日新月异的今天,我们相信,掌握基础而深刻的数学方法,将是每一位学习者、研究者和应用者探索前沿、推动创新的关键起点。
编者
2025 年12 月
| 符号 |
含义 |
| 1.通用符号、集合论与图论 |
|
|
|
实数集(域) |
|
|
|
|
|
|
|
|
复数集(域) |
|
|
属于 |
|
|
子集,真子集 |
|
|
并集,交集 |
|
|
空集 |
|
|
正比于 |
|
|
大O符号,表示渐进上界 |
|
|
节点 |
|
|
节点 |
|
|
节点 |
| 2.线性代数 注:除非特别说明,本书约定向量默认为列向量(详见8.1节)。 |
|
|
|
标量(非加粗小写) |
|
|
向量(加粗小写) |
|
|
矩阵(加粗大写) |
| 0 |
全零向量或全零矩阵 |
| 1 |
全一向量 |
|
|
单位矩阵 |
|
|
矩阵或向量的转置 |
|
|
矩阵的逆 |
|
|
矩阵的伪逆(Moore-Penrose逆) |
|
|
矩阵的迹 |
|
|
矩阵的行列式 |
|
|
矩阵的秩 |
|
|
矩阵 |
|
|
矩阵 |
|
|
矩阵 |
|
|
矩阵 |
|
|
以向量 |
|
|
以方阵 |
|
|
内积,在欧几里得空间中等价于 |
|
|
向量的 |
|
|
向量的欧几里得范数 |
|
|
矩阵的Frobenius范数 |
|
|
Hadamard积(逐元素相乘) |
|
|
矩阵 |
|
|
张成的线性空间 |
|
|
矩阵 |
| 3.微积分与优化 注:本书矩阵求导采用分母布局法(即Hessian形式,详见9.1节)。 |
|
|
|
|
|
|
|
|
|
|
|
|
梯度在点 |
|
|
渐进等价,即 |
| min,max |
最小值,最大值 |
| argmin,argmax |
取得最小值、最大值时的自变量取值(集合) |
| s.t. |
受限于(subjectto),用于优化问题的约束条件 |
| 4.概率与统计 |
|
|
|
事件的概率 |
|
|
随机变量(加粗表示多维随机变量,即随机向量) |
|
|
随机变量的实现 |
|
|
概率密度(质量)函数 |
|
|
联合分布 |
|
|
条件分布(视上下文也可表示似然函数) |
|
|
期望 |
|
|
方差(或协方差矩阵) |
|
|
协方差(或互协方差矩阵) |
|
|
参数 |
|
|
随机变量 |
|
|
随机变量 |
| 5.信息论 |
|
|
|
熵,微分熵 |
|
|
联合熵,联合微分熵 |
|
|
条件熵,条件微分熵 |
|
|
互信息 |
|
|
Kullback-Leibler散度 |
本书提供如下资源:
• 本书配套 PPT。

作者和编辑尽最大努力来确保本书中内容的准确性,但难免存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。我们的联系邮箱是 zhaoaoming@ptpress.com.cn ,本书的作者和编辑会对您提交的问题进行审核。
如果您有兴趣出版图书、录制教学视频,或者参与图书翻译、技术审校等工作,可以发邮件给我们。
如果您所在的学校、培训机构或企业想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。
感谢您的支持,我们将持续为您提供有价值的内容。
在人工智能技术快速迭代、深度学习框架日趋完善的今天,开发一个人工智能应用似乎变得前所未有的便捷:只需编写少量代码,调用现成的接口与工具(如 TensorFlow、PyTorch等),便可搭建结构复杂的神经网络模型。然而,这种“低门槛”的便利也容易带来一种误解,仿佛人工智能只是模块拼装与参数试探的过程。由此,不少初学者乃至从业者陷入 “知其然不知其所以然”的困境,将模型训练戏称为“炼丹”,将算法设计误认为依赖经验的“玄学”。
事实上,人工智能的根基在于数学,而非魔法。
如果仅以“使用工具”为目标,现有框架或许已经足够;但若希望成为工具的创造者,或在科研实践中突破既有方法的边界,就必须把握算法背后的数学原理。数学不仅是表达算法的规范语言,更是理解智能机理、解释模型行为、提出并验证新方法的关键依据与精确工具。
因此,本书的编写并非罗列零散的数学知识点,而是力求回归第一性原理,围绕“建模—目标—求解”的通用范式,系统阐释现代人工智能算法如何从复杂现实中进行抽象,并构建具有可分析性与可泛化性的数学模型。
粗略地讲,一切人工智能模型都可以被抽象成一个函数
,它将输入空间
中的数据映射到输出空间
中。例如,在分类问题中,
可能是图像像素空间,而
是类别标签空间;在生成模型中,
可能是随机噪声空间,而
是数据分布空间。倘若我们拥有关于
的完整信息,即对于每一个输入
,我们都知道
的确切值,那么此时的人工智能问题就变成了一个纯粹的查表问题,根本不需要任何数学工具。然而,现实世界的数据在高维空间中往往是极其稀疏的(即所谓的维度灾难),我们只能通过相对于输入、输出空间而言极其有限的样本来近似
的行为。这就引出了一个核心问题:我们如何从有限的数据中构建一个能够泛化到未见数据的函数模型?
解决这一问题的关键在于引入假设,即所谓的归纳偏置(inductive bias)。我们需要基于对现实世界的观察,引入合理的数学假设,例如假设数据位于低维空间、假设样本服从高斯分布,或者假设变量间存在因果关系,从而将数据映射到特定的数学结构上。这就是所谓的建模。建模的本质,就是通过“假设”来定义一个受限的函数空间或分布族。假设反映了我们对现实世界的理解和先验知识。一方面,只有当我们引入了充分且合理的假设,从而将问题限制在一个可控的模型空间内,我们才能从有限的数据中学习出有意义的规律;另一方面,过于极端或不合理的假设可能会导致模型过于简单,无法捕捉数据的复杂性,从而产生欠拟合。因此,建模的艺术在于找到一个恰到好处的假设,使得模型既不过于简单,也不过于复杂,能够在有限的数据上实现良好的泛化。
模型建立后,我们需要一把尺子来衡量模型的优劣,以期在所有可能的模型中找到一个最适配当前数据的模型,这通常通过为模型寻找一组最优的参数配置来实现。为此,我们需要定义一个度量标准。这个标准在优化中被称为损失函数,在统计学中被称为似然函数或后验概率。通过对度量标准数学上的形式化定义,我们便可将模糊的优劣评价转化为明确的目标函数。目标的设定决定了学习的方向:是追求预测的误差最小?还是追求数据生成的可能性最大?抑或是追求信息的不确定性最小?最后,一旦模型结构确定、学习目标确立,剩下的就是一个纯粹的数学计算问题,即在参数空间中寻找一个最优解,使目标函数达到最值。这可能是一个可以直接求出解析解的过程,也可能是一个需要通过迭代逼近的数值计算过程,分别称为解析优化和数值优化。
本书的章节编排,正是围绕这一范式的演进过程展开的。我们将看到,随着我们对现实世界假设的不断深入,这个范式是如何从最简单的线性形式,演化为凸几何乃至复杂的深度学习与概率图模型的。此外,本书在章节安排上并非遵循这一范式在具体应用中的执行先后顺序,而是基于数学方法间的逻辑依赖关系层层递进。优化方法是目标求解得以落地的计算基座,而估计与推断方法则是为复杂结构化模型构建学习目标的理论基石。通过首先确立稳健且通用的优化方法(第2章、第3章),我们才能为后续设计复杂的学习目标(第 4 章、第 5 章)提供底层的求解保障;而通过先研究简单概率模型的估计与推断方法,我们才能在后续章节(第 6 章、第 7 章)中游刃有余地构建具有复杂空间或时间依赖的模型,如图1所示。

图1 本书知识体系逻辑结构图
万事开头难,我们从最直观的线性代数入手。在第 1 章中,我们将置身于一个确定性的、线性的理想世界。这一章不仅是数学工具的介绍,更是整个人工智能范式的一个微观闭环。我们将通过一个经典的线性代数问题,低秩近似,来演示如何通过“建模、目标与求解”这一通用范式,从第一性原理出发,推导出一个精确的、全局最优的算法。
• 建模(假设):我们面对高维数据,首先引入线性相关性假设。我们认为数据虽然维度很高,但它们并不充满整个空间,而是紧缩在一个低维的线性流形(子空间)附近。这实际上定义了一个以矩阵秩为约束的生成模型。
• 目标(损失):我们选择最直观的几何度量,欧几里得距离的平方和(即 Frobenius 范数)作为重构误差,来衡量低维表示对原始信息的保留程度。
• 求解(优化):在这个线性世界里,我们不需要复杂的迭代。线性代数中的奇异值分解(SVD)和 Eckart-Young-Mirsky 定理为我们提供了低秩近似问题精确的、全局最优的解析解。
进一步地,在第 1 章的最后,我们将低秩近似的理论延伸至自然语言处理与推荐系统领域。通过探讨潜在语义分析与低秩矩阵补全,我们展示了如何在离散或不完全的观测数据中提取内在的低维结构。特别地,矩阵补全任务中对矩阵秩的直接优化引出了一个经典的 NP-难问题。这不仅证明了低秩假设在处理缺失数据时的能力,还促使我们引入了交替最小二乘法这一务实的数值策略,更在逻辑上为后续章节探讨更通用的数值优化方法与随机建模方法埋下了伏笔。第 1 章不仅是线性代数在数据科学中的应用,更是整个人工智能数学方法论的微观缩影。它向读者展示了在最理想的数学环境下,如何通过第一性原理,从假设直接推导出最优算法。读者可通过理解这个闭环来理解人工智能的雏形。
然而,现实世界往往不是线性的。当模型变得复杂,或者约束条件变得苛刻时,像低秩近似那样能够直接写出最优解公式(解析解)的情况越来越少。为了支撑更复杂的建模与目标,我们需要升级“求解”能力。这就是第 2 章和第 3 章的任务。
当问题中引入了不等式约束(例如支持向量机中的间隔约束),简单的求导令其为零不再适用。在第 2 章中,我们引入凸优化理论。通过拉格朗日对偶和 KKT 条件,我们展示了如何将一个带有复杂约束的原始问题,转化为更容易求解的对偶问题。凸优化理论在人工智能中的地位,不仅在于它为支持向量机等经典模型提供了数值求解的工具,更在于它在数学建模中确立了确定性的边界。在面对复杂的非凸优化任务(如深度神经网络训练)时,由于解空间的高度复杂性,我们往往只能通过数值手段寄希望于收敛至一个较好的局部极值。而在凸优化的框架下,由于局部最优即全局最优的特性,使得我们获得了一种难能可贵的理论确定性。
更为深刻的是,凸优化中的对偶理论提供了一种空间之间的变换方法。一个受限于复杂几何边界的原始问题,往往可以被等价地映射为一个基于权重(乘子)分配的对偶问题。这种变换不仅在计算上直接促成了核技巧等关键技术,使我们能够在不显式增加问题复杂度的情况下处理无穷维的特征空间,更在方法论上启发我们,通过对偶空间的变换,原本纠缠不清的约束条件往往会展现出简洁且具有物理意义的代数结构。因此,掌握凸优化不仅是掌握一种求解技术,更是培养一种通过约束寻找结构、通过变换化繁为简的数学直觉。
当我们进一步迈入深度神经网络的领域,模型变成了高度非凸的复杂复合函数,解析求解彻底成为不可能。此时,我们需要细化到微观视角,利用数值优化方法在函数的地形图中寻找一条通往极值点的路径。在第 3 章中,我们从微分方程中的梯度流出发,推导出梯度下降法这一基本的数值优化算法。通过引入 Lipschitz 连续性等概念,严谨地证明梯度下降法在特定条件下的收敛性。通过具体分析梯度下降法在实际问题中面对的困难,引入动量法、RMSProp、Adam 等一系列改进算法,展示了数值优化方法在非凸优化中的适应性和健壮性。更重要的是,我们通过矩阵微积分的链式法则,推导出了反向传播算法。这一算法是深度学习训练的关键组成部分,它使得我们能够高效地计算复杂神经网络中每个参数对损失函数的梯度,从而使得数值优化方法能够在高维参数空间中有效地寻找最优解。这两章构成了现代人工智能的计算引擎。没有这些优化工具,再精妙的模型设计也只能停留在理论层面,无法真正应用于现实世界的数据。
解决了“怎么解”的问题后,我们回过头来重新审视“解什么”。在第 1 章中,我们使用了最小化平方误差作为目标,但这更多是基于直觉。为什么是平方?为什么不是绝对值?为了给“目标”环节寻找更坚实的理论基础,我们需要将视角从“确定性几何”切换到“随机性统计”。
当我们引入了概率模型的假设时,即假设数据是由某个潜在的概率分布生成的,我们就不能再简单地使用几何距离来衡量模型的好坏了。在第 4 章中,我们引入参数估计与推断方法,展示在概率模型下学习目标的构建方法。我们将看到,平方误差本质上是假设误差服从高斯分布时的最大似然估计,而分类问题中常用的交叉熵损失其本质亦是最大似然估计。进一步地,我们引入贝叶斯视角,将先验知识融入模型与学习目标。我们将看到,最大后验估计实质上就是在最大化似然函数目标的基础上利用关于先验分布的信念进行正则化,从而在数据较为稀疏,问题较为病态时提供更稳健的解。此外,针对基于不完全数据的估计(即含有隐变量)的复杂情况,我们推导了 EM 算法和变分贝叶斯方法。这些方法不仅是处理缺失数据的利器,更是复杂模型(如混合模型、隐马尔可夫模型等)的核心推断工具。在这里,读者将意识到,第1章的低秩近似(主成分分析)在概率框架下推广为概率主成分分析,实现了几何与统计的完美统一。
一旦我们为概率模型设计了一个估计量(即学习目标),自然需要对其进行全方位的性能剖析与理论溯源。在第 5 章中,我们建立了一套严密的性能分析体系:首先,通过将均方误差分解为偏差与方差两部分,确立了评价估计量性能的基本性能指标。通过偏差-方差权衡,我们从数学上界定了模型复杂度与泛化能力间的矛盾,揭示了过拟合与欠拟合的内在机制。其次,引入 Fisher 信息量与 Cramér-Rao 下界,为参数估计的精度设定数学上的理论天花板,量化观测数据中蕴含的信息量。最后,通过引入充分统计量,我们确立了构造最小方差无偏估计量的系统性路径。在此基础上,利用指数分布族与最大熵原理,揭示了概率建模中分布假设的必然性,即在给定观测约束下,指数分布族是保留最大不确定性、引入最少主观偏见的唯一合理选择。这不仅为第 4 章中的概率模型假设提供了自洽的理论保证,也从数学本质上揭示了如多元逻辑回归、高斯线性回归等经典模型存在的必然性。
在掌握了优化方法和统计目标之后,我们便有能力去处理现实世界中真正复杂的数据了。当数据不再是独立同分布的,而是存在图像像素间的空间依赖,或是语音信号的时间依赖时,我们需要升级“建模”环节,引入结构化信息。
当我们面对具有复杂依赖关系的随机变量集合时,第 6 章中的概率图模型为我们提供了一个强大的建模工具。通过引入图论的语言,我们能够清晰地描述随机变量之间的条件独立性关系,从而将一个高维的联合分布分解为局部的因子乘积。这种分解不仅极大地简化了模型的表达和推断,还为我们提供了一套系统的方法来设计高效的推断算法,如变量消除和循环置信传播。这些算法利用图的拓扑结构,将原本指数级复杂的推断问题化繁为简,使得在实际应用中处理大规模数据成为可能。
进一步地,在第 7 章中,我们将概率图模型在时间维度上展开,引入序列数据模型与随机过程的概念。通过马尔可夫假设,我们研究了马尔可夫链并构建了隐马尔可夫模型,这是处理序列数据的经典工具。将隐马尔可夫模型推广到连续状态空间,我们便导出了状态空间模型和 Kalman 滤波器,这些模型在时间序列分析和控制系统中具有广泛应用。最后,我们通过高斯过程回归,展示了非参数化模型如何利用核函数处理无限维度的函数空间。全书的知识体系在这一章得到了高度的交汇与融合,例如隐马尔可夫模型的评估和解码方法是变量消除算法在链式图上的特例,学习方法则是 EM 算法在特定结构模型上的应用; Kalman 滤波器则是利用多元高斯分布的条件概率公式,在链式图上递推计算隐变量后验分布的典范;而高斯过程回归不仅呼应了第2章中的核技巧与第5章中的贝叶斯思想,更将我们对模型的理解从有限维参数空间拓展到了无限维函数空间,展示了同一模型在这两种空间之间深刻的对偶关系。至此,从优化求解到统计推断,再到结构化建模,全书完成了一个首尾呼应的人工智能数学方法论闭环。
正如本章开头所强调的,现实世界的高维数据是极其稀疏的。在稀疏的数据中寻找规律,就像在真空中试图抓住空气。如果不做任何限制,学习是不可能的。人工智能数学方法的核心,本质上就是一套如何优雅地设计约束(假设),以便在有限数据下逼近真实世界的方法论。因此贯穿本书所有章节的隐形的逻辑主线,就是通过各种假设对抗维度灾难。在阅读本书时,我们建议读者不要仅仅关注公式的推导,更要时刻思考:这里引入了什么假设?这个假设通过什么数学工具实现?它换取了什么计算上的便利?它的代价是什么?例如:
• 在第 1 章中,我们引入了线性相关性假设,这使得我们能够通过 SVD 求解低秩近似问题,但同时也限制了模型只能捕捉线性结构。
• 在第 2 章中,我们引入了凸性假设,这保证了全局最优解的存在,但也限制了学习目标必须具有特定的几何性质,使得某些非凸问题无法直接应用这些优化方法。
• 在第 4 章中,我们引入了概率模型假设,这将无限的函数空间压缩为有限的参数空间,使得估计成为可能,但也可能导致模型过于简单,无法捕捉数据的复杂性。
• 在第 6 章中,我们引入了独立性假设,这将随机变量间稠密的关联性变得稀疏,使得估计与推断算法得以高效实施,但也可能忽略了随机变量之间复杂的依赖关系。
本书的每一章都试图构建一个“应用背景-问题建模-理论推导-算法求解”的闭环。读者完全可以根据自己的研究兴趣,选择性地深入某一章(例如,专门研究支持向量机的对偶推导,或专门学习隐马尔可夫模型的评估、解码和学习算法),获得解决特定问题的完整逻辑。但作为编者,我们更希望读者能站在更高处,看到看似独立的数学概念与方法之间的内在统一性与逻辑传承。例如:
• 线性最小二乘与低秩近似(第1章、第2章)并非孤立的代数运算,它们统一植根于投影定理这一几何基础;而当我们转向统计学的视角,会发现它们恰好对应于高斯噪声假设下的最大似然估计(第 4 章)。
• 正则化不仅仅是改善数值稳定性、降低矩阵条件数的工程技巧(第 2 章),在统计推断中,它有着深刻的贝叶斯渊源,对应于引入参数的先验分布(第4章),其本质是在偏差与方差之间寻求最佳的权衡(第 5 章)。
• 从信息论中的最大熵原理出发(第 5 章、第 11 章),我们能够清晰地梳理出通向广义线性模型与深度学习中 Softmax 激活函数的演进脉络,并在此框架下深刻揭示统计学中的最大似然估计与信息论中的交叉熵在学习目标上的等价性(第4章);
• 信息论(第 11 章)中用以衡量两个分布之间差异的 Kullback-Leibler 散度是近似推断中证据下界的核心构件(第4章、第6章)。
• 核技巧不仅让支持向量机(第 2 章)具备了处理非线性分类的能力,其核心,即核函数,也直接定义了高斯过程(第 7 章)的统计特性,从而将我们对模型的理解从有限维参数空间扩展到了无限维的函数空间。
只有理解了这些内在的脉络与联系,才能真正融会贯通,建立起属于自己的人工智能数学直觉。
最后,为保证本书体系完整自洽,我们还在附录中补充了线性代数、多元函数微积分、概率论与信息论的基础知识。这些内容虽然在其他教材中也有介绍,但我们在编写时特别注重符号的一致性和与正文内容的统一,确保读者在需要回顾基础知识时,能够直接找到与正文推导相匹配的数学工具和符号约定,从而避免不同教材之间可能存在的符号混乱和概念不一致的问题。建议读者在学习过程中,遇到不熟悉的数学工具时,直接回到附录中查阅相关章节,这样不仅能更快地理解正文内容,还能在潜移默化中熟悉本书的数学语言体系。
愿这本书能成为读者探索人工智能深层奥秘的坚实阶梯。
在诸多机器学习任务中,需要处理的数据通常可以表示为
,其中每个数据点
是一个
维列向量。这里的
称作数据的维度,而
是数据点的数量。为方便处理,可将这些数据点按列排成一个矩阵
。
在处理源于真实世界的数据(如语音、图像、文本等)时,数据的维度
往往非常高。例如,一张分辨率仅为
的三通道彩色图像,其维度就高达
。过高的维度会引发一系列问题,这些问题统称为“维度灾难”,主要体现在以下几个方面。
• 许多机器学习算法的计算复杂度是数据维度
的高次多项式。因此,随着维度的增加,算法的计算开销和时间成本将急剧上升,使得模型训练和数据分析变得异常困难。
• 高维空间具有巨大的体积,它会随着维度的增加呈指数级增长。要在这样的空间中有效地进行学习(例如,准确估计数据分布),就需要海量的数据点来覆盖其中所有可能的取值区域。然而,在现实应用中,数据集的规模往往是有限的。如图1.1所示,假设我们希望数据点的间距不超过 0.02 ,在半径为 0.5 的一维空间(单位区间)中,仅需 50 个均匀分布的点即可满足要求。但在半径为 0.5 的二维空间(圆盘)中,则至少需要
个点才能达到相似的覆盖密度。如果依然只用 50 个点采样,数据将变得极其稀疏,无法有效反映其“圆盘”的结构特征。

图1.1 在高维空间上采样的困难性
• 作为数据稀疏性的直接后果,许多依赖于距离度量的算法(如 k-近邻、支持向量机等)在高维空间中的性能会显著下降。这是因为随着维度的增加,任意两点之间的距离会变得越来越接近,趋于一致。换言之,高维空间中的点倾向于分布在空间的“表面”或“边界”上,而“表面”或“边界”上的数据点之间的距离相对接近,导致基于距离的“远近”概念失去了区分度。因此,这些算法难以捕捉数据内在的局部结构和规律。
值得注意的是,尽管真实世界的数据以高维形式存在,但其内在结构往往由少数几个潜在因素决定。这意味着数据点实际上大致分布在一个嵌入高维空间的低维流形[1]上,这在机器学习中被称为流形假设,如图1.2所示。这个低维流形的维度被称为数据的内在维度。基于流形假设,我们考虑构造一个映射,将数据从高维空间映射到这个低维流形上,这被称为数据降维。通过数据降维,我们可以在最大限度保留关键信息的前提下,将数据从原始的高维空间映射到一个更低维度的空间。这不仅能有效揭示数据生成过程中所依赖的低维潜在结构或约束,还能显著缓解“维度灾难”带来的种种困难。
[1] 流形是指一个在每个点附近都局部地近似于欧几里得空间(如平面或直线)的几何对象。例如球面,其整体是一个嵌入三维空间的二维曲面,但在任何一个足够小的区域内,它都近似于一个平坦的二维平面。在机器学习中,这意味着尽管数据点位于高维空间,但它们并非任意分布,而是“附着”在一个低维度的、可能弯曲或折叠的“曲面”上,这个“曲面”就是数据所在的流形。

图1.2 机器学习中的流形假设
| 定义1.1降维(dimensionality reduction) 降维是指将高维数据映射到一个较低维度空间(理想情况下,该空间的维度应接近数据的内在维度)的过程,旨在使低维表示能够最大程度地保留原始数据的主要信息、结构或模式。形式上,该过程可以看作一个函数 ♣ |
实现数据降维的核心在于对数据内在结构做出合理的“假设(或限定)”。这些假设旨在捕捉高维数据中存在的相关性模式,而这些模式正是数据由少数潜在因素驱动的具体体现。因此,任何降维方法的有效性,根本上取决于其所依赖的假设是否与数据的真实结构相契合。这些假设不仅指导着算法的设计,也决定了其性能的上限。
尽管许多现代机器学习方法允许我们对高维数据的相关性模式进行非线性假设,例如核主成分分析和自编码器等,但在许多实际应用中,线性假设往往足以揭示数据的主要特征,并且具有更好的可解释性。此外,基于线性假设的相关算法通常具有更低的计算复杂度。具体而言,若我们将降维后的数据
排成一矩阵
,那么在线性假设下,我们认为
,其中,
是数据降维的目标维度,且
。
根据矩阵的秩的定义,我们不难意识到,如果一个矩阵的秩不大于
,那么它的任意一个列向量就必然能够表示成至多
个线性无关的列向量
的线性组合。在这里我们不妨假设这
个线性无关的列向量是归一正交的(从而构成一
维标准正交基),即对任意
,我们有

此时,任意一个向量
在这组基下的坐标就是
,
)。进一步地,向量
在这组基下的表示就是

从数据生成的角度看,在线性假设下,基向量
构成了生成数据的主要潜在因素,而每个数据点在基下的坐标
则构成了其低维表示。数据的生成机制就是对这些主要潜在因素的加权组合。
另外,既然降维的目标是保留数据中的主要信息、结构或模式,那么我们必须定义一种度量标准,用以评估降维算法“保留主要信息、结构或模式”的能力。尽管我们可以针对数据所应用到的具体机器学习任务去相应地设计上述度量标准,例如对于分类任务我们可以设计度量来保证降维后属于不同类别的数据差异仍足够大,但是对于许多实际应用,我们还是简单地希望降维后的数据和原始数据尽可能接近,最常用的度量标准可能是平方误差。具体而言,降维前后的数据的平方误差定义为
,也就是全体
条数据降维前后欧几里得距离的平方和。
到此为止,我们将数据的线性假设和平方误差结合起来,就得到了低秩近似的定义。
| 定义1.2低秩近似(low rank approximation) 低秩近似是指最优化问题
其中, ♣ |
如前所述,既然矩阵
的秩不超过
,那么其每一个列向量总能表示成某一组标准正交基
的线性组合,也就是包含于这组标准正交基所张成的线性空间
中。因此为了最小化平方误差,对于任意给定的数据
,我们都希望能够在
中找到离它最近的向量
。根据投影定理(定理8.2),这样的向量
就是
在基
下的投影,即

就是向量
在基
下的坐标,也可以视作数据
在
维线性空间
中的降维表示。若定义字典矩阵
,并考虑全体
条数据,不难发现这
条数据在这组基下的坐标所构成的矩阵(也就是数据矩阵
的降维表示)可以写成
,而投影后的全体
个向量则可以表示为
。
至此,我们的目的就变成了要找到一个字典矩阵
,从而使得其在如下定义的降维和重构操作下重构误差
最小。
• 降维操作:
。
• 重构操作:
。
下面我们将重构误差展开,注意到 Frobenius 范数可用矩阵的迹表示,即

由于字典矩阵
的各列是归一正交的,因此
。根据矩阵迹的性质,上式可进一步化简为

由于第一项和
的设计无关,所以最小化重构误差即最大化
。现在我们不妨假设
的秩为
,则有
。若记
,由于
是对称矩阵,因此可正交相似对角化
。注意到,对角矩阵
对角线上的元素只有前
个非零,从而

其中
是矩阵
的第
列,
是
的第
个分量,
是对角矩阵
对角线上的第
个元素,即矩阵
第
大的特征值,
。注意到
,所以向量组
是正交归一化的,即
且
。由此不难验证
(关于这一性质的证明,请思考习题1.1)且
。所以
,等号成立当且仅当

不难注意到,
为第
个标准基向量
时上式成立。因此,我们的目的就变成了要找到能够使得
为第
个标准基向量的字典矩阵
的设计方案。考虑令
由矩阵
的前
列组成,那么

就达到了我们的目标,其中
是矩阵
的第
列。
根据上述推导,我们发现令
取矩阵
的前
大特征值对应的归一正交化的特征向量可最小化低秩近似的重构误差。注意到,若对矩阵
进行奇异值分解(SVD)即令
,那么有下列关系成立。

从而 SVD 中的矩阵
可用于字典矩阵
的构造。这就提示我们低秩近似和矩阵
的 SVD 之间存在着联系。具体而言,若记由矩阵
的前
列构成的子矩阵为
,那么取字典矩阵
即可最小化低秩近似的重构误差,此时

其中,
为由矩阵
的前
行前
列构成的子矩阵,
为由矩阵
的前
列构成的子矩阵。由此可见,矩阵
低秩近似为
也可以看作矩阵
的一种 SVD,称作截断 SVD,它由
的最大的
个奇异值以及其对应的左右奇异向量构成。特别地,如果
,那么此时的低秩近似就退化成用秩为
的矩阵
近似矩阵
,而后者的秩也为
,因此必有
。所以
也是矩阵
的 SVD 的一种等价形式,称作紧凑型 SVD。另外,如果用外积形式表示矩阵
的 SVD(即写成一系列秩为 1 的矩阵的和),即

其中
是第
个奇异值,
,
分别是其对应的左右奇异向量,那么低秩近似本质上就是对矩阵
的下列形式的近似(注意求和上限的差异)。

这就是著名的 Eckart-Young-Mirsky 定理。
| 定理1.1 Eckart-Young-Mirsky 定理 若
其中, ♡ |
另外,由 SVD 的外积形式,我们不难发现重构误差可以写成

其中我们反复用到了向量组
及
是归一正交的这一事实。可见,低秩近似的重构误差就是在截断 SVD 中被舍弃掉的那些奇异值的平方和。此外,我们还知道
,因此我们不妨用下面的定义来衡量低秩近似的误差。
| 定义1.3相对重构误差(relative reconstruction error) 低秩近似的相对重构误差是指
其中, ♣ |
相对重构误差表示的是重构误差与原始数据的“能量”和之比。所谓能量,直观地说就是数据的每一个分量的平方和。根据定义,低秩近似的相对重构误差也可以理解成
中那些被舍弃掉的奇异值的平方和与所有奇异值的平方和之比。显然,这个量的取值范围是
,越接近 0 则表示重构误差越小,降维操作保留了越多数据中的信息。因此,我们通常根据相对重构误差选取
,一个可行的办法是选择合适的
以使得相对重构误差在某一阈值内,例如
。
此外,我们还可以更加严谨地通过交叉验证的方法选择合适的
。具体而言,首先,将所有数据分成两个不相交的集合即训练集
和测试集
,它们的列向量分别代表训练数据和测试数据。然后,使用训练数据求得当
时的字典矩阵
,并分别计算此时测试集在此字典矩阵下的重构结果
。不断增大
直到测试集的重构误差
不再显著变化为止。特别需要注意的是,此时的字典矩阵
是根据训练集而非测试集得到的,所以测试集的重构误差不能根据被舍弃掉的奇异值的平方和计算。
值得一提的是,根据 SVD 的外积形式,我们可以将矩阵
看成是
个秩为 1 的分量
的叠加。根据关于矩阵秩的不等式
,考虑到总秩为
,若部分和的秩小于
将导致矛盾,因此上述任意
个分量之和的秩都一定为
。另外,根据前文关于重构误差的推导,我们也不难发现这些分量在 Frobenius 范数的意义下是正交的,即上述任意
个分量之和的 Frobenius 范数就是这些分量对应的奇异值的平方和。因此,为了使得重构误差最小,我们应当保留前
个奇异值对应的分量之和作为矩阵
的秩为
的低秩近似。这正是 SVD 的物理意义(即 SVD 可视作矩阵在 Frobenius 范数意义下的正交分解)在低秩近似中的直接体现。
| 例1.1数字图像的低秩近似 下面我们来考虑低秩近似在真实世界数据上的应用。我们选取一张像素为
图1.3 “高斯肖像”图像及其前 100 个奇异值的分布 下面我们分别对这张图像进行秩 [a] 虽然当秩
图1.4 “高斯肖像”图像的低秩近似,左上图,右上图,左下图,右下图分别对应秩 我们注意到,存储原始图像需要
个参数即可存储矩阵
那么当 ♣ |
| 例1.2合成数据集的低秩近似 考虑有一组共计
我们将这些数据点按列排成一个矩阵
现在我们对这组数据点进行低秩近似,假设我们选择
根据特征方程 另外,
从而
因此,
实际上,观察原始数据点的生成方式,我们注意到每两个数据点都可以写成
其中,
图1.5 例1.2中的原始数据点(用黑色实心点标出)与降维后重构的数据点(用黑色空心点标出) ♣ |
事实上,低秩近似和主成分分析之间存在着非常紧密的联系。粗略地讲,主成分分析的目的是通过一个正交线性变换将数据变换到一个新的坐标系上,新的坐标系的轴称为主成分。主成分的设计目标是使得数据投影在第
主成分上的方差被依次最大化,并且主成分之间两两正交,即使得变换后的数据在这些维度上是线性不相关的(协方差为 0 )。从算法本身的角度看,样本主成分分析[2] 可以看成对数据矩阵做中心化(即对每一列减去这些列的平均值)、用
缩放处理后再进行低秩近似。具体而言,若定义数据的经验均值
[2] 根据主成分分析的定义,主成分的设计目标是让数据投影在主成分上的方差最大。显然,我们需要数据的协方差矩阵来完成这一任务。一般情况下,我们事先并不知道数据的统计特征,因此常用的方法是通过数据本身对其协方差矩阵进行估计。利用数据本身估计得到的协方差矩阵完成主成分分析的方法就称作样本主成分分析。

那么中心化、缩放后的数据矩阵可以写成

此时
就是数据的协方差矩阵的一个无偏估计。此时我们不难发现,样本主成分分析中的正交线性变换即对应低秩近似中的字典矩阵
,主成分即对应低秩近似中的正交基
,数据投影在主成分上的(样本)方差即
的奇异值的平方
。低秩近似中基的正交性保证了主成分的正交性,而样本主成分分析中变换后的数据在这些维度上的(样本)协方差为 0 则由低秩近似中
这一事实保证。此时,对于任意给定的数据
,其降维后的表示可以写成

而重构的数据则为

关于主成分分析的更多细节,将在例2.4中详细讨论,而关于样本主成分分析,可进一步思考习题5.3。
| 习题1.1 若矩阵 |
| 习题1.2 若矩阵
并据此论证:对于 k-近邻等基于欧几里得距离的算法,不论使用低秩近似中降维后的数据还是重构的数据都将得到等价的结果。 |
| 习题1.3 试证明谱范数的 Eckart-Young-Mirsky 定理,即证明若
其中, |
| 习题1.4 若矩阵 |
分布语义学是一种语言学理论和自然语言处理方法,其基本假设是:在相同语境中使用和出现的词语倾向于具有相似的含义。因此,词语的意义可以通过其上下文的统计模式来捕捉。直观地看,就是“物以类聚,词以群分”,一个词的意义可以通过观察它经常和哪些词一起出现(即它的“分布”)来推断。在分布语义学中有以下几个重要的概念。
• 上下文:目标词语周围的词语。上下文的定义可以是局部的(例如目标词语前后几个词),也可以是整体的(例如包含目标词语的整个句子或文档)。
• 分布:目标词语在各种不同上下文中出现的频率和模式。
• 语义向量:通过分析词语的分布而构建的向量,用于表示词语的意义。语义相似的词语,其语义向量在向量空间中也会比较接近。
通过大量数据构建语义向量,就可以通过各种数据驱动的方法来自动学习词语的意义。在各种构建语义向量的方法中,比较常见的是构建文档词项矩阵。具体而言,它将一系列(假设为
个)文档(常称为语料库)表示成一个矩阵
,其中每一列代表一个文档,每一行代表一个词项,
表示所有文档中出现的不同词项的总数。矩阵中第
行第
列的元素
表示第
个词项在第
个文档中出现的频率或权重。几种常见的确定
的方法如下。
• (归一化)词频:词项
在文档
中出现的次数(也常用文档的总词数归一化)。
• 布尔值:词项
是否在文档
中出现( 1 表示出现, 0 表示未出现)。
• 词频-逆文档频率:(归一化)词频与逆文档频率之积。某词项的逆文档频率定义为

其中,对数常以 10 为底。可见某词项的逆文档频率相对于所有文档而言都是一常数。直观来讲,如果一个词项的词频高,就说明该词项可能对于文档比较重要。另外,如果一个词项在整个文档集合中出现的频率很低(从而逆文档频率较高),就说明该词项可能更加具有区分性,更能代表文档的特征。
| 例1.3 例如我们的语料库中有如下 3 个文档。 1.文档1,内容为 This is a squirrel. 2.文档 2,内容为 This is a hamster。 3.文档 3,内容为 This is a capybara. 若不计标点符号并忽略大小写,那么词项“squirrel”在文档 1 中的归—化词频就是 ♣ |
一旦完成文档-词项矩阵的构建,我们就可以利用该矩阵完成一系列常见的语义分析任务,例如:
• 通过比较
的第
列和第
列(例如利用余弦相似度)来度量文档 i,j的相似程度;
• 通过比较
的第
行和第
行来度量词项 i,j的相似程度;
• 给定一个新的文档
,将它与语料库中的其他文档进行比较,以确定与它较为相似的那些文档;
• 通过对
的列向量或者行向量进行聚类(例如利用 k-均值算法)来完成对文档或者词项的分类。
然而正如本章一开始所论述的那样,对于一个较为庞大的语料库,其维度可能较高。因此,为缓解维度灾难,特别是数据不充分对上述语义分析任务带来的影响,我们通常先对原始语料库进行降维,并在降维表示空间中完成语义分析任务。由于文档-词项矩阵具有稀疏性,即大量的元素为 0 (这是因为每个文档可能只包含所有词项中的一小部分),我们通常假设矩阵
是低秩的,从而考虑矩阵
的低秩近似

一旦求得低秩近似的字典矩阵
,我们就可以利用矩阵
的列向量
的降维表示

来进行语料库中文档与文档的比较以及文档的聚类。此外,给定一个新的文档
,我们也可以利用字典矩阵
对其进行降维,从而与语料库中的文档进行比较。
如果要比较或者聚类词项,又该如何处理呢?事实上,关于这个任务我们有两个(等价的)思路。首先注意到矩阵
的行向量表示的是词项,因此在低秩近似中,需要寻找的是一系列(共
个)行向量形式的标准正交基,使得
的所有行向量在这组基下的投影与其自身的欧几里得距离的平方和最小。仿照此前的思路,我们不难发现此时所设计的基向量就是
的前
大特征值对应的归一正交化的特征向量。根据 SVD 的性质,此时的字典矩阵就是
。因此任意一个
的行向量
的降维表示就是

此外,我们也可以直接分析矩阵
,这是因为矩阵
的列向量代表的是词项,与之前的定义一致。注意到转置不改变重构误差,从而
的低秩近似就是

从而
的任意列向量
的降维表示就是
,即
。 一旦得到了词项向量的降维表示,我们就可以完成相应的比较或者聚类任务。
通过上述分析我们不难发现,此时所有的学习算法(如计算相似度、聚类等)都基于原始文档或词项向量的降维表示,也就是说我们事实上是在降维表示空间中完成语义分析任务。这样的自然语言处理方法称为潜在语义分析,所使用的降维表示空间称作潜在语义空间。
| 习题1.5 不计标点符号并忽略大小写,针对例1.3中的语料库完成基于词频-逆文档频率的文档-词项矩阵 |
| 习题1.6 针对为例1.3中语料库构建的文档-词项矩阵 1.文档 1 和文档 2 的余弦相关性; 2.词项“squirrel”和词项“capybara”的余弦相关性。 其中任意两个向量 |
| 习题1.7 若是在例1.3的语料库中增加一个内容为“Squirrel,hamster,capybara are rodents.”的文档,不计标点符号并忽略大小写,试重新完成基于词频-逆文档频率的文档-词项矩阵 1.词项“squirrel”和词项“capybara”的余弦相关性; 2.词项“squirrel”和词项“rodents”的余弦相关性。 |
协同过滤是推荐系统中最经典、最常用的技术之一。同 1.3 节中所介绍的分布语义学的核心思想类似,协同过滤的基本假设是“物以类聚,人以群分”,它基于用户的历史行为 (如评分、购买、浏览等)数据来发现用户或物品之间的相似性,例如兴趣相似的用户群体更倾向于对相同的物品产生兴趣,从而进行推荐。一般来讲,协同过滤主要分为两大类。
• 基于用户的协同过滤:找到与目标用户兴趣相似的用户群体,然后将这个群体中其他用户喜欢且目标用户未接触过的物品推荐给目标用户。
• 基于物品的协同过滤:找到与目标用户过去喜欢的物品相似的物品,并将其推荐给目标用户。
和分布语义学中的文档-词项矩阵类似,协同过滤的基础是用户-物品交互矩阵。具体而言,它将一系列(如
个)用户对各个物品的交互行为表示成一个矩阵
,其中每一列代表一个用户,每一行代表一个物品(共
个),矩阵中第
行第
列的元素
表示第
个物品与第
个用户之间的交互行为,例如:
• 用户对物品的评分(1~5星);
• 购买记录( 1 表示购买, 0 表示未购买)、点击次数、浏览时长等。
一旦得到了用户-物品交互矩阵,我们就可以用它来进行推荐。例如在基于用户的协同过滤中,我们可以通过计算目标用户向量(即
中的某一列)和其他所有用户向量(即
中的其他列)之间的相似度(如余弦相似度等),并找出相似度最高的若干个用户来得到与目标用户兴趣相似的用户群体,这被称为基于用户的最近邻算法。
事实上,同分布语义学中的情形类似,低秩假设在用户-物品交互矩阵上也被普遍认为成立。其中的一个原因是用户对物品的偏好是由少数几个潜在因素(或称为隐因子,在线性空间中表示为一组基向量)决定的,而且用户对物品的偏好是这些潜在因素的线性组合。因此,我们也可以在
的降维表示空间中进行协同过滤。例如在基于用户的协同过滤中,为计算用户 i,j 之间的相似度,我们可以直接计算降维后的向量
与
之间的余弦相似度等。
低秩假设在协同过滤中的作用远不止简化高维空间中的向量运算。其更重要的意义在于,它为仅基于少量已知的用户-物品交互数据来估计或补全用户-物品交互矩阵提供了理论基础。在实际推荐系统中,用户通常只会与极少部分物品产生交互,导致用户-物品交互矩阵包含大量缺失值。因此,利用低秩假设进行矩阵补全对于解决这一问题至关重要。为何有可能仅通过少量已知的用户-物品交互数据来估计或补全用户-物品交互矩阵?一个非常直观但不十分严谨的解释是,若假设矩阵
的秩为
,那么由 SVD 的外积形式,我们有

因此,如果我们给定
,就可以通过上面的公式唯一确定矩阵
。进一步地,我们发现
共包含
个参数(也称作自由度);
共包含
个元素,但是由于这些向量是正交归一化的,因此共产生了
个约束,从而只留下了
个参数;类似地
共包含
个参数。因此,确定
只需要共计
个参数。对于低秩的情况(即
),我们有
,这就提示我们有可能仅通过少量已知元素估计或补全低秩矩阵。另外,由于我们事先并不知道
的取值,因此我们不妨通过寻找可能的最小
值来完成低秩矩阵的估计或补全 [3] 。在固定矩阵部分元素的情况下,通过最小化矩阵的秩(或者一个和秩相关的函数)来估计或恢复缺失元素的过程称作低秩矩阵补全,其数学定义如下。
[3] 事实上,可能的最小k值对应的矩阵大概率是唯一的。直观来看,这是因为低秩假设使得矩阵的自由度大大降低。而一旦自由度足够低,且已知的元素数量足够多,那么“未知数”的数量(即自由度)就会小于“方程”的数量(即已知元素的数量),从而大概率会有唯一解。
| 定义1.4低秩矩阵补全(low-rank matrix completion) 低秩矩阵补全是指最优化问题
其中,集合 ♣ |
然而遗憾的是,固定已知元素直接最小化矩阵的秩是一个 NP -难问题。因此有各种包括凸松弛、交替最小二乘法在内的方法求解或近似求解低秩矩阵补全问题。其中,交替最小二乘法可能是使用最为广泛,实施起来也最为简便的近似求解低秩矩阵补全问题的方法。注意到如果我们事先已知待补全矩阵
的秩(或者近似秩)为
,那么根据 SVD,
一定可以写成两个矩阵的乘积,即

其中,
。同时求解矩阵
以使得对所有
,
与其已知值
尽可能接近可能比较困难,那么我们不妨将这个问题分解成两个相对容易的优化子问题——在固定
的情况下求解
以及在固定
的情况下求解
,然后交替地求解这两个子问题,直至收玫。值得注意的是,当
或者
固定时,要最优化另一方以使得对所有
,
与其已知值
的平方误差之和最小事实上是线性最小二乘问题,可以高效求解。该方法因其交替执行关于
、
的线性最小二乘的优化步骤而得名,故称交替最小二乘法,其伪代码如算法1.1所示。利用交替最小二乘法求解低秩矩阵补全问题,进而完成用户-物品交互矩阵的估计或补全,实现协同过滤的方法有时也称作基于矩阵分解的协同过滤。
| 算法1.1 交替最小二乘法 |
Input: 待补全的矩阵维度 |
| 习题1.8 有一个包含 4 个用户和 4 个物品的推荐系统,初始时仅已知用户 1.试利用低秩矩阵补全估计用户-物品交互矩阵。 2.试利用基于用户的最近邻算法为用户 1 推荐物品,其中选择相似用户群体的标准为一切与目标用户向量的余弦相似度大于 0.9 的用户。 |