第 3 章 函数与泛函分析 现有的人工智能方法通过模型优化从历史数据中发现观测对象与评定结 果之间的对应关系,并将其用于评定新观测对象。也就是说,人工智能方法的 本质就是尝试找到一个尽可能逼近真实对应关系f将每个观测 ^ 的对应关系f, 对象x,映射成一个评定结果y,^相似, ^。本章介 使其尽可能与真实评定y即y≈y 绍人工智能模型设计、优化求解、评估验证过程中,涉及的函数与泛函相关知识。 ..3.1 集合 通常,数据驱动的人工智能方法从历史经验数据中发现规律,并将其用于 对应场景中,实现智能分析。发现规律的过程统称为机器学习。当下,针对特 定应用场景的数据收集更容易、规模更大。即便如此,为确保人工智能方法的 性能,不能简单粗暴地直接将模型投放到实际应用中。一方面,这将给用户带 来许多负面体验。另一方面,模型的调优变得更加烦琐,可操作性变差。不难 理解,历史数据来源于实际应用,是应用场景中待解决问题对应数据的部分抽 样。所以,只要数据量足够大,可假设收集到的数据的分布与该应用场景中待 解决问题对应的数据分布完美契合。也就是说,抽样式的数据收集并未改变原 始的数据分布特性,收集到的数据与待解决问题对应的数据分布相同。基于 此,数据驱动的人工智能方法通常将已有历史数据划分为两部分,一部分用于 模型训练、学习,另一部分用于模拟真实场景对模型的性能进行验证评估。需 要说明的是,对某个特定问题来说,数据的划分方式可能不唯一。例如,交叉验 证法对数据进行多次划分,并各自独立训练、验证,再由性能均值对设计的模型 进行评估。实际上,以上描述中涉及的数量可数的历史数据构成一个集合。划 分后的用于模型训练的数据构成该集合的子集,称作训练集;用于模型性能评 估的另一部分数据也构成该历史数据集的子集,称作验证集。那么,从数学的 角度来说,到底什么是集合? 集合具备哪些特性? 集合与集合之间具备什么样 的关系呢? 本节接下来将围绕以上问题介绍集合相关的数学知识及其在人工 智能领域中的应用。 56人工智能的数学基础 更多关于模型性能评估与验证的内容详见第10 章。 注. 3.1.1定义与表示 人类可感知到的客观存在以及思维中包含的事物或抽象符号,都可称作对象。如上 文所述,收集到的历史数据是可数的。那么,每一个数据可称作一个对象。需要指出的 是,这里所说的对象其实是有应用场景的。对待解决的问题来说,收集到的每个数据可视 作一个对象。但是,收集到的每个数据可能均由多个子项构成。那么,构成数据对象的各 个子项,也可各自视作一个对象。其实,这些数据子项构成了一个整体。数学上,把能够 确定的多个对象构成的整体,称作由这些对象构成的集合。通常地,集合采用大写拉丁字 母表示,例如,所有n维实数向量构成的集合Rn、训练数据集合T、验证数据集合V等。 与之对应地,集合中的每个对象,称作“元素”。元素通常用小写拉丁字母表示,如n维实 数向量集元素x、训练集元素t、验证集元素v等。元素与集合之间只有属于与不属于两 种关系。若元素a属于集合A,则记作a∈A。否则,记作a.A。需要指出的是,若不存 在一个历史数据既属于训练集又属于验证集的情况,也就是说,训练集与验证集不存在数 据重叠,那么训练集中的任意元素肯定不属于验证集。反之亦然。有必要指出的是,集合 中元素的个数,称作集合的大小,是对集合的一种测度。给定集合A,则其大小记作 card(A)。不含任何元素的集合,称作“空集”。空集通常记作Φ,即card(A)=0;至少含 有一个元素的集合,称作“非空集”。含有有限可数个元素的集合,称作“有限集”;元素个 数不可数的集合,则称作“无限集”。数据驱动的人工智能分析方法处理的数据对象一般 构成有限集。 有必要说明的是,测度论是研究集合上的测度和积分的理论,不是本书的重点, 感兴趣的读者可查阅相关资料。 注. 不难发现,仅采用拉丁符号表示集合,不利于对集合构成特点的表达。构成集合的所 有元素已知的情况下,可采用穷举所有元素,并将其用大括号括起来的方式表示集合。例 如,验证集 V 由ab、则集合 V 可表示为V={b, 、 c 三个数据对象构成, a,}。需要说明的 是,空集是一个特殊集合,其内部没有任何元素。采用元素穷举法时,空集(c) 可写成Φ={} 的形式。显然,若集合为无限集,或其元素个数较多,则不便用穷举法表示。此时,可采用 元素公共属性描述法表示集合。也就是说,一个集合可写成如下形式:A={元素一般式 x|公共属性描述D}。例如,昨天收集的数据构成的集合A={x| x 是昨天采集的}; 正实 数构成的集合B={x|x>0 并且x∈R}。 3.2 元素特性 1. 由集合与元素的关系可知,在集合 A 已知的情况下,任给一个元素a,该元素或者属 第3章函数与泛函分析57 于A或者不属于A,二者必取其一,不存在模棱两可的情况。这称作集合元素的确定性。 也就是说,“皮肤白皙的美女”“个子很高的帅哥”均具有不确定性,不能构成集合。实际 上,因为不确定性的信息很难用数据表达,所以收集到的历史数据通常是确定的。严格来 说,构成集合的元素不仅具有确定性,相互之间还是不相同的。也就是说,集合中的元素 具有互异性,它们在集合中最多只出现一次,是没有重复的。需要说明的是,由于历史数 据是对真实待解决问题的抽样,一方面,取样过程中不可避免地引入离散化操作;另一方 面,抽样结果的数据表达也不可避免地存在舍入误差。因此,历史经验数据构成的集合中 可能存在不唯一的数据元素。集合元素的另外一个特性是,在集合内部元素地位等同,它 们之间是没有先后顺序的。也就是说,集合{a,b,c}与集合{c,b,a}是同一个集合。 实际上,模糊集合论中集合元素的隶属关系不是绝对确定的,而是更加松弛。但 是,作为一个全新的数学分支,模糊集合论不是本书重点关注内容。感兴趣的读者可 自行查阅相关书籍或资料。 注. 3.1.3集合运算 给定两个集合A与B,若集合A中的元素肯定存在集合B中,即对于.x∈A,x∈ B必然成立,则称A是B的子集,记作A.B。若此时,集合B中存在集合A中没有的 元素,即.x∈ B 但x.A,如图3-1(a)所示,则称 A 是 B 的真子集,记作 A .B。例如, 验证数据集与训练数据集均是历史数据集的真子集。需要指出的是,空集.是所有集合 的真子集。若集合 A 与 B 互为子集,即A. B 与B. A 同时成立,则称 A 与 B 相等,记 作A=B。 图3- 1 子集与补集 一般地,收集到的历史数据构成的集合,在待解决问题求解过程中,称作全集。也 就是说,全集是待研究对象的全体构成的集合。设全集为U,集合 A 是 U 的一个子集,则 U 中所有不属于 A 的元素构成的集合,称作 U 中子集 A 的补集,或简称 A 的补集,记作 A ,如图3-1(b)所示。显然, A 的补集的补集为集合 A 本身。上文提到的验证数据集与.. 训练数据集互为补集。以上定义的补集有时又被称作绝对补集。这是因为,如图3-1(c) 所示,若 A 与 B 是两个集合,属于 B 但不属于 A 的元素构成的集合,称作 A 在 B 中的相 对补集,记作B-A。显然,若A=B,则B-A=. 且A-B=. 。若记收集到的历史数 据构成的集合为全集U,则验证数据集 V 在 U 中的相对补集,其实就是它的绝对补集: 训练数据集T。 58 人工智能的数学基础 若集合 A 与 B 有共同元素,即.x∈ A 且x∈B,则其所有共同元素构成的集合,称 作集合 A 与 B 的交集,记作A∩B,如图3-2(a)所示。显然,上文提及的训练集与验证集 的交集一般为空集.。与之对应地,将集合 A 与 B 中所有元素构成的集合,称作集合 A 与 B 的并集,记作A∪B,如图3-2(b)所示。显然,上文提及的训练集与验证集的并集 即是整个历史经验数据集。另外,若A.B,则显然A∩B= A 且A∪B=B。 图3- 2 集合的交、并运算 有必要说明的是,集合运算是有规律可循的。具体地,集合的交、并运算满足交换律, 也就是说,A∩B=B∩ A 且 A ∪ B = B ∪A;集合的交、并复合运算满足结合律,也就是 说,(A∩B)∩C=A∩(B∩C)且(A∪B)∪C=A∪(B∪C); 集合交、并混合运算满足分 配律,也就是说,(A∩B)∪C=(A∪C)∩(B∪C)且( A ∪B)∩C=( A ∩C)∪(B∩C); A ∩.. 除此之外,集合交、并运算与求补集运算之间满足德摩根律,即A∪B=.. B 且A∩B= ..B。 A ∪.. 3.4 凸集分离定理 1. 除上文介绍的集合运算定律之外,集合元素的分布特性对深入分析集合间的相互关 系也有重要作用。给定一个由描述待观测对象特征的向量构成的集合S,取 S 中任意两 个元素 x 与y,将两元素在特征空间内连接在一起,若连线上的点对应的向量全部在集合 S 中,则称 S 是凸集。形式化地,设集合S.Rn ,对于任意两个元素x∈ S 与y∈S,以及 x+(1-λ)0≤λ≤1, 任意实数λ,若与 n 维向量λy 对应的向量元素z∈ S 恒成立,其中,则 称S为凸集。图3-3给出几个凸集与非凸集的示例。 图3- 3 集合凸性 有必要指出的是,将该特征空间划分为 H +-两 n 维特征空间的任意超平面 H , 与 H 部分。具体地,设超平面 H 的表达式为wxT=0,则半空间 H + 与 H -可分别由无限集 H +={与 H -={表示。需要说明的是,超平面方程采用的是将截 x|wxT≥0} x|wxT≤0} 距项作为权重向量 w 的附加分量,将向量 x 延长一个常数分量维度的齐次表达形式。也 就是说, w 与 x 均为n+1 维行向量。设S1 与S2 为Rn 空间中两个不相交的非空凸集, 则必然存在n+1 维向量w,使得S1. H +与S2. H -或者S2. H +与S1. H -同时成 立,并且[w1,w2,…,wn ]≠o。也就是说,对于Rn 空间中两个不相交的非空凸集S1 第3章 函数与泛函分析 59 与S2,存在一个超平面将它们分离开。换言之,Rn 空间中两个不相交的非空凸集S1 与 S2 线性可分。 不难理解,若S1.H + 与S2.H - ,则 wsT1 ≥0, .s1 ∈S1 wsT2 ≤0, .s2 ∈S2 { (3-1) 设集合S1 与S2 之间的距离定义为 dist(S1,S2)= min s1∈S1,s2∈S2 s1 -s2 2 2 (3-2) 其中,s1-s2 2 2 为s1 与s2 欧氏距离的平方。令 s1* ,s2* = argmin s1∈S1,s2∈S2 s1 -s2 2 2 (3-3) 并记a=s1* -s2* 、b=-(‖s1* ‖22-‖s2* ‖22)/2,则对于.s1∈S1,有 asT1 +b ≥0 (3-4) 对于.s2∈S2,有 asT2 +b ≤0 (3-5) 由于非空凸集S1 与S2 不相交,即S1∩S2=.,所以,s1* ≠s2* ,即a≠0。有必要指 出的是,实际上axT+b=0是s1* 与s2* 连线的“中垂面”。这是因为,不难证明a=s1* - s2* 是axT+b=0的法线。又(s1* +s2* )/2是s1* 与s2* 连线的中点,令x=(s1* +s2* )/2 代入axT+b,得axT+b=0。得证。 为证式(3-4),假设.s1∈S1,使得asT1 +b<0,即 as1T +b=(s1* -s2* )s1T - s1* 2 2 - s2* 2 2 2 =(s1* -s2* )s1T - (s1* )T + (s2* )T 2 . è . . . ÷ =(s1* -s2* )(s1T - (s1* )T)+ (s1* )T - (s2* )T 2 . è . . . ÷ =(s1* -s2* )(s1T - (s1* )T)+ s1* -s2* 2 2 2 <0 (3-6) 由于(‖s1* -s2* ‖22)/2≥0,所以(s1* -s2* )(s1-s1* )T<0。对于s1* 与s1 连线上另外一 点p,有p=λs1+(1-λ)s1* 。其中,0≤λ≤1。由于S1 是凸集,所以p∈S1。此时,p 点 与s2* 的欧氏距离平方 p -s2* 2 2 = λs1 + (1-λ)s1* -s2* 2 2 = s1* -s2* +λ(s1 -s1* )2 2 = s1* -s2* 2 2 +λ(2(s1* -s2* )(s1 -s1* )T +λ (s1 -s1* )2 2 ) (3-7) 显然,若λ 取值为一个很小的正数,即 λ <- 2(s1* -s2* )(s1 -s1* )T (s1 -s1* )2 2 (3-8) 60人工智能的数学基础 时,一定有p-s* 2 2 2<s* 1 -s* 2 2 2。又因为,p∈S1,这与式(3-3)矛盾。也就是说,原假 设.s1∈S1,使得asT1+b<0 不成立。式(3-4)得证。类似地,可证式(3-5) 。 ..3.2区间 对于许多数据驱动的人工智能方法来说,除收集描述历史对象特征的数据之外,通常 还需要对收集的数据给予评定。例如,银行要求购房者向其提供收入证明g、征信报告 h、银行流水r等数据信息,银行依据这些信息决定是否批复贷款。这里的“可批复贷款” 或“不可批复贷款”即是对收集数据的评价。当然,此实例指的是贷款批复人工智能方法 的应用场景。实际上,为了能够设计一个行之有效的人工智能批复贷款模型,需要对每个 历史数据对象给出如上文所示的是否可批复贷款的评定,用于训练过程中校正模型学习 误差。需要说明的是,以上实例中,对于贷款申请人偿还能力只有肯定与否定两种评定。 或者认定申请人肯定能偿还,或者认定申请人不能偿还,存在一刀切问题。特别地,基于 这种模式,银行并不能评估通过贷款申请给自己带来的金融风险,也不能评估若不通过贷 款给自己带来的经济损失。相应地,若能对申请人的偿还能力进行等级评定,或者进一步 细化,对其偿还能力进行0~100 分值的打分,则一定程度上可缓解以上问题。为了使得 银行对通过贷款带来的风险能量化评定,依据收集到的贷款申请人的收入证明g、征信报 告h、银行流水 r 等数据信息,对其收入支持如期偿还贷款的可能性进行估计有重要意 义。例如,若贷款申请人可如期偿还的可能性是100%,则银行批复贷款后无风险;若可 能性是80%,则有一定风险;若可能性小于50%,则有较高风险。显然,此时数据对象评 定取值范围为0%~100% 内的任意实数。 3.1 定义与表示 2. 数学上,将具有特定属性的实数集合,称作区间。这里的特定属性指的是,给定实数 集合S,若实数 x 与 y 均是集合 S 中的元素,即x∈ S 且y∈S,则 x 与 y 之间的任意实数 z 均属于集合S,即x≤.z≤y,实数集合S, 集 z∈ S 恒成立。那么, 称作区间。特别地, 合 S 中的最小实数,称作该区间的下确界;集合 S 中的最大实数,称作该区间的上确界。 如图3-4(a)所示,若记 S 区间的下确界为i,上确界为s,则区间 S 称作闭区间,可用如下 i→sx|i≤x≤s 符号表示:S=[]。若采用集合记法,则S={}。不难发现,区间是元素为 实数的无限集,并且实数元素取值是连续不间断的。需要指出的是,许多教材采用逗号分 隔上下界的方式标记区间。这与本书二维向量的表示方法相同。为以示区别,采用右向 箭头分隔上下确界。有必要说明的是,如图3-4(b)所示,与集合{x|i<x≤s}对应的区 间,称作左开右闭区间, i→s]。此时, i 为它的下界。类似地,如 记作(区间没有下确界, 图3-c) 与集合{i≤x<s} 称作左闭右开区间, i→s 4(所示, x|对应的区间, 记作[)。此时, 区间没有上确界, s 为它的上界。进一步地,如图3-4(d)所示,与集合{x|i<x<s}对应 的区间,称作开区间, i→s)。此时, i 与 s 分别是它的下 记作(区间没有下确界与上确界, 界与上界。一般地,用无穷符号∞表示区间在某方向上是无界的。例如,(-∞→a]、 第3章函数与泛函分析61[b→+∞ ) 。特别地,(0→+∞)表示正实数集,记作R+。显然,上文所述的贷款申请人 收入情况支持如期偿还贷款的可能性构成闭区间[0→1 ] 。除上述集合表示法之外,如 图3-4所示,区间还可用数轴法来表示。区间内元素在数轴上围成的区域,称作区间内 部。数轴的其他区域,称作区间外部。 图3-4区间的开闭性 3.2.2元素特性 如上文所述,区间是一类特殊的集合。与集合类似,给定任意一个区间,即便其内部 实数个数无限多,但是值是确定的。这称作区间元素的确定性。换言之,给定任意一个实 数,它或者落入指定区间内部,或者落入该区间外部。实际上,给定实数对i与s,由其作 为端点的区间内的元素是确定的。由于不存在两个不同实数具有相等的数值,所以,区间 元素是互不相同的。这称作区间元素的互异性。实际上,数值相等的两个元素在区间内 被视作实数轴上的同一点。除了元素确定与互异之外,又因为可比较实数大小,所以区间 内确定且互异的元素是有大小关系的。例如,0.2就比0.3更靠近闭区间[0→1]的左端。 这称作区间元素的有序性。由区间的数学定义不难发现,区间内实数元素之间是连续不 间断的。也就是说,区间元素具有连续性。 2.区间算术 3.3 如前文所述,区间是一段连续实数构成的集合。若变量 x 为区间内任意元素,则 x 的取值具有不确定性。例如,向银行提交贷款申请后,银行最终给出的风险评定值具有 不确定性。一般地,我们之前接触的算术中参与运算的变量取值均是确定的。例如,3+ 5、4×2 等。那么,对于取值具有不确定性的区间来说,是否也可以进行加、减、乘、除运算 呢? 区间算术就是指以区间为操作数的四则运算。普通四则运算中参与运算的操作数是 具有确定值的整数、实数、向量等,其运算结果也是对应类型的值。类似地,区间算术中参 与运算的操作数是区间,运算结果仍为一个区间。一般地,区间由两个界值唯一确定。那 么,区间算术运算结果区间的界与参与运算的区间操作数的界之间具有什么样的函数关 系呢? 就区间加法来说, i1→s1]与S2=[对 设参与运算的两个区间分别为S1=[i2→s2], 于.x∈S1、.y∈S1,定义变量z=x+ y 的所有可能的取值构成的区间 S 为区间S1 与 S1+S2 i1→s1 i2→s2], S2 相加的结果,即S=。不难证明,若S1=[]、S2=[则S1+S2= i1+i2→s1+s2 x []。类似地,对于.x∈S1、.y∈S1,定义变量z= y 的所有可能的取 值构成的区间 S 为区间S1 与S2 相减的结果,即S=S1-S2。不难证明,S1-S2=[i1]。类似地,i,其中,i1s1)、x( s2→s1-i2 S1×S2=[s], i=min(i2,i1s2,i2,s1s2 s=mai1i2, i1s2,i2,s2);S1/S2=[s], 其中,ii1/i1/s1/s1/)、s=mai1/ s1s1i,i=mn(i2,s2,i2,s2 x(i2, i1/s2,i2,s2 跨0区间不应该作为区间除法的除数。有必要指出的是, s1/s1/)。显然, 区 62人工智能的数学基础 间加法和乘法符合交换律、结合律。 ..3.3函数映射 收集数据的根本目的是从中发现规律,并将其用于评定新观测对象。显然,每个观测 对象x与一个评定结果y相对应。这里的对应关系,记作f^,即是人类智能对客观对象x 的认识y^。人类认知能力的来源、本质以及遵循的法则仍是个谜,人类更多地将其称为本 能。与之对应地,人工智能就是要使得计算机具备与人类智能一样或类似的认知能力。 也就是说,人工智能方法就是要找到一个尽可能逼近f^ 的对应关系f,将每个观测对象 x,映射成一个评定结果y,使得y≈y^。不难理解,观测对象与评定结果分别构成两个集 合,记作A与B,其中,x∈A、y∈B。数学上,将以上对应关系f^ 或f称作映射,用于指 示观测对象集合A中任意元素与评定集合B中元素的对应关系,记作f:A→B。数学 上,将这种映射关系称作函数,记作y=f(x)或f(A)={y|y=f(x),x∈A}=B。 根据对应关系中观测对象集合元素个数与评定集合元素个数的不同,如图3-5所示, 函数映射又分为一对一、多对一、一对多、多对多四种模式。顾名思义,一对一映射指的 是,对于集合A中的任意元素x,在集合B中都有一个唯一的y与之对应,反之亦然。对 于人工智能方法待解决的实际应用问题来说,一对一映射并不常见。这是因为,若不同观 测对象的评定结果不同,不同评定值对应的观测对象也不相同,则历史经验数据是随机分 布的、无规律可循的。这与数据驱动的人工智能方法尝试从中发现规律,并用于解决实际 问题相悖。但是在人工智能方法处理数据过程中,一对一映射很常见。例如,卷积神经网 络中输入图像与输出图像分辨率相同时,前者像素与后者像素存在一一对应关系。与一 对一映射不同,多对一映射在数据驱动的人工智能领域很常见。例如,对于对象类别识别 任务来说,多个相似对象被归为同一类别,每个类别相当于对待识别对象的评定结果。也 就是说,观测对象集合中有多个元素与评定集合中的一个元素相对应。为实现精准识别, 人工智能方法通常从不同角度提取待观测对象的多个特征值,再对特征值进行智能分析。 不难发现,观测对象与其描述特征之间的对应关系是典型的一对多映射。有必要说明的 是,在基于卷积神经网络的图像识别任务中,多个卷积层的组合应用,本质是用于提取图 像不同层次的特征。第一个卷积层的输入通常为一幅图像,其输出一般为多个特征映射。 与之不同的是,经典神经元网络中隐层神经元间的对应关系是典型的多对多映射。另外, 用于图像识别任务的卷积神经网络中间卷积层的输入与输出之间的对应关系也是多对多 映射。 有必要指出的是,数学上,一般将一对一映射、多对一映射称作函数。给定任意函数 y=f(x), 即确定了一个以观测对象集合 A 为定义域、以评定集合 B 为值域的元素对应 关系。反过来说,给定评定集合 B 中任意元素,也总能在观测对象集合 A 中找到与之对 应的元素,这构成了另一个函数映射。数学上,若原函数y=f(x)为一对一映射,则其反 向映射构成一个新函数,称作y=f(x)的反函数,记作y=f-1(x)。 第3章函数与泛函分析63 图3-5函数映射 3.3.1自变量与因变量 不难理解,客观事物是导致人类认知对外界刺激做出本能反应的根本。同类事物之 间既有相似性,又有区别。人类智能就是时时刻刻在不知不觉中发现客观事物的区别与 联系。类似地,观测对象的不同是导致人工智能方法给出不同评定结论或做出不同决策 的根本原因。也就是说,观测对象x与其评定结果y的对应关系中,一般前者是客观存 在,观测对象x的改变导致评定结果y的不同。因此,数学上将观测对象x称作映射关 系f的自变量。对应地,观测对象集合A中的元素是自变量x在映射关系f中所有可能 的取值。因此,将集合A称作映射f的定义域。有必要指出的是,函数映射的定义并未 限定自变量的数据类型。也就是说,自变量可以是标量、向量,甚至矩阵。 如上文所述,观测对象x的改变导致评定结果y的不同。也就是说,评定结果y的 取值因自变量 x 的取值不同而不同。因此,数学上将评定结果 y 称作映射关系 f 的因变 量。因变量的每个取值,称作对应函数的函数值。对应地,将评定结果 y 所有可能的取 值构成的集合 B 称作映射 f 的值域。有必要指出的是,函数映射的定义并未限定其因变 量的数据类型,理论上来说,因变量可以是标量、向量,甚至矩阵。但是,常见的因变量评 定结果一般是标量。 3.2 多元函数 3. 数据驱动的人工智能方法很少直接操作收集到的待观测对象数据,而是从不同角度 提取描述待观测对象特征的多个值,将特征值组成特征向量,再基于特征向量对待观测对 象做出评定。不难发现,在这种情况下,人工智能方法就是要找到一个尽可能逼近真实情 况的函数f,用于将每个观测对象的特征向量x=[x1,x2,…,xn ]与某个评定结果 y 之 间建立映射关系,即使得y=x) 此时映射函数 f 的自变量不再是 f(恒成立。不难理解, 一个标量值,而是由多个值x1,x2,…,xn 组成。具有这种特性的函数,称作多元函数。 为了体现其多元属性,有时也将y=x) f(x2,…,) f(写作y=x1,xn 的形式。也有书籍将 多元函数称作多自变量函数,其中,x1,x2,…,xn 均是函数y=f(x1,x2,…,xn )的自变 量。需要指出的是,在卷积神经网络中,输出图像像素值通常由输入图像对应位置周围几 个像素的权重均值决定。若将输入图像对应位置及其周围像素视作多个自变量,将作为 输出图像像素值的权重均值视作因变量,则图像像素值与卷积结果之间构成一个多元函 数映射。有必要说明的是,当卷积核尺寸为1×1 时,卷积核仅由一个标量值构成,若考虑 权重归一化问题,则此标量值为1。此时输入图像与输出图像像素值之间的对应关系退 64 人工智能的数学基础 化为单元函数映射。有必要说明的是,多元函数并不要求函数的自变量均为同一数据类 型的变量。也就是说,一个三元函数的自变量可以是标量、向量、矩阵的任意组合。例 如,对于线性分类问题来说,人工智能方法通常是基于已知经验数据集优化模型函数 Σx^,y (y^-wxT -b)2。不难理解,在观测对象集合中所有元素x 及人类对其智能认知评定 y^已知的情况下,权重行向量w 与截距标量b 均是该线性分类优化函数的自变量。也就 是说,该线性分类优化模型可记作f(w ,b)=Σx^,y (y^-wxT -b)2。 关于卷积的更多内容详见第6章,关于优化的更多内容详见第8章。 注. 3.3.3 复合函数 不难发现,上文涉及的函数表达式均比较简单,且其因变量即是最终评定结果。换言 之,函数的因变量直接作为对待观测对象的评定,而不再作为其他函数的输入自变量。数 学上,将这类函数称作简单函数。在人工智能领域,许多处理方法涉及更复杂的函数形 式。它们通常由某些简单函数的输出作为其他简单函数的输入进而复合而成,称作复合 函数。给定任意函数u=g(x)与y=f(u),若u=g(x)的值域与y=f(u)的定义域相 等,则称y=f(g(x))为函数u=g(x)与y=f(u)的复合函数,简记作y=f(g(x))。 ①有必要提出的是,复合函数并不严格要求u=g(x)的值域与y=f(u)的定义 域相等。实际上,只要后者与前者交集为非空集合,则可定义复合函数y = f(g(x))。此时,复合函数的定义域为u=g(x)的值域与y=f(u)的定义域的交 集。②有书籍将函数u=g(x)与函数y=f(u)的复合函数记作y=(f..g)(x)。本 书不采用这种记法的原因是第1章中已将..定义为分量乘法运算符。 注. 具体地,复合函数一个直接的例子是多层全连接神经网络中多结点输入与多结点输 出的对应关系。设输入层结点个数为n0,第i 个结点的输入值为xi,记x=[x1,x2,…, xn0]。第一隐层结点个数为n1,记第一隐层中第j 个结点的输入为yj,其与输入层第 i 个结点的连接权重记作w1i,j,其中,j=1,2,…,n1。显然,yj =w1:,jxT-b1j = Σn0 i w1i,jxib1j, 其中,b1j 为第一隐层第j 个结点对应线性模型的截距。记y=[y1,y2,…,yn1 ]、W1= [(w1:,1)T,(w1:,2)T,…,(w1:,n1)T]、b1=[b11,b12,…,b1n 1 ],则输入层结点与第一隐层结点输 入值之间构成函数映射关系,记作y=f1(x,W1,b1)。若令第二隐层结点个数为n2,记 第二隐层中第k 个结点的输入为zk ,其与第一隐层第j 个结点的连接权重记作w2j,k ,其 中,k=1,2,…,n2。不难证明,zk =w2:,kyT -b2k =Σn1 j w2j,kyj -b2k,其中,b2k 为第二隐层第 k 个结点对应线性模型的截距。记z = [z1,z2,…,zn2]、W2 = [(w2:,1)T,(w2:,2)T,…, 第3章 函数与泛函分析 65 (w2:,n2)T]、b2 =[b21,b22,…,b2n 2],则第一隐层输出与第二隐层结点输入值之间构成函数映 射关系,记作z=f2(y,W2,b2)。考虑第一隐层中第j 个结点的输入是由输入层所有结点 的加权均值Σn0 i w1i,jxi 平移b1j 得到,第二隐层中的第k 个结点的输入zk 可表示为输入层结 点的函数,即zk =Σn1 j w2j,k ( Σn0 i w1i,jxi -b1j ) -b2k。实际上,由输入层与第一隐层之间、第 一隐层与第二隐层之间的两个函数映射,可直接得到输入层与第二隐层之间的函数映射 关系,即z=f2(f1(x,W1,b1),W2,b2)。随着神经网络深度的增加,最终输出与输入层 之间的函数映射关系复合程度越高,表达式越复杂,表达能力越强。 需要说明的是,若给定函数的自变量与因变量都可表示成另外一组变量的函数, 则给定函数是该组变量的复合函数。分别给出自变量与因变量相对于该组变量的函 数表达式,将其称作给定函数的参数方程。 注. 3.3.4 连续性、单调性、奇偶性 对于人工智能应用来说,以观测对象的特征向量为自变量,以对观测对象的评定作为 因变量构造的函数映射通常具有很好的性质。n 维特征空间内与给定点P 的欧氏距离 不大于δ 的所有点构成的集合,称作P 点的δ 邻域。独立元素点P 构成的集合在P 点的 δ 邻域中的相对补集,称作P 点的δ 去心邻域。给定定义在n 维特征子空间A 上的任意 函数f,对于定义域A 内任意元素x0,若f 在x0 去心邻域内均有定义,且存在一个与 f 函数值数据类型相同的值c,对于任意给定的不论多小的正实数ε,总存在正实数δ,使 得当x 满足不等式‖x-x0‖<δ 时,对应的函数值f(x)都满足不等式‖f(x)-c‖<ε,那 么值c 称作当x →x0 时函数f 的极限,记作lim x→x0 f (x)=c。进一步地,若函数 f 在x0 处的函数值f(x0)=c,则称函数f 在x0 处连续,将x0 称为函数f 的连续点,否 则称x0 为函数f 的间断点。 与之对应地,给定函数f 定义域内任意一点x0=[x0,1,x0,2,…,x0,j,…,x0,n ],对于指 定维度分量xi 以及任意正实数δ,若集合S={x=[x1,x2,…,xi,…,xn ]|‖x-x0‖<δ} 是函数f 定义域的子集,其中对于任意的j≠i 有xj =x0,j,则称集合S 为x0 点沿维度 i 方向的δ 邻域。集合{x0}在x0 点沿维度i 方向的δ 邻域中的相对补集,称作x0 点沿维 度i 方向的δ 去心邻域。对于定义域内任意元素x0,若f 在x0 点沿维度i 方向的去心邻 域内均有定义,且存在一个与f 函数值数据类型相同的常数c,对于任意给定的不论多小 的正实数ε,总存在正实数δ,使得当与元素x0 的i 维分量不同其他分量相同的x 满足不 等式‖x-x0‖<δ 时,对应的函数值f(x)均满足不等式‖f(x)-c‖<ε,那么常数值 c 称作当x 沿维度i 方向靠近x0 时函数f 的极限,记作lim x→x0,i f (x)=c。进一步地,若函 数f 在x0 处的函数值f(x0)=c,则称函数f 在x0 处沿维度i 方向连续,将x0 称为函数 f 的沿维度i 方向的连续点。不难理解,当函数f 在x0 处沿各维度方向的极限值均存 66人工智能的数学基础 在,且与其在该处的函数值均相等时,称函数f在x0 处连续,将x0 称为函数f的连续 点,否则称x0 为函数f的间断点。 若将上述自变量不等式描述中的欧氏距离替换为自变量任意元素x与x0 的差,考虑 差值的符号,将不等式划分为左右两部分,分别对应x0 点的左邻域与右邻域,则函数 f在x0 处沿维度i方向连续又可分为左连续与右连续,对应的函数极限,称作函数f沿 维度i方向的左极限与右极限。不难理解,左右极限相等是函数f沿维度i方向连续的 充要条件。为便于理解,图3-6给出一个自变量与因变量均为一维标量的函数连续性 示例。 图3-6函数连续性 给定任意函数y=f(x), 若其自变量x与因变量y各自对应的数据之间均可比较大 小,且因变量y随自变量x增大而增大,则称函数f为单调增函数;反之,若因变量y随 自变量x增大而减小,则称函数f为单调减函数。单调增函数和单调减函数,统称为单 调函数。以上描述可形式化为:设函数y=f(x)的定义域为A,对任意元素x1∈ A 与 x2∈A, f(x2) 满足不等式x1>x2 时,x1)>f(恒成立,则称函数 f 为单调增函数;若任意 元素x1∈ A 与x2∈A,满足不等式x1>x2 时,x1)<f(恒成立,则称函数 f 为单调 减函数。 f(x2) 若将上述定义中的不等式符号对应修改为大于或等于或者小于或等于符号,则 分别称函数为增函数或者减函数。 注. 若取反操作对其自变量 x 与因变量 y 各自对应的数据有效,则称自变量 x 取反时因 变量 y 也取反的函数 f 为奇函数;反之,若自变量 x 取反时,因变量 y 取值不变,则称函 数y=f(为偶函数。以上描述可形式化为:设函数y=x)的定义域为A,对任意元 x) x∈ A 且f(f(恒成立, f( 对任意元素x∈A,素x∈A,若--x)=-x) 则称函数 f 为奇函数; 若-x∈ A 且f(x)f(恒成立, 奇函数值域空间 -=x) 则称函数 f 为偶函数。不难理解, 关于原点对称,偶函数值域空间关于x=0超平面对称。 3.5 函数凸性与极值 3. 目前,人工智能方法求解逼近真实映射函数的过程,通常由最优化一个目标函数来实 现。更多内容详见第8章。有必要指出的是,不是所有的函数都适合用作目标函数,设计 中需考虑目标函数的凸性与极值。给定定义在 n 维特征子空间 A 上的任意函数f,对于 定义域 A 内任意元素x0,若存在正实数 δ 使得 f 在x0 的 δ 邻域内均有定义,且当 x 满足 第3章函数与泛函分析67 不等式‖x-x0‖< δ 时, x) x)<f(x0), 则称x0 为函 对应的函数值f(均满足不等式f( 数f(的局部极大值点,x0) x) 若 x 满足不等式 x) f(为函数f(的局部极大值。对应地, ‖x-x0‖< δ 时,对应的函数值f(x)均满足不等式f(x)>f(x0), 则称x0 为函数 f(f(x) x)的局部极小值点,x0)为函数f(的局部极小值。需要指出的是,函数的局部极 大值与局部极小值,均称作函数的局部极值;对应的极大值点与极小值点,统称为局部极 值点。有必要说明的是,若函数f(的值域是有界的, x) 则其极大值与所有局部极大值中 的最大值相等,其极小值与所有局部极小值中的最小值相等。 给定任意函数f,若其定义域 A 是凸集,也就是说,对于定义域内任意元素x1∈ A 与 x2∈A,以及任意实数0≤λ≤1,x1+(-x2∈ A 恒成立。如图37(所示, λ1λ)-b) 定义域 A 内元素λx1+(-x2 的函数值与元素x1 与x2 的函数值之间若满足不等式f(x1+ 1λ)λ(1λ)x1)1λ)x2), -x2)≤λf(+(-f(则称函数 f 为凸集定义域 A 上的凸函数。若对于 定义域内任意元素x1∈ A 与x2∈A,以及任意实数0≤λ≤1, λ1λ) λf(x1)+(-f(恒成立, 不等式f(x1+(-x2)< 1λ)x2) 则称 f 为凸集定义域 A 上的严格凸函数。与之对应地, 如图3-7(c)所示,若对于定义域内任意元素x1∈ A 与x2∈A,以及任意实数0≤λ≤1,不 等式 f (x1+(x2)≥λf (1-λ)x2)恒成立,则称 f 为凸集定义域 λ1-λ)x1)+( f ( A 上的凹函数;若不等式f(1λ)x1)+(-f(恒成立,则称 f 为 λx1+(-x2)>λf(1λ)x2) 凸集定义域 A 上的严格凹函数。不难发现,线性函数既是凸函数又是凹函数。这是因 为,如图3-7(a)所示,对于定义域内任意元素x1∈ A 与x2∈A,以及任意实数0≤λ≤1, 线性函数函数值之间满足等式f(x1+(x2)x1)+(f( λ1-λ)=λf(1-λ)x2)。 不难证明,若f(为凸集定义域 A 上的凸/凹函数, 函数 x) 若f1(与f2( 则对于任意正实数β>0, βf(x)也是凸集定义域 A 上的凸/凹函数; x) x)均为凸集定义域 A 上的凸/ 凹函数,则函数f1(+f2(也是凸集定义域 A 上的凸/凹函数; x) x)x) 若f(为凸集定义域 A 上的凸函数,则对于任意实数β,集合Aβ ={x|x∈A&f(x)≤β}是凸集;与之对应地, 若f(为凹函数, x|x)≥β} 若f(为凸集定义域 A 上 x) 则集合Aβ ={x∈A&f(是凸集; x) 的凸/凹函数,则f(的任意一个局部极小值点/极大值点就是f(的极小值点/极大值 x) x) 点,并且所有极值点构成的集合是凸集。 图3- 7 函数凹凸性 有必要指出的是,可以证明,凸函数一定是连续函数。 注. 68 人工智能的数学基础 3.3.6 激活函数 如前文所述,由输入层与第一隐层、第一隐层与第二隐层之间的函数映射,可得输入 层与第二隐层之间的函数映射z =f2 (f1 (x,W1,b1 ),W2,b2 ),其中,zk = Σn1 j w2j,k ( Σn0 i w1i,jxi -b1j)-b2k。不难发现,虽然随着神经网络层数增加,最终输出与初始 输入变量x 之间的函数映射关系复合程度变得更高,表达式更加复杂,但是其函数值仍 然是输入自变量x 的线性组合。也就是说,无论神经网络层数有多少,最终输出都是输 入的线性组合,只是权重的表达更加复杂而已,这是最原始的感知机模型。由于权重值的 个数与自变量x 的取值一一对应,所以这样的神经网络相当于对线性模型的权重进行了 细化。而其逼近真实函数的能力与没有隐藏层的神经网络本质上没有区别。有必要引入 非线性函数对输出结果进行评定,从而增强多层神经网络的表达能力,使其不再只是输入 变量的线性组合,几乎可以逼近任意函数。引入的对隐层输出结果进行非线性评定的函 数,称作激活函数。这是因为,该类函数通常对大于一定阈值的隐层输出结果给出增强响 应,而对于小于该阈值的输出结果进行抑制。 基于阈值实现函数输出影响值的控制是以人类智能为基础的。例如,人类视觉 只能识别一定能量范围内的光,人类听觉只能辨别一定分贝的声音。 注. Sigmoid函数是人工智能领域最早用于对隐层输出结果进行非线性评定的函数,也 是最常用的非线性激活函数之一。对于任意的实数标量x,Sigmoid函数定义为 fsig(x)= 1 1+e-x (3-9) 如图3-8(a)所示,Sigmoid函数实际为一个阶跃函数的平滑近似,将连续实型输入变 换为0和1之间的实数输出。显然,其定义域为(-∞→+∞),值域为(0→+1)。不难发 现,当x 远大于0,即x>>0时,fsig(x)→1;当x 远小于0,即x<<0时,fsig(x)→0。 另外,Sigmoid函数的因变量均值为0.5,不是0中心化的。以上两个特点给Sigmoid激 活函数在应用中解决实际问题时带来不少负面影响。 关于Sigmoid激活函数以上两个特点给数据驱动的人工智能方法求解带来的负 面影响,3.4.2节将给出详细解释。另外,有必要说明的是,领域内Sigmoid函数又被 称作Logistic函数,是线性回归模型的基础。有必要强调的是,表达变量取值的属性 时,本书采用→表示逼近;表达区间属性时,本书采用→实现区间与二维向量的区分。 注. 与之对应地,tanh激活函数是一个函数值0中心化的函数,解决了非0中心化激活 函数给数据驱动的人工智能方法求解带来的负面影响。其表达式为 tanh(x)=ex -e-x ex +e-x (3-10) 第3章函数与泛函分析69 如图3-8(b)所示,tanh函数也是一个阶跃函数的平滑近似。它将连续实型输入变换 为-1~1的实数输出。显然,其定义域为(-∞→+∞), 值域为(-1→+1 ) 。不难发现, 当x远大于0,即x>>0 时,tanh(x)→1;当x远小于0,即x<<0 时,tanh(x)→-1。 显然,tanh函数为奇函数,其函数均值为0。 Relu激活函数解决了自变量绝对值大到一定程度时,因变量取值将基本保持不变的 现象给数据驱动的人工智能方法求解带来的负面影响。其表达式为 Relu(x)=max(0,x) (3-11) 如图3-8(c)所示,Relu函数将连续实型输入变换为0~+∞ 的实数输出。显然,其 定义域为(-∞→+∞), 值域为[0→+∞ ) 。不难发现,当x>0 时,Relu函数是一条与 x轴夹角为45°的直线;当x<0 时,Relu函数是一条水平线,其函数值恒等于0。x=0是 Relu函数的连续点,且Relu(0)=0。 图3-8激活函数 需要说明的是,以上只是激活函数家族的典型代表。读者需要了解,在人工智能 领域还有许多其他类型的激活函数。感兴趣的读者可查阅相关资料。 注. ..3.4 导数 多数数据驱动的人工智能方法将待解决问题转换为目标函数的最优化问题。由前文 函数的定义可知,任意函数的函数值均随自变量取值的变化而变化。而优化求解过程中 往往需要考虑因变量随自变量的变化而变化的快慢程度。 3.1 函数可导与泰勒展开 4. 数学上,上文提到的因变量随自变量的变化而变化的快慢程度,称作导数。形式化 地,仅考虑自变量与因变量均为标量实数值的情况,给定任意函数y=f(x), 设其在定义 域内x0 点的某δ>0 邻域内有定义,即当自变量 x 在x0 处有增量|Δx|< δ 时,x0+Δ 也在定义域内,则函数 f 的因变量取得增量Δy=f(x0+Δx)-f(x0)。若存在常数c,(x) 对于任意给定的不论多小的正实数ε,总存在正实数δ,使得当|Δx|< δ 成立时,不等式 |Δy/Δx-c|< ε 恒成立。也就是说,Δx 趋向0时,因变量增量Δy 与自变量增量Δx 的 比值极限存在,则称函数 f 在x0 处可导,并称此时的极限值 c 为函数 f 在x0 处的导数, 70人工智能的数学基础 记作f'(x0) 、y'|x=x0 或df(x)/dx|x=x0、dy/dx|x=x0。以上表述可形式化为 f'(x0)=lim Δx→0 ΔyΔx=lim Δx→0 f(x0+Δx)-f(x0) Δx(3-12) 不难证明,f在x0 处的导数为函数曲线在x0 处的切线的斜率。不难理解,若将自变 量增量趋向0的方式分为由0的左侧趋向0与由0的右侧趋向0,对应的增量比值极限仍 然存在,则对应的极限称作函数f在x0 处的左导数与右导数,分别记作f'(x0-0 ) 、 f'(x0+0 ) 。有必要指出的是,函数f在x0 处可导的充要条件是其左右导数都存在且相 等。若函数y=f(x)在开区间S内每一点都可导,则称函数y=f(x)在区间S上可导。 不难理解,此时对于任意元素x∈S,都存在唯一导数值f'(x)与之对应。显然,区间内实 数元素x与导数值f'(x)之间构成一个新的函数映射,称之为函数y=f(x)的导函数, 记作f'(x) 、y'或df(x)/dx、dy/dx。对应地,函数y=f(x)在x0 处的导数,记作 f'(x0) 、y'|x0 或df(x0)/dx、dy/dx|x0。不难发现,函数导数的定义与函数连续性的 定义有许多相似之处。实际上,函数连续是其可导的必要非充分条件。例如,Relu函数 在x≠0 处既连续又可导,但在x=0处是连续不可导的。这是因为,如图3-11(c)所示, Relu函数在x>0 区间内导数为1,在x<0 区间内导数为0,而在x=0处Relu函数的左 导数与右导数不相等,分别为0与1。 有必要指出的是,若函数y=f(x)在定义域内x0 处,左右导数f'(x0-0)与 f'(x0+0)均存在,定义a=min(f'(x0-0),f'(x0+0 )) 、b=max(f'(x0-0), f'(x0+0)), 则集合[a→b]内任意元素定义为函数y=f(x)在x0 处的次导数。显 然,若函数y=f(x)在x0 处左右导数相等,则集合[a→b]内只有一个元素。所以, 函数y=f(x)在x0 处可导是其在该处存在次导数的充分非必要条件。次导数的关 键作用在于,可对不十分光滑的函数给出取极值条件。 注. 由函数单调性及其导函数的定义不难发现,函数的单调性与导数的符号强相关。具 体地,若函数y=f(x)为单调增函数,则f'(x)>0;若函数y=f(x)为单调减函数,则 f'(x)<0;反过来,若f'(x)>0,则存在 x 的邻域,函数y=f(x)在此邻域内单调增;若 f'(x)<0,则存在 x 的邻域,函数y=f(x)在此邻域内单调减。进一步地,若函数由增 变减,则其导数必由正变负。考虑导函数的连续性,在单调增区间与单调减区间的邻接处 必然存在一点x0,使得f'(x0)=0,则此点称作函数f(x)的驻点。也就是说,若函数在 局部极大值处可导,如图3-9(b)所示,则其导数为0;若函数由减变增,情况类似:函数在 局部极小值处可导,如图3-9(c)所示,则其导数为0。有必要说明的是,如图3-9(a)所示, 函数极值点不是函数在此处导数为0的充分条件。另一方面,由定义域内x0 处导数为 0,不能得出x0 处为极值点的结论。也就是说,函数极值点不是函数在此处导数为0的必 要条件。图3-9(d)给出一个函数驻点非极值点的例子。但是,若定义域内x0 处导数为 0,且在x0 的左邻域与右邻域内导数变号,则x0 是极值点。 以上定义的函数 f 的导函数,称作 f 的一阶导函数。若函数 f 的导函数在同一区间 上仍然可导,则该区间函数 f 的导函数值与导函数的导数值之间也构成新的函数映射。 第3章函数与泛函分析71 图3-9导数与极值的关系 此时,称导函数的导函数为原函数f的二阶导函数。类似地,可定义函数f的任意高阶 导函数。数学上,将函数f的n阶导函数记作f(n)。为了一致性,有时也将原函数f写 成f(0)。将前文定义的一阶导函数f'写成f(1)。 有必要说明的是,除上文提到的导数在目标函数最优化中的作用之外,其还可用于评 定函数的凹凸性。如图3-10 所示,凸函数因变量变化率随自变量增大而增大,凹函数因 变量变化率随自变量增大而减小。因此,设函数y=f(x)在x0 处存在二阶导数,若f为 凸函数,则其二阶导函数f(2)在x0 处的取值大于0;若f为凹函数,则其二阶导函数f(2) 在x0 处的取值小于0。 图3-10 函数导数与凹凸性关系 有必要指出的是,关于优化问题以及导数在优化中的作用详见第8章。 注. 如上文所述,函数的一阶导数可用于最优化问题中求目标函数的极值,二阶导数可用 于判别函数的凹凸性。除此之外,其实函数的所有阶导数对于函数值的估计都具有指导 性作用。具体地,若函数f(x)在包含x0 的某闭区间[a→b]上具有任意阶导数,且在开 区间(a→b)上具有高一阶导数, a→b] n)( 则对闭区间[内任意一点 x 有 f(x)= f(x0)+ f'(x0)x-x0)+ f″(x0)x-x0)2+ …+ f(x0)(x-x0)n+ … 0! 1!(2!(n! 需要指出的是,式(-称作函数f(在x0 处的泰勒展开式。数学上, (3-13) 313) x) 将若干项的和 称作级数。显然,式(3-13)等号右端是一个无穷项级数。若函数f(x)的高阶导数求解困 3-13) 难,甚至根本不存在,抑或是对函数值的评估不要求过高精度,则式(可改写为: f(f(x0) f1((') xfx0)x2+ …+ f( n! x0)xn+Rnx) x0) ″(n) ( x) = 0! + !(-x0) + 2! (-x0)(-x0) ( (3-14) 72 人工智能的数学基础 其中,Rn(x)称作泰勒余项,是(x-x0)n 的高阶无穷小,即lim x-x0→0(Rn (x)/(x-x0)n )=0记 作o(x-x0)n 。不难发现,若定义函数f(x)为上式等号右侧前n 项的和,则泰勒余项 Rn(x)即为估计误差。可以证明,此误差与函数f(x)的n+1阶导数有关,即 Rn(x)= f(n+1)(ξ) (n +1)! (x -x0)n+1 (3-15) 其中,ξ 介于x0 与x 之间。 与一元函数类似,多元函数也有类似展开式。但形式更为复杂,感兴趣的读者可 在3.4.3~3.4.5节找到一些蛛丝马迹,更多内容可查阅相关资料。另外,有必要说明 的是,式(3-15)只是众多余项表达式中的一种。不同余项虽然表达式不同,但其相 互间存在联系。感兴趣的读者可查阅相关资料。 注. 3.4.2 求导法则 根据函数导数的定义不难证明,若函数u(x)与v(x)在x 点处均可导,则它们的和、 差、积、商在此处也可导,并且 (u(x)±v(x))'=u'(x)±v'(x) (u(x)v(x))'=u'(x)v(x)+u(x)v'(x) u(x) v(x) . è . . . ÷ ' =u'(x)v(x)-u(x)v'(x) v2(x) (3-16) 有必要说明的是,商的求导法需要确保分母不为0。 不难证明,给定任意函数x=f(y),若其在定义域子集区间Iy 上可导,导数f'(y) 均不为0,且存在以其值域区间Ix 为定义域的反函数y=f-1(x),则y=f(x)在区间Ix 上也可导,并且 (f-1(x))'= 1 f'(y) (3-17) 以上结论,称作反函数求导法则。 可以证明,若函数u=φ(x)在x 点处可导,而函数y=f(u)在u=φ(x)处可导,则 复合函数y=f(φ(x))在x 点可导,并且 (f(φ))'(x)=f'(u)φ'(x) (3-18) 以上结论可推广到任意有限个函数复合的情形。此时,复合函数的导数等于有限个 函数在对应点相对各自自变量导数的乘积。不难发现,复合函数的求导就像锁链一样一 环套一环,故称作函数求导的链式法则。由前文关于Sigmoid激活函数的定义不难发现, Sigmoid函数可视作以下函数的复合:r=f1(x)=-x,u=f2(r)=er,v=f3(u)=1+ u,y=f4(v)=1/v。由链式法则可得,fsig(x)=f1(f2(f3(f4(x))))且 f'sig(x)=f'4 (v)f'3 (u)f'2 (r)f'1 (x) = -1 v2 ·1·er·(-1) 第3章 函数与泛函分析 73 = e-x (1+e-x )2 = 1 1+e-x 1- 1 1+e-x . è . . . ÷ (3-19) 不难发现,f'sig(x)=fsig(x)(1-fsig(x)),其形状曲线如图3-11(a)所示。类似地, 可得tanh(x)函数的导函数等于1-tanh2(x),其形状曲线如图3-11(b)所示。显然,激 活函数Sigmoid与tanh的导函数均是其原函数的复合函数。这一性质也是Sigmoid与 tanh函数常用作非线性激活函数的重要原因之一。但是,由f'sig(x)导函数曲线不难发 现,其函数值均小于1,最大值为0.25。为提升神经网络逼近任意真实函数的能力,通常 多层网络的每层输出均由激活函数进行复合。由复合函数求导法则不难发现,作为复合 函数组成部分的激活函数,在求导过程中与一个乘数因子对应,小于1的导数值,使得复 合函数的导数变小。复合层数越多,层数变小越明显。复合层数达到一定程度时,导数甚 至接近消失。另一方面,考虑单实变量x 的线性函数y=wx+b。由函数求导法则,可得 dy/dw =x。由图3-8(a)可知,Sigmoid的函数值全大于0,是非0中心化的。也就是说, 若实变量x 为上层Sigmoid激活函数的输出,则当前层反向求导时dy/dw >0恒成立。 显然,若模型训练过程中,采用η(dy/dw )的步长更新权重因子w 的值,则权重值w 一直 增长,其中,正实数η 为学习率。以上两点使得Sigmoid激活函数给数据驱动的人工智能 模型的优化求解带来困难。由图3-8(b)可得,tanh的输出是0中心化的。也就是说,若 实变量x 为激活函数tanh的输出,则dy/dw 有正有负,更有利于权重值w 的更新。但 是由于0<tanh'(x)≤1,所以复合函数导数变小,甚至接近消失的问题仍未得到解决。 不难理解,由于Relu函数的取值范围为[0→+∞),所以复合函数导数变小,甚至接近消 失的问题得到很好的解决。但是,除因其原函数非0中心化的特点使得目标函数收敛速 度变慢,甚至不能收敛之外,如图3-11(c)所示,当x<0时,Relu函数的导数为0,对应神 经元将无法被激活。 图3-11 激活函数的导函数 3.4.3 偏导数与雅可比矩阵 上文定义函数的导数时,仅考虑自变量与因变量均为标量实数值的情况。也就是说, 可导函数是单变量函数。若一个函数是多元函数,例如,其自变量取值为描述待观测对象 特征的向量,其因变量随各个自变量分量的变化而变化的快慢程度,在数学上称作偏导 数。形式化地,给定任意多元函数y=f(x),其中,x=[x1,x2,…,xn ],设其在n 维定义 74人工智能的数学基础 域空间内x0=[x0,1,x0,2,…,x0,n]处沿i维方向的某δ邻域内有定义,则当自变量的第i维 分量x0,i有增量Δxi时,[x0,1,x0,2,…,x0,i+Δxi,…,x0,n]也在定义域内,其中,|Δxi|< δ。此时,函数y=f(x)的因变量取得增量为Δy=f([x0,1,x0,2,…,x0,i+Δxi,…, x0,n])-f(x0) 。若存在常数c,对于任意给定的不论多小的正实数ε,总存在正实数δ,使 得当|Δxi|<δ成立时,不等式|Δy/Δxi-c|<ε恒成立。也就是说,Δxi趋向0时,因变 量增量Δy与自变量增量比值Δxi的极限存在,则称函数f在x0=[x0,1,x0,2,…,x0,n] 处对分量xi可导,并称此时的极限值c为函数f在x0=[x0,1,x0,2,…,x0,n]处对xi的 偏导数,记作f'xi(x0) 、y'xi|x=x0 或.f(x0)/.xi、.y/.xi|x=x0。以上表述可形式化为 f'xi(x0)=lim Δxi→0 ΔyΔxi=lim Δxi→0 f([x0,1,x0,2,…,x0,i+Δxi,…,x0,n])-f(x0) Δxi(3-20) 不难证明,f在x0 处对xi的偏导数为函数曲线在x0 处的沿xi方向切线的斜率。 不难理解,若将自变量增量趋向0的方式分为由0的左侧趋向0与由0的右侧趋向0,对 应的增量比值极限仍然存在,则对应极限分别称作函数f在x0 处对xi的左偏导数与右 偏导数分别记作f'xi(x0-0) 、f'xi(x0+0 ) 。有必要指出的是,函数f在x0 处对xi可导 的充分条件是其左右导数都存在且相等。若函数y=f(x)在定义域内任意点处对xi都 可导,则称函数y=f(x)在区间上对xi可导。不难理解,此时对于任意元素x∈S,都存 在唯一的偏导数值f'x(x)与之对应。显然,定义域内任意元素x与偏导数值f'x(x)之 间构成一个新的函数映(i) 射,称为函数y=f(x)对xi 的偏导函数,记作f'x(x)、y(i) 'x或 ii x)/.、。 .f(xi .y/.xi 注. 有必要指出的是,若函数y=f(x)在定义域内x0 处,对xi 的左右导数f'( x00)与f(均存在,i'0),(b=ma' xi 'x0+0) 定义a=mn(('x0+0 ))、x(( 0),x(则集合[内任意元素定义为函数y=x) 的次 xi fxi x0-fxi fxi x0 f'x0+0)), a→b] f(在x0 处对xi 导数。(i) 多元函数所有次导数构成的向量,称作次梯度。更多关于梯度的内容详见 4.8节。 3.4节,更多关于次梯度的内容详见8. 以上定义的函数 f 的偏导函数,称作 f 的一阶偏导函数。若函数 f 的偏导函数在定 义域内对各自变量仍可导,则函数 f 的偏导函数值与偏导函数的偏导数值之间也构成新 的函数映射。此时,称偏导函数的偏导函数为原函数 f 的二阶偏导函数 x2 。函数 f 的 xi 偏导函数的xi 偏导函数,记作.(.f(x)/.xi)/.xi,可简记作.2f(x)/. i 或f″xi (x)。 类似地,可定义函数 f 的任意高阶偏导函数。需要说明的是,函数的高阶偏导函数不要 求求导变量为同一自变量。如函数 f 的xi 偏导函数的xj 偏导函数,记作.(.f(x)/ .xi)/.可简记作.x)/.或f()。有必要指出的是, ″x) f″ i x xj ,2f(xi.″ x 不难证明f(= xjx()。也就是说,同阶偏导函数与求导(i) 次序无关。 给定任意多元函数y=f(x1,xn 设其各自变量xi 均是另一变量 x 的函数, xj xxj xixj x2,…,), 其中,i∈{1,n}, f(x2,…,) 2,…,则多元函数y=x1,xn 是自变量 x 的复合函数。由导数