00:02
2.3.8神经网络深度学习,一类被称为神经网络的算法,最近以深度学习的名字再度流行。虽然深度学习在许多机器学习应用中都有巨大的潜力,但深度学习算法往往经过精确调整,只适用于特定的使用场景。这里只讨论一些相对简单的方法及用于分类和回归的多层感知机MLP。它可以作为研究更复杂的深度学习方法的起点。MLP也被称为普通前馈神经网络,有时也简称为神经网络。神经网络模型MLP可以被视为广义的线性模型,执行多层处理后得到结论。还记得线性回归的预测公式为Y等于W0乘X0加W1乘X1一直加到WP乘上XP加B。简单来说,Y hat是输入特征X0到XP的加权,求和权重为学到的系数W0和W0到WP,我们可以将这个公式可视化。
01:25
图中。左边的每个节点代表一个输入特征连线代表学到的系数,右边的节点代表输出,是输入的加全求和。在MLP中多次重复这个计算加全求和的过程,首先计算代表中间过程的引单元unit,然后再计算这些引单元的加全求和,并得到最终结果。
02:13
这个模型需要学习更多的系数,也叫做权重。在每个输入与每个引单元引单元组成的隐层之间有一个系数,在每个引单元与输出之间也有一个系数。从数学的角度讲,计算一系列加全求和余值,计算一个加求和是完全一样的。因此,为了让这个模型真正比线性模型更为强大,我们还需要一个技巧,在计算完每个引单元的加强求和之后,对结果在应用一个非线性函数,通常是校正非线性发音now liity,也叫校正线性单元或。Re lulu或正切双曲线paintings。TH也只有TH。然后将这个函数的结果用于加全求和计算得到输出Y。
03:04
我们先把这两个函数做一下可视化。
04:38
R1LULU阶段小于零的值,而TH在输入值较小时接近负一,在输入值较大时接近正一。有了这两种非线性函数,神经网络可以学习比线性模型复杂得多的函数。
05:03
我们首先来看一下。派点maximum这个函数。在讲这个函数之前,首先来看一下派广播。每一个通用函数执行。对输入数组的元素及核心操作来返回输出数组,虽然多个输入数组对应的参数中有一些可得对应一个数,但是为了执行函数,这些数还是可以变成数组。标准广播规则被采用,目的是为了确保不同形状的输入数组也能进行运算。广播的四条规则一。让所有输入数组都向其中形状最长的数组看齐,形状中不足的部分都通过前面加一服气二。输出数组的形状是输入数组的形状的各个维度上的最大值。三如果输入数组的某个维度和输出数组对应维度长度相同或者长度为一,这个数组能够用来计算,否则出错。四当输入数组的某个维度的长度为一时,沿着此维度运算时,都用此维度上的第一组值。
06:11
是力。我假设。有这四个数组。或者说三个数组合一个数。把他们加起来。是什么东西?就是我们要求的假设有上数,三个数组合一个数,其中a.ship是五一,b.C是一六,c.C是六,D点是是空元组汇总成一张表。按照第一条规则。让所有输入数组都向其中形状最长的数组看齐,形状中不足的部分通过前面加一补齐。C、形状不足,前面加一。六往后挪一位。D直接补上两个一。
07:03
对应数组的变化。按照第二条规则。输出数组的形状是输入数组的形状各个维度上的最大值。5111最大值是51661最大值是六。根据第三条规则做检查。如果输入数组的某个维度和输出数组的对应维度长度相同,或者其长度为一,这个数组能够用来计算,否则出错。五一不是五,就是一,没有问题,1661不是六,就是一,没有问题。按照第四条规则。当输入数组的某个维度的长度为一时,沿着此维度运算时,都用此维度上的第一组值。
08:04
这个时候已经把ABCD4个数组。变成了四个同行数组。同行数组相加的时候,把对应位置相加起来就行了。验证一下第一个位置。五加五加八加八等于26没有毛病。其余位置大家自己去验算。结果肯定是对的。朗拍点maximum。这个函数。它表示的意思是求数组元素的元素集的最大值,比较两个数组,并返回一个包含元素集的最大值的新数组。如果其中一个元素是,那返回这个元素参数XX啊,两个类似数组可以是零位数组,一个数的对象只有带比较元素的两个数组。如果两个数组形状不同,它们必须可以广播到同样的形状,也就是输出数组的形状立。
09:08
重点来看一下这样一个例子。X1234。X2152。输出数组二和一的最大值是二,写上三和五的最大值是五写,四和二的最大值是四写。Out。数组实例nu,其中元素是数组实力的元组,其中元素是nu的元组。四选一可选参数存储结果的位置,如果提供,必须具有输出数组的形状,如果没有提供,或者为nu返回一个新数组,如果是一个元组,该元组只能是一个单元组,其中元素不是数组实力就是nu alt等于数组实例等价于alt alt等于数组实例单元组等价于alt等于数组实例,Al等于nu,单元组等价于,Al等于nu。如果alt等于数组实例单元组或al次等于数组实例,返回值是该数组的引用。
10:01
实力。Well类似数组的对象可选参数,这种情况通过输入数组广播,当对应位置的where条件为初的时候,输出数组的对应位置会被设置成函数对应的函数值,否则输出数组的对应位置会保留原始值。注意,如果通过al等于now的方式创建一个未初始化的数组,Out。并且当对应位置的我要条件为false,输出数组的对应位置会保留未初始化的值。是的。光看例子可能有点迷糊。那就来看这张表格。执行函数之前的A。000没有毛病,X1234X2152V001。执行函数之后的A和函数返回值。
11:03
是一样的。我要等于零,也就条件为false,否则走到否则这里。输出数的对应位置会保留原始值。原始值是零。保留下来。这里同理,原始值是零,保留下来。对应位置的我要条件为处输出数组的对应位置会被设置成对应的函数值。1 doing0doing fourth,没得解释。四跟二的最大值是四。Cast no EQ IV safe same kind una5选一可选参数、数据类型、转换方式,具体解释看一下表。Order。
12:01
A cfk4选一默认K指定了计算迭代顺序,输出数组的内存布局C对应行优先,C语言风格F对应列优先,For取语原风格A对应自动选择。如果两个输入数组都是列优先格式,这个时候输出数组也是优先格式,否则输出数组,否则输出数组。是行优先格式。K对应元素在内存中的顺序。D type输出数组的元素类型,其对应的类型应该确保精度不丢失。OK。布尔类型默认处如果设置成false,将会返回一个严格意义上的数组对象,而不是数组对象的子类。Sign数据类型数据类型元素,或者一个表示输入输出数组元素类型的特殊签名字符串。这个参数允许用户声明用于计算的实际数据类型,如果必要的话,会进行强制类型转换,除非sign nature等于now,否则不考虑输入数组的类型。该参数只能指定数据类型,不能指定数据类型在内存中的存储方式。
13:13
Ex To Bj,一个长度为三的列表,第一个元素是一个正整数,表示缓冲区大小,第二个元素是一个整数,表示错误模式,第三个元素是一个函数指针,表示错误回调函数。通常情况下,这三个函数放在一个字典中,在这里传入可以避免查找字典。关于派点maximum这么一个函数。就介绍到这里。回到书上。对于这样一个小型神经网络。计算回归问题的y hat完整公式在书上82页。假设使用TH非线性,其中W是输入X与隐层H之间的权重,V是隐层H与输出Y之间的权重。权重W和V要从数据中学习得到,X是输入特征,YH是计算得到的,输出X是计算的中间结果。需要用户设置的一个重要参数是隐存中节点个数,对于非常小或非常简单的数据集,这个值可以小到十。
14:25
对于非常复杂的数据,这个值可以大到1万,也可以添加多个隐子。这些由许多计算层组成的大型神经网络,正是术语深度学习的灵感来源。在讲接下来的内容之前。
15:03
首先讲一下神经网络的基本原理。神经网络的基本原理,看一下这三个视频,绰绰有余。我这里仅做一些补充。为什么计算一系列加权求和余值,计算一个加权求和是完全相同的?我以书上81页图二-四五为例进行证明。也就是以这幅图为例进行证明。0XI到HJ的权重为WJ偏移为bii到Y的权重为VI,偏移为B,此时有H0等于W00乘X0加W10乘X1加W20乘X2加W30乘X3加B0 h1等于W01乘X0加W11乘X1加W21乘X2,再W31乘三再加B1。
16:06
H2等于W02乘X0加W12乘X1加W22乘X2再W32乘X3再加B2。Y等于H0乘V0加H1乘V1加H2乘V2再加B,相去H0 h1和H2,可得Y等于W00乘X0加W10乘X1加W20乘X2加W30乘X3加B0乘B0再加上W01乘X0加W11乘X1加W21乘X2加W31乘X3加be的整体乘V加。W02乘X0加W12乘X1加W22乘X2,再W32乘X3再加B2乘的整体乘上B2再加B,整理得Y等于X0乘上W00乘V0加W0乘V1加W2乘V2的整体再加上X1乘上。W10乘V0加W11乘V1加W12乘V2再加上X2乘上二零乘V0加W21乘V1加二乘V2。
17:05
整体再加上X3乘上W30乘V0加W31乘V1加W32乘V2的整体,再加B0 V0B1加B1V1加B2V2再加B。0W0等乘V0加W1乘V1加WL2乘V2等于UIB0V0B1V1B0V0加B1V1加B2V2再加B等于C,可得Y等于U0X0加U1X1加U2X2加U33再加C。所以计算一系列加全球和余值,计算一个加全球和是完全相同的。参数,Sva LB fgss gd adam3选一,默认Adam全中优化算法。Sova等于LBFGS对应算法名称是限制内存占用的BFGS算法,拟牛顿法的一种,Va等SGD对应算法,随机梯度下降,S等于Adam算法名称,Adam算法。
18:05
限制内存占用的BFGS算法,或者说BFGS算法,之前讲过,主要来看一下这两个算法,随机梯度下降和I算法。随机梯度下降与标准梯度下降法精确计算梯度不同,随机梯度下降法在计算梯度时加入了随机因素,于是即便陷入局部绩效点,它计算出的梯度仍可能不为零,这样就有机会跳出局部极小,继续搜索随机梯度下降,通过损失函数的梯度更新参数。W等于W减去一塔乘上阿尔法,他RW除以他W,再加上他六除以他W的整体。一塔是控制参数搜索空间不长的学习率路是神经网络的损失函数。Adam算法。类似于随机梯度下降算法步骤。确定参数阿尔法贝塔一贝塔2CE,确定目标函数F西塔。
19:02
第一步。第二步。初始化参数,向量C塔零一阶距向量M0等于零二阶距向量V0等于零,时间不T等于零第三步,当西塔没有收敛时,重复四到十步。4T等于T加一五。获取第梯步的梯度,六更新一阶矩估计,七更新二阶矩估计,八计算偏差校正的一阶矩估计。九计算偏差校正的二阶距估计十更新参数。He don't layphs。序列默认。100单元组第个元素表示第个隐层有多少个神经元,也就是节点activityiv identity logistic can的R路四选一默认路隐层的激活函数activityiv等于identity。函数表达是FX等于X activation等于logistic。函数名称对数第六函数表达是FX等于一加E的负X分之一。
20:05
等于tan h,函数名称,双取针切函数表达式,FX等于tan X X。IV等于函数名称校正非线性函数表达是FX等于0X中的最大值max,零逗号X。这里就告诉了你,FX等于tan h X,那么它的表达式是怎么样的呢?以及这个THX表示什么东西呢?首先,我们根据书上82页图二-46以及对应的描述可以看出。没有书的话看一下这个图。T进了HX的一阶导数大于零,因为单调递增,T进了H0等于零,T进了H0的导等于一,T进了H负X等于负的tan X X奇函数。
21:02
X趋于负无穷,T0,米塔THX等于负一。X趋正无穷。乘减了HX厘米等于正一。零,米X趋于负无穷,Tan h X的导数等于零,米X趋于正无穷,Tan X的导数等于零。然后。仅仅通过这几个条件。你是无法。精确的得出tan h X所对应的表达式。英文满足上述要求的函数有很多个,例如FX等于一减一的负X除以一加一的负X。FX等于E的X减一的负X除以1X加一的负XFX等于派分之二乘上二二分之派X。
22:03
等等等等,有很多满足这么多条件的函数,那么THX的表达式究竟是什么?既然有双取针切,那么有没有双曲余弦、双曲针弦、双曲针割、双曲一歌和双曲一切?带着这个问题接着往下看双曲函数。看到标题,大家应该都明白了。这些函数。它们被统称为双取函数。我们知道三角函数也称为原函数,是因为三角函数的值是通过圆心在原点上的单位圆上的坐标来定义的。双取函数的值定义与原函数的值定义的方法类似,因此我们首先了解一下什么是双虚角。一般角的定义为角对应的弧长比上半径的值弧度的定义,但使用双曲线上某段弧定义双曲角较为复杂,因为没有半径或者半径在变化。我们根据扇形面积公式发现,一个角的弧度等于这个角对应的扇形面积的两倍,双虚角是通过面积定义的连接原点。
23:07
和双曲线X平方减Y平方右之上某点XY的线段。和X轴。原点到点一零之间的线段以及点一零。到点XY之间的双曲线弧段所围成的面积的两倍。即为上述两个直线段。上述两个直线段间所加的双曲角的大小,那Y小于零时,对应的双曲角是负数,图中的双曲线就是X平方减Y平方等于一。橙色区域面积的两倍对应的双聚角的大小。B点坐标为XY,为了避免变量冲突,零,B点坐标为X0 Y0,显然O点坐标为零零,A点坐标为一零,C点坐标为X00。橙色区域的面积即为S,绿色区域的面积即为S0。设双区角的大小为T,此时有T等于两倍的S。
24:08
等于两倍的S三角形OC减去S0的整体等于两倍的1/2X0 Y0再减S0的整体,而S0等于。一到X0 YDX的积分。又因为X平方减Y平方等于一,所以Y等于正负根号下X平方减一,不妨舍负Y等于根号下X平方减一,此时有X0等于一到X0根号下X平方减1DX的积分。计算X0首先需要计算根号下X平方减1DS的不定积分,令它为I。计算过程大家可以看一下,我首先是利用分布积分。向后。
25:02
凑分母列项。列项之后发现。I就等于某个东西减去I。此时直接解方程。就得到了。I。求出I,我们需要求出这个积分,令这个积分为I0,直接套公式。就可以解答你。又因为X大于等于一,所以我可以把这里的绝对值给去掉。去掉绝对值,解到I0,代入解到I。S0等于I1到X0。也就是用牛来攻势吗?等于这个表达式T等于X0 Y0减去。
26:00
X0乘上根号X0平方减一,再加上log X0加上根号X0平方减,因为B点在双曲线上,所以B点坐标满足条件X0平方减Y0平方等于一,由此可得Y0等于根号下X0平方减一,代入得T等于log X0加Y0也就等于login X加Y。那么X加Y是不是也就等于E的T,因为X平方减Y平方也就等于是。X加Y的整体乘上X减Y的整体,也就等于一的T乘上X减Y的整体等于一。所以X减Y等于E的负T,此时存在方程组X加Y等于一的TX减Y等于一的负T,解得X等于E的T加E的负T除以二,Y等于E的T减一的负T除以二。令X表示双取余弦函数coin X y表示双取正弦函数SXY除X表示双取正切函数, Tx1除X表示双取正钩函数,SH1除Y表示双取余钩函数Co sh X除Y表示双曲余切函数。
27:07
把X等于这个,Y等于这个往下带,就得到了对应的这些函数。自变量。就是T。这个表格大家自己看一下。重点是双取针切函数。请务必记住它的表达式。关于双曲函数的科普就到这里继续看。
28:03
神经网络的参数阿尔法。浮点数默认0.0001L2正则化参数。Max整数默认200最大迭代次数,决定每一个数据点将会被用到多少次,而不是更新梯度的步数learning。Constant。I sc adaptive3选一默认constant学习率更新策略,当前仅当forward等于SGD时有效。冷凝等于constant更新策略,不更新一直都是冷凝瑞,冷凝瑞等于I卡更新策略,更新的学习率等于初始学习率除以T的power t次方。Adaptive learning rate等于adaptive更新策略一开始和constant一样,当无法做出更新的时候,就把信息率除以五作为新的学习率,一直反复,直到最终的学习率下一成机器零。
29:10
Learning浮点数默认0.001,初始学习率当键剪刀va等于SG或者solve等时有效。好的。浮点数默认0.5,当冷尼瑞特等于。Inv的时候被用来更新受影响的学习率。当且仅当so等于S基D时,有效贝塔一浮点数默认0.9,当且仅当sova等于A时,有效A算法参数贝塔一。贝塔二浮点数默认0.999当前锦囊so等于Adam时,有效算法参数贝塔二以C浮点数默认。十的负八次方一亿分之一,当且仅当sova等于Adam有效。Adam算法参数exce。下次我们会讲神经网络调仓。
30:04
会讲这些参数。究竟怎么调?在这里。只是做一个简单的认识。
我来说两句