深度学习技术:梯度下降在监督学习中的应用

更新:11-09 现代故事 我要投稿 纠错 投诉

其实深度学习技术:梯度下降在监督学习中的应用的问题并不复杂,但是又很多的朋友都不太了解,因此呢,今天小编就来为大家分享深度学习技术:梯度下降在监督学习中的应用的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

作者:Zico Kolter(补充:Chuong Do)

时间:2016年6月

翻译:@MOLLY (mollyecla@gmail.com) @OWEN (owenj1989@126.com)

更正:@汉小阳(hanxiaoyang.ml@gmail.com) @龙心尘(johnnygong.ml@gmail.com)

来源:http://blog.csdn.net/han_xiaoyang/article/details/51629242

http://blog.csdn.net/longxinchen_ml/article/details/51629328

声明:保留所有权利。转载请联系作者并注明出处。

1基本概念和符号

线性代数可以简洁地表示和运算一组线性方程。例如,对于这个方程组:

有两个方程和两个变量,如果你学过高中代数,你无疑知道可以为x1 和x2 找到一组唯一的解(除非方程可以进一步简化,例如,如果第二个方程是只是方程的第一个多重形式,但显然上面的例子不能简化并且有唯一的解决方案)。在矩阵表达式中,我们可以简洁地写成:

在:

我们很快就会发现,以这种形式表达方程在分析线性方程时具有许多优点(包括显着节省空间)。

1.1 基本符号

下面是我们要使用的符号:

符号ARmn表示m行n列的矩阵,矩阵A中的所有元素都是实数。

符号x Rn 表示具有n 个元素的向量。通常,我们将n维向量视为n行1列的矩阵,即列向量。如果我们要表示一个行向量(1行n列的矩阵),我们通常写成xT(xT表示x的转置,其定义稍后解释)。

向量x 的第i 个元素表示为xi:

我们用aij(或Aij、Ai、j等)来表示第i行第j列的元素:

我们用aj或者A:j来表示A矩阵的第j列元素:

我们用aTi或Ai,来表示矩阵:的第i行元素

请注意,这些定义是松散的(例如,a1 和a1T 是前面定义中的两个不同的向量)。在正常使用中,符号的含义应该是显而易见的。

2 矩阵乘法

矩阵A Rmn 和B Rnp 的乘积是矩阵:

在:

请注意,矩阵A的列数应等于矩阵B的行数,这样才有矩阵乘积。有很多方法可以帮助我们理解矩阵乘法,这里我们将从一些例子开始。

2.1 向量的乘积

给定两个向量x, y Rn,则xTy 的值称为向量的内积或点积。它是一个实数,通过以下方式获得:

可以发现,内积实际上是矩阵乘法的一个特例。通常xTy=yTx。

对于向量x Rm, y Rn(其大小不必相同),xyT Rmn 称为向量的外积。外积是一个矩阵,其中每个元素可以表示为

得到,即。

我们举个例子来说明一下外积的使用。令1Rn表示一个所有元素都为1的n维向量,则矩阵ARmn的每一列由列向量xRm表示。使用外积,我们可以将A 简洁地表示为:

2.2 矩阵向量积

对于矩阵ARmn 和向量xRn,它们的乘积是向量yAxRm。理解矩阵向量乘法的方法有很多种,让我们一一看看。

将A写成行形式,我们可以将其表示为Ax:

也就是说y的第i行元素等于A的第i行与x的内积。

我们换个角度,将A用柱形表示,可以看到:

也就是说,y是A列的线性组合,该线性组合的系数就是x的元素。

上面我们看到的是列向量的右乘,那么行向量的左乘呢?对于A Rmn,x Rm,y Rn,该公式可以写为yTxTA。和以前一样,我们有两种表达yT 的方法,具体取决于我们是用行还是列来表达A。第一种情况是以列的形式表示A:

该公式表明,yT 第i 列中的元素等于向量x 与A 第i 列的内积。

我们还可以用行形式表示A 来说明向量矩阵乘积。

我们可以看到yT是A的行的线性组合,线性组合的系数是x的元素。

2.3 矩阵-矩阵积

基于以上知识,我们可以看到,有四种不同(但等效)的方式来理解前面定义的矩阵-矩阵乘法C=AB。

首先,我们可以将矩阵-矩阵乘法视为一组向量-向量乘积。根据它的概念,我们最好的理解是矩阵C的(i,j)元素是A的i行和B的j列的内积。符号表达式如下:

请注意,由于A R m n 、 B R n p 、 a i R n b j R n ,因此内积总是有意义的。对于矩阵乘法来说,最‘自然’的表示就是A的行、B的列。当然,我们也可以用A的列、B的行的形式来表示。表达方式就是AB累加的形式积累,这个有点复杂。其符号表达为:

换句话说,AB 的值等于A 的第i 列和B 的第i 行对于所有i 的外积之和。因此,对于aiRm和biRp,外积aibiT的维度为mp,与C的维度相同。这个方程可能有点难以理解,但是花点时间思考一下我相信你会明白的。

第二种思考方式是,我们也可以将向量-向量乘法视为一系列矩阵-向量乘积。具体来说,如果我们用列来表示B,我们可以将C 的每一列视为A 列和B 列的矩阵向量乘积。符号表达式为:

C 的第i 列可以用矩阵向量乘积(右侧向量)表示为ciAbi。这些矩阵向量乘积可以从前面两个角度来解释。最后类比一下,我们将其表达为A的行的形式,并将C的行视为A和C的行的矩阵向量乘积。符号表达式为。

在这里,我们用矩阵向量乘积(向量左乘)来表示C 的第i 列,

这只是一个矩阵乘法。如此详细的分析似乎没有必要,尤其是当我们知道了矩阵乘法的定义后,其实很容易计算出结果。然而,几乎所有线性代数内容都涉及某种类型的矩阵乘法,因此花一些时间对这些结果有一个直观的理解是有帮助的。

此外,了解高级矩阵乘法的一些基本属性也是有益的:

结合律为(AB)CA(BC)

分配率为A(B+C)=AB+AC

注意,矩阵乘法不存在交换律,即ABBA。 (例如,如果ARmn且BRnq,则当m和q不相等时,矩阵乘积BA可能根本不存在)

如果您不熟悉这些属性,最好花时间亲自演示它们。例如,要验证矩阵乘法的结合性定律,对于ARmn,BRnp,CRpq,注意ABRmp,并且(AB)CRmq。类似地,BCRnq,所以A(BC)Rmq。这样就可以得到相同维数的矩阵。为了证明矩阵乘法符合结合律,只需证明(AB)C的第(i,j)个元素是否等于A(BC)的第(i,j)个元素即可。我们可以直接用矩阵乘法的定义来证明。

在上述推导过程中,第一、后两个方程采用矩阵乘法的定义,第三、第五方程采用标量乘法的分布率,第四方程采用标量加法的交换律和组合。法律。这种通过将运算简化为标量属性来证明矩阵属性的方法会经常出现,您可以熟悉它们。

3 操作和属性

在本节中,我们将介绍几种矩阵/向量运算和属性。希望这篇内容可以帮助你复习之前的知识。这些注释仅作为上述问题的参考。

3.1 单位矩阵和对角矩阵

单位矩阵表示为I Rnn,是一个方阵,其对角线上全为1,所有其他元素均为0。现在:

具有ARmn矩阵的所有性质

请注意,单位矩阵的表示法是不明确的,因为它没有指定I 的维度。一般来说,I 的维度可以从上下文中推断出来,而这个维度使得矩阵乘法成为可能。例如,在上式中AI=A I 是一个n n 矩阵,而在A=IA 中,I 是一个m m 矩阵。

对角矩阵除对角元素外全部为0 元素。它可以写成D=diag(d1, d2, dn),其中:

显然,I=diag(1, 1, 1)。

3.2 转置

矩阵的转置是矩阵的行和列的“翻转”。对于矩阵A Rmn,其转置AT Rnm 是一个nm 矩阵,其元素为

我们实际上已经用转置来描述行向量的转置,因为列向量的转置自然也是行向量。

以下是转置的一些性质,证明起来并不困难:

(AT)T=A

(AB)T=BTAT

(A+B)T=AT+BT

3.3 对称矩阵

如果满足条件AAT,方阵ARnn 是对称的。如果满足A=-AT ,则A 是反对称的。容易证明,对于任意矩阵ARnn,A+AT是对称的,AAT是反对称的。因此,任意方阵ARnn都可以表示为对称矩阵和反对称矩阵之和,因为:

右边的第一个矩阵是对称的,第二个是反对称的。在实践中,对称矩阵非常常用,并且它们具有许多优良的性质,我们将在后面解释。我们通常将所有大小为n 的对称矩阵的集合表示为Sn; ASn 表示A 是nn 对称矩阵。

3.4 矩阵的迹

方阵ARnn 的迹,记为tr(A),省略括号即为trA,是矩阵: 对角线元素之和

正如CS229讲义中所述,矩阵的迹具有以下属性(这里提及纯粹是为了内容的完整性):

对于ARnn,trA=trAT。

对于A,BRnn,tr(A+B)=trA+trB。

对于ARnn,tR,tr(tA)=ttrA。

对于方阵A、B、C,trABC=trBCA=trCAB,即使相乘更多矩阵,该性质也不会改变。

前三个性质更容易证明。我们来看看第四个属性。假设ARmn,BRnm(所以ABRmm是方阵)。观察到BARnn 也是方阵,因此它的迹是有意义的。为了证明trAB=trBA,请注意:

这里,第一个和最后两个方程使用迹运算和矩阵乘法的定义。第四个方程是最重要的部分。它利用标量乘法的交换律来交换每个乘积中因子的顺序,还利用标量加法的交换律和结合律来重新排序求和过程。

3.5 常模

向量范数

是向量“长度”的非正式度量。例如,我们通常使用欧几里得范数或2 范数。

注意。

更正式地说,范数是满足以下四个属性的任何方程f: Rn R:

对于任何x Rn,f(x) 0(非负性)。

当且仅当x=0 时,f(x)=0(确定性)。

对于任何x Rn,t R,f(tx)=|t|f(x) (均匀性)。

对于任何x,yRn,f(x + y)f(x) +f(y)(三角不等式)。

范数的另一个例子是1 范数,

和 范数,

事实上,这三个范数都是P范数族的例子,其中包含实数参数p1。 P 范数定义为:

还可以定义矩阵A的范数,如Frobenius范数。

还存在许多其他规范,但它们超出了本次审查的范围。

3.6 线性独立性和秩

对于一组向量{x1, x2,xn} Rm,如果没有向量可以表示为其余向量的线性组合,则该组向量是(线性)独立的。相反,如果一个向量属于一个集合,并且该集合中的向量可以表示为其余向量的线性组合,则称其是向量(线性)相关的。也就是说,对于某些标量值1, n1 R,如果

我们说向量x1,xn 是线性相关的;否则,向量是线性无关的。例如,向量

线性相关,因为x3=2x1+x2。

矩阵ARmn 的列秩是所有线性独立列的最大子集的大小。由于该术语的一些误用,列秩通常指矩阵A 的线性独立列的数量。类似地,A 的行形成线性独立的集合,行秩是其行数的最大值。

对于任意矩阵ARmn,其列秩和行秩相等(尽管我们不打算证明这一点),因此我们将这两个相等的秩称为A的秩。秩的一些基本性质如下:

对于A Rmn,rank(A) min(m, n)。如果rank(A)=min(m, n),则称A具有满秩。

对于ARmn,rank(A)=rank(AT)。

对于ARmn,BRnp,rank(AB)min(rank(A),rank(B))。

对于A,BRmn,rank(A+B)rank(A)+rank(B)。

3.7 逆

矩阵ARnn 的逆矩阵,写作A1,是一个矩阵并且是唯一的。

A1AIAA1。

请注意,并非所有矩阵都有逆矩阵。例如,非方阵没有逆矩阵。然而,即使对于某些方阵,仍然可能没有逆矩阵。如果A1 存在,我们说矩阵A 是可逆的或非奇异的。如果它不存在,我们说矩阵A 是不可逆的或奇异的。

如果方阵A 有逆矩阵A1,则它一定是满秩的。我们很快就会发现,除了满秩之外,矩阵可逆还需要很多充要条件。

满足以下性质的矩阵是可逆的;以下所有陈述都假设A, B Rnn 是非奇异的:

(A1)1=A

(AB)1=B1A1

(A1)T=(AT)1。因此这样的矩阵常写为AT

给出一个逆矩阵的应用例子。对于线性方程组Ax=b,其中A Rn n,且x,b Rn。如果A 是非奇异的(即可逆),则xA1b (如果A Rmn 不是方阵怎么办?这是真的吗?)

3.8 正交矩阵

如果xTy=0,则两个向量x, y Rn 正交。对于向量x Rn,如果

然后x被归一化。对于方阵URnn,如果所有列都是正交的并且相互归一化(列称为正交),则方阵是正交的(注意,在讨论向量或矩阵时,正交有不同的含义) )。

根据正交性和归一化的定义,我们可以得到:

乌图伊乌特

换句话说,正交矩阵的逆就是它的转置。注意,如果U不是正方形,即URmn,n m,但其列仍然正交,则UTUI,但UUTI。我们一般只用正交这个术语来描述U是方阵的情况。

正交矩阵的另一个很好的特性是,对向量和正交矩阵的运算不会改变它们的欧几里德范数,即对于任何xRn,正交URnn:

3.9 矩阵的取值范围和零空间

向量集合{x1, x2,xn} 的范围是{x1, x2,xn} 的线性组合的所有向量的集合。现在

可见{x1,xn}是n个线性无关向量的集合,其中xiRn,则({x1,xn})=Rn的取值范围。换句话说,任何向量v Rn 都可以写成x1 到xn 的线性组合。向量y Rm 在取值范围{x1,xn}(假设xi Rm)上的投影是向量v span({x1,xn}),然后通过比较其欧氏范数

、v 和y 无限接近。该投影表示为Proj(Y; {x1,n}),可以定义为,

ARmn(有时也称为列空间)的范围,表示为R(A),就是A的范围。换句话说,

R(A)={vRm:vAx, xRn}。

我们假设A是满秩的,n m,向量y Rm在A范围上的投影可以表示为

最后一个方程应该看起来非常熟悉,因为它与我们用于类中参数的最小二乘估计公式几乎相同(并且我们可以快速再次推导)。看一下投影的定义,你会发现这其实和我们解决最小二乘问题时最小化的目的是一样的(只不过范数是平方,不影响最优点),所以这些问题自然是相关的。当A 仅包含单列aRm 时,存在直线上向量投影的特殊情况。

矩阵ARmn的零空间,记为N(A),是与A相乘后得到的所有等于0的向量的集合,即

N(A)={xRn:Ax=0}。

请注意,向量R(A) 的大小为m,N(A) 的大小为n,因此R(AT) 和N(A) 的向量都在Rn 中。其实我们还可以讨论更多。

换句话说,R(AT) 和N(A) 是不相交的子集,它们一起跨越Rn 的整个空间。这种类型的集合称为直接补集,写作R(AT)=N(A)。

3.10 行列式

方阵ARnn 的行列式是映射det: RnnR,记为|A|或det A(与trace操作相同,我们通常省略括号)。从代数上来说,A的行列式公式可以明确地写出来,但不幸的是,它的含义不够直观。我们首先给出行列式的几何解释,然后探讨它的一些特殊的代数性质。

对于矩阵:

考虑由A中所有行向量a1,a2,an所有可能的线性组合组成的点集SRn,其中线性组合的参数在0和1之间;换句话说,由于这些线性组合的参数a1,a2,…,anRn满足0ai1,i=1,…,n,并且集合S是子空间的约束( {a1, 一个})。公式表示如下:

A 行列式的绝对值是集合S 的“体积”的度量。

例如,考虑一个22 矩阵,

这里,矩阵的行:

这些行对应的集合S如图1所示。对于二维矩阵,S一般是平行四边形。在我们的示例中,A 的行列式的值为|A|=-7。 (这可以使用本节后面给出的公式进行计算)。所以平行四边形的面积是7(自己证明一下!)

在三维空间中,集合S对应于一个平行六面体(一个三维斜面盒子,例如每条边都是平行四边形)。这个33矩阵的行列式的绝对值就是这个平行六面体的三维体积。在更高维度中,集合S 是一个n 维超扁平体。

图1:公式(1)给出了22矩阵A的行列式的说明。其中,a1和a2是对应于A中的行的向量,集合S对应于阴影区域(即平行四边形) 。行列式的绝对值|det A|=7,就是平行四边形的面积

在代数上,行列式满足以下三个性质(其他性质也遵循它,包括行列式的通式)

1、单位矩阵的行列式为1,|I|=1。(几何上,单位超立方体的体积为1)。

2. 对于一个矩阵ARnn,如果A 中的一行乘以一个标量tR,则新矩阵的行列式值为t|A|。

(几何上,将集合S的一侧乘以因子t将导致体积膨胀t倍)

3、我们交换行列式A的任意两行aTi和aTj,新矩阵的行列式值为-|A|,例如:

要判断是否存在满足上述三个条件的函数并不那么容易。然而事实上,这个功能是存在的并且是唯一的。 (此处未证明)

这三个属性的推论包括:

对于A Rnn,|A|=|AT|。

对于A,B Rnn, |AB|=|A||B|。

对于A Rnn,|A|=0 当且仅当A 是奇异的(即不可逆)。 (如果A是奇异的,那么它一定不是秩的,并且它的列是线性相关的。此时,集合S对应于n维空间中的一个盘子,因此体积为零。)

对于A Rnn,并且A 是非奇异的,|A-1|=1/|A|。

在给出行列式的一般定义之前,我们先定义代数余因子: 对于A Rnn,矩阵Ai,jR(n-1)(n-1) 是A 删除行i 和j 列结果。

行列式的一般(递归)定义:

其中,第一项的行列式AR11,|A|=a11。如果我们将公式推广到A Rnn,就会有n! (n 的阶乘)不同的项。因此,我们很难明确地写出3阶及以上矩阵行列式的计算方程。

不过3阶以下矩阵的行列式是很常用的,大家最好记住。

矩阵A Rnn 的经典伴随矩阵(常称为伴随矩阵),记为adj(A),定义为:

(注意A的系数的正负变化。)可以证明,对于任意非奇异矩阵ARnn,有

该公式是求矩阵逆的一个很好的显式公式。每个人都应该记住,这是计算矩阵逆的更有效的方法。

3.11 二次型和半正定矩阵

对于方阵ARnn 和向量xRn,标量xTAx 称为二次形式。明确地写出来,我们可以看到:

注意:

第一个方程是通过将标量转置等于其自身而获得的,第二个方程是通过使两个相等量的平均值相等而获得的。由此,我们可以推断只有对称分量影响二次形式。我们通常习惯上假设以二次形式出现的矩阵是对称矩阵。

我们给出以下定义:

• 对于任何非零向量xRn,如果xTAx0,则该对称矩阵ASn 是正定的(PD)。它通常表示为A0(或简称为A0),所有正定矩阵的集合表示为Sn++ 。

• 对于任何非零向量xRn,如果xTAx0,则该对称矩阵ASn 是正半定(PSD)。表示为A0(或简称为A0),所有正半定矩阵的集合表示为Sn+。

• 类似地,对于任何非零向量xRn,如果xTAx

但这意味着对于某些非零向量x,xTAx=0,因此A既不能是正定的也不能是负定的。因此,如果A 是正定或负定的,则它一定是满秩的。

最后,需要注意一个常见的正定矩阵:给定一个矩阵A Rmn(不一定是对称的,甚至是方阵),矩阵G=ATA(有时也称为Gram 矩阵)一定是半正的。另外,如果mn,(为了方便,我们假设A是满秩的),此时G=ATA是正定的。

3.12 特征值和特征向量

对于方阵A Rnn,如果:

我们说C 是A 的特征值,xCn 是对应的特征向量。

直观上,上面的公式实际上是说A乘以一个向量x。生成的新向量指向与x 相同的方向,但必须乘以标量。请注意,对于任何特征向量xCn 和标量tC,A(cx)=cAx=cx=(cx),因此cx 也是特征向量。因此,我们要说的是对应的特征向量。我们通常假设特征向量被归一化为长度1。(此时仍然存在歧义,因为x和-x都可以是特征向量,但我们无能为力)。

如果

我们可以用另一种方式写上面的方程来证明(,x)是A的特征值-特征向量对。

但当且仅当存在非空零空间,即(IA)非奇异时,即

当时,(IA)x=0 对x 有非零解。

现在,我们可以使用之前的行列式定义将此表达式展开为 的(非常大的)多项式,其中 的最高阶为n。我们可以求解多项式的n个根(这可能非常复杂),得到n个特征值1,…,n。要求特征值对应的特征向量,我们可以简单地求线性方程(iI A)x=0的解。需要注意的是,在实际操作中,这种方法并不是用来计算特征值和特征向量的。 (行列式的完整展开式有n! 项)。这只是一个数学论证。

以下是特征值和特征向量的性质(假设ARnn,特征值1,n对应的特征向量为x1,xn) :

矩阵A的迹等于特征值之和

A 的行列式等于特征值的乘积

A的秩等于A的非零特征值的数量。

若A为非奇异矩阵,则1/i为矩阵A-1对应特征向量xi的特征值。即A1xi=(1/i)xi。 (证明是对于特征向量方程,Axi=ixi,两边同时乘以A-1)

对角矩阵D=diag(d1,dn)的特征值都是对角元素。

我们可以将所有特征向量方程组合为

其中的列是:

如果A的特征向量是线性无关的,那么矩阵X是可逆的,所以A=XX-1。可以写成这种形式的矩阵A 被称为可对角化的。

3.13 对称矩阵的特征值和特征向量

当我们检查对称矩阵ASn 的特征值和特征向量时,有两个特殊性质需要注意。首先可以证明A的所有特征值都是实数。其次,A 的所有特征向量都是正交的。也就是说,上面定义的时刻

阵X是正交矩阵。(我们把此时的特征向量矩阵记作U)。 接下来,我们可以将A表示为A=U∧UT,由上文知,一个正交矩阵的逆等于它的转置。 由此,我们可以得到所有完全使用特征值来定义的矩阵。假设A∈Sn= U∧UT。有: 其中,y=UTx(由于U满秩,任意y∈Rn可以表示为此形式。)由于yi2永远为正,这个表达式完全依赖于λi。如果所有的λi>0,那么矩阵正定;如果所有的λi≥0,矩阵半正定。同样的,如果所有的λi<0或λi≤0,矩阵A分别负定和半负定。最后,如果A既有正的特征值又有负的特征值,它是不定矩阵。 特征值和特征向量的一个常见的应用是找出矩阵的某个函数的最大值。例如,对于矩阵A∈Sn,考虑这个求最大值问题: 也就是说,我们希望找到使二次型最大的单位向量。假设特征值大小为λ1≥ λ2≥ . . . ≥ λn,这个最优化问题的最优解x为x1,对应的特征值为λ1.此时,二次型的最大值是λ1。相似的,最小值问题的最优解 是xn,对应的特征值是λn,那么最小值是λn。可以通过将A表示为特征向量-特征值的形式,然后使用正定矩阵的性质证明。然而,在下一节我们可以使用矩阵微积分直接证明它。 4矩阵微积分 之前章节的内容,在一般线性代数的课程中都会讲到。而有些常用的内容是没有的,这就是把微积分推广到向量。事实上,我们应用的微积分都会比较繁琐,各种符号总是让问题变得更复杂。在本节中,将给出一些矩阵微积分的基本定义,并举例说明。 4.1梯度 设ƒ:Rm×n→R是大小为m×n的矩阵A的函数,且返回值为实数。ƒ的梯度(关于A∈Rm×n)是一个偏导矩阵,定义如下: 即,一个m×n矩阵,其中 注意∇Af(A)和A有相同的大小。所以,特别的,当A是一个向量x∈Rn时, 需要特别记住的是,函数的梯度只在函数值为实数的时候有定义。也就是说,函数一定要返回一个标量。例如,我们就不能对Ax,A∈Rn×n中的x求梯度,因为它是一个向量。 它遵循和偏导相同的性质: 原则上,梯度是多变量函数偏导的延伸。然而,实际应用梯度时,会因为数学符号而变得棘手。例如,假设A∈Rm×n是一个具有固定系数的矩阵,b∈Rm是一个固定系数的向量。令ƒ :Rm→R为由ƒ(z)=zTz,因此∇zf(z) =2z。现在,考虑表达式; ∇f(Ax) 上式该如何理解?至少有两种解释: 解释一,因∇f(Ax). = 2z,所以可将∇f(Ax).理解为点Ax处的梯度,那么:     ∇f(Ax) = 2(Ax) = 2Ax ∈ Rm 解释二,可以认为f(Ax)是关于变量x的函数。正式的表述为,令g(x) = f(Ax)。那么在此种解释下有: ∇f(Ax) = ∇xg(x) ∈ Rn 大家可以发现,这两种解释确实不同。解释一得出的结果是m维向量,而解释二得出n维向量!怎么办? 这里的关键是确定对那个变量求微分。在第一种情况下,是让函数f对参数z求微分,然后代入参数Ax。第二种情况,是让复合函数g(x)= F(AX)与直接对x求微分。第一种情况记为∇zf(AX),第二种情况记为∇xf(AX)。你会在作业中发现,理清数学符号是非常重要的。 4.2Hessian矩阵 假设 ƒ :Rn→R    是n维向量A的的函数,并返回一个实数。那么x的Hessian矩阵是偏导数的n×n矩阵,写作∇2xf(x),简记为H。 换句话说,∇2xf(x) ∈ Rn×n ,其中: 需要注意的是Hessian矩阵始终是对称的,即: 和梯度类似,Hessian矩阵只在f(x)为实数时有定义。 可以很自然联想到,偏导类似于函数的一阶导数,而Hessian类似函数的的二阶导数(我们使用的符号,也表明了这种联系)。通常这种直觉是正确的,但有些注意事项需要牢记。 首先,只有一个变量的实值函数,f : R→R,它的基本定义是二阶导数是一阶导数的导数,即: 然而,对于关于向量的函数,该函数的梯度是一个向量,我们不能取向量的梯度,即; 并且这个表达式没有定义。因此,不能说Hessian矩阵是梯度的梯度。然而,在下面的意义上比较靠谱:如果我们取第i项(∇xf(X))i =∂F(X)/∂xi,并取对x的梯度,我们得到: 这是Hessian矩阵的第i列(或行)。 因此: 如果此处稍粗略一点,可以得出 ,只要将其真实的含义理解为对 (∇xf(x))的每一项求梯度,而不是对向量求梯度即可。 最后注意,虽然可求出对矩阵A∈Rn的梯度,但在本课程中,将只考虑向量x∈Rn的Hessian矩阵。这仅仅是为了方便起见(而事实上,没有计算需要求矩阵的Hessian矩阵),因为矩阵的Hessian矩阵必须表示为所有的偏导数∂2f(A)/(∂Aij∂Akℓ),而要表示为矩阵却相当麻烦。 4.3    二次函数或线性函数的梯度和Hessian矩阵 现在,让我们确定一些简单函数的梯度和Hessian矩阵。应当指出的是,这里给出的所有的梯度都是在CS229讲义给出的特殊情况。 当x∈Rn,对于已知向量b∈Rn,令f(X)= bT x。 得: 因此 由此不难看出,∇xbTx= b。这是与单变量微积分类似的情况,其中,∂/(∂x)aX =a。 现在考虑二次函数f(x)= xTAx ,A∈Sn。注意到: 求其偏导数,分别考虑包含Xk和xk2因子的项: 其中最后一个等式是因为A是对称的(完全可以假设,因为它是二次型)。注意,∇xf(x)的第k项只是A的第k行和x的内积。因此,∇xxTAx=2AX。同样,与单变量微积分类似,即∂/(∂x)    ax2= 2aX。 最后,再看二次函数f(X)= xTAx的Hessian矩阵(显然,线性函数bTx的Hessian矩阵为零)。 在这种情况下, 因此,应当清楚的是∇x2xTAx=2A,这完全是可证明的(并再次类似于单变量的情况∂2/(∂x2) ax2= 2a)。 总之: ∇xbTx = b ∇xxTAx = 2Ax ( A 为对称矩阵) ∇x2xTAx = 2A ( A 为对称矩阵) 4.4最小二乘法 这里将用最后一节得到的公式推导最小二乘方程。假设对矩阵A∈Rm×n(为简单起见,假定A是满秩)和向量b∈Rm,使得b错误!未找到引用源。R(A)。在这种情况下,无法找到一个向量x∈Rn,使得Ax = b。退一步,我们找一个向量x∈Rn,使得Ax是尽可能接近b,即欧氏范数||Ax - b||22。 且知||x||22=xTx,有: 取对已有x的梯度,并使用上一节推出的性质 让最后一个表达式等于零,并求解X满足的标准方程 这正和我们课上推导的一样。 4.5行列式的梯度 现在考虑一种情况,求函数对矩阵的梯度,即对A∈Rn×n,求∇A| A |。回顾之前关于行列式的讨论: 因此: 根据伴随矩阵的性质,可立即得出: 现在,考虑函数f : Sn++→ R, f(A) = log |A|,需要注意的是,一定要限制f的域是正定矩阵,因为这将确保| A | >0,这样log| A |是一个实数。在这种情况下,我们可以使用链式法则(很简单,只是单变量微积分的普通链式法则)得出: 那么,很显然: 此处,在最后一个表达式中去掉了转置符,因为A是对称的。注意当∂/(∂x) log x = 1/x时,和单值情况相似。 4.6最优化特征值 最后,通过直接分析特征值/特征向量,用矩阵微积分来解决一个优化问题。接下来,考虑等式约束优化问题: 对于一个对称矩阵A ∈ Sn,解决等式约束优化问题的标准方法是构造拉格朗日(一个包括等式约束的目标函数)。这种情况下的拉格朗日可由下式给出: 其中λ被称为与等式约束对应的拉格朗日乘子。对这问题可以找到一个x*的最佳点,让拉格朗日的梯度在x*上为零(这不是唯一的条件,但它是必需的)。 即:

用户评论

々爱被冰凝固ゝ

梯度下降听起来很厉害的样子!感觉机器学习就是不断下降呀。

    有11位网友表示赞同!

我绝版了i

我一直对深度学习感兴趣,这个梯度下降算法好像在里面起到关键作用吧。

    有16位网友表示赞同!

╭摇划花蜜的午后

看到标题想到了最近学的关于优化问题的知识。

    有13位网友表示赞同!

伤离别

想问问这种“监督学习”和无监督学习有什么区别呢?

    有18位网友表示赞同!

关于道别

这篇文章讲的是应用方面吗?我更想知道梯度下降的具体原理。

    有15位网友表示赞同!

玻璃渣子

现在很多人工智能都是基于梯度下降算法的吧?感觉它真的很强大。

    有20位网友表示赞同!

无望的后半生

以前也听说过梯度下降这个名词,但不太了解它的作用具体是什么。

    有10位网友表示赞同!

墨城烟柳

学习机器学习确实需要掌握很多核心算法,梯度下降估计就是其中很重要的一类。

    有12位网友表示赞同!

等量代换

我有点好奇在实际应用中,梯度下降是如何使用的呢?

    有10位网友表示赞同!

半梦半醒i

机器学习真是太神奇了,用梯度下降就能训练出智能模型。

    有20位网友表示赞同!

全网暗恋者

想看看这篇文章举什么例子来解释梯度下降的应用场景。

    有16位网友表示赞同!

可儿

感觉这种技术应用范围很广啊,人工智能的发展离不开它吧!

    有16位网友表示赞同!

回忆未来

期待看到文章中对梯度下降算法详细的阐述和讲解。

    有15位网友表示赞同!

裸睡の鱼

有没有相关的学习资源可以推荐,我想要更深入地了解梯度下降?

    有10位网友表示赞同!

青墨断笺み

这篇文章会不会涉及到梯度下降的优缺点、局限性等方面的分析?

    有18位网友表示赞同!

淡写薰衣草的香

对于新手来说,如何理解和记忆梯度下降算法呢?

    有7位网友表示赞同!

景忧丶枫涩帘淞幕雨

在实际开发过程中,有哪些技巧可以提高梯度下降的效率?

    有19位网友表示赞同!

╯念抹浅笑

学习机器学习真是个挑战,需要不断积累知识和经验。

    有9位网友表示赞同!

没过试用期的爱~

希望这篇文章能够帮我加深对梯度下降算法的理解。

    有11位网友表示赞同!

【深度学习技术:梯度下降在监督学习中的应用】相关文章:

1.动物故事精选:寓教于乐的儿童故事宝库

2.《寓教于乐:精选动物故事助力儿童成长》

3.探索动物旅行的奇幻冒险:专为儿童打造的童话故事

4.《趣味动物刷牙小故事》

5.探索坚韧之旅:小蜗牛的勇敢冒险

6.传统风味烤小猪,美食探索之旅

7.探索奇幻故事:大熊的精彩篇章

8.狮子与猫咪的奇妙邂逅:一场跨界的友谊故事

9.揭秘情感的力量:如何影响我们的生活与决策

10.跨越两岸:探索彼此的独特世界

上一篇:《股市剖析:斩风策略初探(一)》 下一篇:2024外卖优惠大揭秘:优惠券领取攻略及入口一网打尽