本篇文章12828字,读完约32分钟

雷锋。这篇文章的原作者是于江。这篇文章最初发表在他的智虎专栏《超级特工》上。雷(公开号:雷)已由原作者授权。

为什么要深入学习

深度学习开启了人工智能的新时代。不管哪个行业害怕错过这个时代的潮流,都有大量的资金和人才涌入。然而,深度学习以其“黑箱”而闻名。不仅很难调整和训练,而且关于“新”网络结构的论文像蘑菇一样涌现,这使得掌握所有的结构变得不现实。我们对深度学习缺乏合理的理解。

为什么要用深度学习?

神经网络并不缺少新的结构,但在这个领域却缺少一个

许多人会发现,在做神经网络实验时,调整某些方式和结构会产生意想不到的结果。但就我个人而言,这些发现不会让我满意。我更关心这些新发现告诉我们什么,以及这些现象背后的原因是什么。我想将新的网络结构推广到现有系统中。这就是为什么我更多地思考“为什么深度学习是有效的。”以下是目前yjango在这方面的看法。

为什么要用深度学习?

与一般的统计学习相比,深层神经网络具有物理世界的先验知识(非贝叶斯先验),这是数学严密性所不能获得的。这一内容在大神本吉奥的论文和演讲中也多次得到强调。大神还在2016年海湾地区深度学习学校的《深度学习的基础与挑战》(Founda ' s and Challenges of Deep Learning)PDF中提到(这里有视频,需要翻墙),这是神经网络和深度神经网络高效的原因(如果有时间,强烈建议在阅读完演讲后阅读这篇文章)。尽管与大神思考的起点可能不同,但结论是完全一致的(当我看到大神本吉奥的视频时,我特别兴奋)。以下是一个分析示例:

为什么要用深度学习?

1.为什么神经网络是有效的

2.学习的本质是什么

3.为什么深层神经网络比浅层神经网络更有效

4.神经网络有什么问题?

其他推荐读数

[1]bengio y .学习人工智能的深层结构[j].基础和趋势?机器学习,2009,2(1): 1-127。

brahma p p,wu d,she y .为什么深层次学习有效:一个多方面的解缠观点[j].2015.

为什么深入而廉价的学习如此有效?[j]。arxiv预印本arxiv:1608.08225,2016。

bengio y,courville a,Vincent p . presentation learning:a review and new perspectives[j].ieee模式分析和机器智能交易,2013,35(8): 1798-1828。

伊恩·古德费勒、约舒亚·本吉奥和亚伦·库尔维尔的深度学习教科书

Yjango的整个思考过程都围绕着熵减少这个词。正如《熵与生命》和《生物学学习》中所讨论的,生物学应该做的是减少环境的熵,把不确定的状态变成确定的状态。通常,机器学习是一个优化损失函数,模型是用概率来评估的。然而,由于状态的不确定性,概率是一个必须使用的度量。生物真正想要的是没有任何不确定性。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154128678.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;895 amp;amp;quot; data-rawheight= amp;amp;quot;336 amp;amp;quot; >

深层神经网络在自然问题上更具优势,因为它和生物学习一样,是找回使熵增加的 “物理关系”(知识,并非完全一样),将变体()转化回因素()附带物理关系的形式,从源头消除熵(假设每个因素只有两种可能状态)。这样所有状态间的关系可以被确定,要么肯定发生,要么绝不发生,也就无需用概率来衡量。因此下面定义的学习目标并非单纯降低损失函数,而从确定关系的角度考虑。一个完美训练好的模型就是两个状态空间内所有可能取值间的关系都被确定的模型。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154128678 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。895安培。amp。quot。数据-rawheight= amp。amp。quot。336安培。amp。quot。>深层神经网络在自然问题中更有优势,因为它与生物学习一样,即寻找增加熵的“物理关系”(知识不完全相同),将变体()转换回附于因子()的物理关系形式,并从源头上消除熵(假设每个因子只有两种可能的状态)。这样,所有状态之间的关系就可以确定,要么肯定会发生,要么永远不会发生,所以没有必要用概率来衡量。因此,下面定义的学习目标不是简单地减少损失函数,而是从确定关系的角度来考虑。一个完美的训练模型是确定空两个州的所有可能值之间的关系。

为什么要用深度学习?

学习目标:确定空两个州所有可能值之间的关系,使熵尽可能低。

注意:不知道熵的朋友可以简单地记住,事件状态越确定,熵就越小。如果事件从未发生(概率0)或肯定发生(概率1),则事件的熵很小。然而,50%可能事件的熵相当大。

为什么要用深度学习?

为了说明,我们将考虑使用神经网络来学习以下两组的不同关联(或门和异或门)。看看当网络结构和关联改变时会发生什么。特别是当网络变得更深时,网络与浅层神经网络的区别。

为什么要用深度学习?

注意:选择这个简单的关联xor的初衷是输入和输出空之间的状态数量是有限的,因此很容易分析变量数量和熵增加之间的关系。

注:“变异”是指同一种事物的不同形式,例如,10张狗的照片,尽管它们的外表不同,但都是狗。

问题描述:集合A有4个状态,集合B有2个状态。0和1只是用来表示不同状态的符号,也可以用0、1、2和3来表示。状态不一定代表数字,但可以代表任何物理意义。

为什么要用深度学习?

模式1:内存随机变量X:可能的值是

随机变量y:可能的值有

注:随机变量(大写x)是将事件投影为实数的函数。该事件由相应的实数表示。小写字母x表示对应于实数的事件已经发生,这是一个具体的例子。

网络结构:目前还没有规定要学习的关联是或还是异或。首先,建立一个只有一个输入节点和一个输出节点的无隐层神经网络。

表达式:,表示sigmoid函数。(relu是当前的主流,只要它是非线性的)

注:下图右侧的虚线既不是神经网络的链接,也不是函数中的映射,而是两个空.中所有可能值之间的关系学习的目的是确定这些状态之间的关系。例如,当输入00时,模型应该尝试告诉我们00到1的概率是0,00到0的概率是1,这样熵将为零。

为什么要用深度学习?

图:网络结构在左边,状态图在右边。在输入和输出空之间有8种关系(这些关系用虚线箭头表示)。除非这八个关系对模型来说都是一样的,否则当用。(8)人际关系无法处理。如果一种关系是完美的,其余的就不准确了。(

为什么要用深度学习?

注:这里 yjango 是用表示的缩写。 amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154139682.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;353 amp;amp;quot; data-rawheight= amp;amp;quot;194 amp;amp;quot; >

数据量:极端假设,若用查找表来表示关系:需要用 8 个不同的数据来记住想要拟合的。注:yjango是这里的缩写。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154139682 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。353安培。amp。quot。数据-rawheight= amp。amp。quot。194安培。amp。quot。>数据量:极端假设,如果关系是用查找表来表示的,那么需要8个不同的数据来记住你想要拟合的内容。

为什么要用深度学习?

模式2:手动特征特征:空 A的四个州由0或1两个州组成。我们可以观察(计算机不能),我们用这种知识来分解状态。分解成两个独立的亚随机变量和。也就是说,输入由二维向量表示。

为什么要用深度学习?

网络结构:因为它被划分为二维特征,这个网络结构的输入需要被改变为两个节点。在下图的上半部分,通过使用人工知识,随机变量被转换成总和的公共表示。这时,又一起形成一个网络输入。

为什么要用深度学习?

注意:k()旁边的黑线(实线表示确定的关系)不是真正的神经网络结构,但是容易理解,可以简单地想象为神经网络变换。

表达式:

注意:为了方便起见,矩阵的表达式是这样写的,它是标量,

图表:因为它是固定的,所以只考虑下半部分的关系。因为这时,两行和被用来相互对应。最初需要匹配的八个关系现在变成了四个(两个节点平均分配)。同样,除非右边的四条红色关系线对我来说是相同的,四条绿色关系线对我来说也是相同的,否则使用和

为什么要用深度学习?

说,肯定会引起熵增加。

注:下图左侧是网络结构图。在右边的图中,接触的圆代表同一个节点的不同变体。标有不同颜色的独立圆圈代表不同的节点,左右图连接线的颜色相互对应。例如,红色的需要代表右侧的四条红色关系线。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154121683.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;453 amp;amp;quot; data-rawheight= amp;amp;quot;294 amp;amp;quot; >

关联 1:下面和 yjango 确定想要学习的关联(函数)。如果想学习的关联是只取或者的值,那么该结构可以轻松用两条线和来表达这 4 个关系 (让其中一条线的权重为 0,另一条为 1)。amp。amp。lt。img src= amp。amp。quot。getig . jrj/images/2017/08/leiphone/one _ 20170804154121683 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。453安培。amp。quot。数据-rawheight= amp。amp。quot。294安培。amp。quot。>关联1:确定您要与下面的yjango学习的关联(功能)。如果你想学习的关联只取或的值,那么结构可以很容易地用两行和来表达这四个关系(让一行的权重为0,另一行的权重为1)。

为什么要用深度学习?

关联2:如果你想学习的关联是或门,比较真值表和实际训练后的预测值如下。接近,但有错误。然而,如果它被分类,可以找到0.5的超平面用于分割。大于0.5等于1,小于0.5等于0,两者可以完全分开。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154111573.png amp;amp;quot; data-rawwidth= amp;amp;quot;176 amp;amp;quot; data-rawheight= amp;amp;quot;170 amp;amp;quot; >

注:第一列是输入,第二列是真实想要学习的输出,第三列是训练后的网络预测值。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154111573 . png amp;amp。quot。数据-rawwidth= amp。amp。quot。176安培。amp。quot。数据-rawheight= amp。amp。quot。170安培。amp。quot。>注意:第一列是输入,第二列是你真正想学的输出,第三列是训练后的网络预测值。

为什么要用深度学习?

关联3:如果你想学习的关联是异或,比较真值表和实际训练后的预测值如下。由于这四条关系线不能用单一的方式表达,所以异或关联的分类不能分开。

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154117679.png amp;amp;quot; data-rawwidth= amp;amp;quot;175 amp;amp;quot; data-rawheight= amp;amp;quot;172 amp;amp;quot; >

数据量:学习这种关联至少需 4 个不同的来拟合。其中每个数据可以用于确定 2 条关系线。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154117679 . png amp;amp。quot。数据-rawwidth= amp。amp。quot。175安培。amp。quot。数据-rawheight= amp。amp。quot。172安培。amp。quot。>数据量:了解这种关联至少需要4种不同的数据。每个数据可用于确定两条关系线。

为什么要用深度学习?

模式3:增加隐藏层网络结构1:现在取和作为输入(用),不考虑它。并且具有两个节点的隐藏层被添加到网络结构中(由和表示)。

表达式:

图表1:乍一看,确定这种关系似乎更加困难。最初,只有8条关系线,但现在增加了16条。但事实上,所需的数据量根本没有改变。因为下面两个先验知识。

为什么要用深度学习?

注意:下图最右边的部分显示了当样本进入网络时可以学习哪些关系线。

1.平行性:学习和是完全独立和平行的。这是神经网络的两个固有的先验知识之一:并行性:网络可以同时确定和之间的关联。它也是本吉奥提到的分布式表示。

为什么要用深度学习?

注:有效的前提是,空各州之间的关联可以分解为平行因素。

注意:没有平行,因为一个节点有两个变量,而不是两个独立的因素。但它也可以表示为一个热矢量。这就是为什么状态在分类中不能用一维向量来表示。进一步验证了yjango在《机器学习》中对学习的定义:学习是将变量分解成因素偶然关系的过程。

为什么要用深度学习?

迭代:第二个先验知识是,在学习的同时,也可以被学习。这是神经网络固有的两个先验知识之一:迭代:网络可以在确定上一级的同时确定下一级的所有内容。也被称为伟大的上帝本吉奥组成的完整性。

为什么要用深度学习?

注意:有效的前提是要学习的空之间的关联是由前面的迭代形成的。幸运的是,我们生活的几乎所有世界都符合这个前提(有一些特殊的反例)。

相关性:如果要学习的相关性是异或,真值表与实际训练后的预测值比较如下。

而且:在开始的时候,如果两个网络连接表达的16个关系是可能的,熵将会非常高。然而,模型的熵可以降低到非常低的水平,用两条线表示八个关系。下图中的输出值对应红色数字。相应的输出值用蓝色数字表示。

为什么要用深度学习?

:当我们观察这种关系时,它是完全线性的。仅通过观察就能得到的表达式。

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154123681.png amp;amp;quot; data-rawwidth= amp;amp;quot;266 amp;amp;quot; data-rawheight= amp;amp;quot;190 amp;amp;quot; >

数据量:如关系图 1 中最右侧图所示,一个输入 [0,0] 会被关联到 0。而这个数据可用于学习 2+4 个关系。也就是说网络变深并不需要更多数据。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154123681 . png amp;amp。quot。数据-rawwidth= amp。amp。quot。266安培。amp。quot。数据-rawheight= amp。amp。quot。190安培。amp。quot。>数据量:如关系图1中最右边的图所示,输入[0,0]将与0相关联。这些数据可以用来学习2+4关系。也就是说,更深的网络不需要更多的数据。

为什么要用深度学习?

模型的熵与要拟合的关系的数量有关。也就是说,

变异越少,拟合难度和熵越低。

网络结构2:在这种情况下,有4个变体,这次节点的数量增加到4个。

图2:与网络结构1不同,增加到4个节点后,每个节点可以没有任何变化,只取一个值。这个想法是合理的,但是在实际训练中,模型并不是这样工作的。

注意:太多的颜色很容易让人眼花缭乱。在这里,不同线条之间的对应关系不再用颜色来标记,但这种对应关系仍然存在。

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154113676.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;1003 amp;amp;quot; data-rawheight= amp;amp;quot;344 amp;amp;quot; >

问题:因为会出现右图的情况:只有两个节点在工作(线的粗细表示权重大小)。a和c的节点在滥竽充数。这就跟只有两个节点时没有太大别。原因是神经网络的权重的初始化是随机的,数据的输入顺序也是随机的。这些随机性使得权重更新的方向无法确定amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154113676 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。1003安培。amp。quot。数据-rawheight= amp。amp。quot。344安培。amp。quot。>问题:因为在右图中会出现这样的情况:只有两个节点在工作(线条的粗细表示重量)。A和C的节点正在填充间隙。这与只有两个节点时没有太大区别。原因是神经网络权值的初始化是随机的,数据的输入序列也是随机的。这些随机性使得不可能确定权重更新的方向

为什么要用深度学习?

讨论:既然网络选择这种方式来更新权重,这是否意味着在一定程度上可以用更少的节点来表示关联?不,因为日常生活中的联系,我们不能得到所有变体的数据。获得的数据往往只是一小部分。较少的节点可以表示这一小部分数据的关联,但是它们不能覆盖所有的变体。实际应用效果不理想。

为什么要用深度学习?

缓解:缓解方法为l2正则化:每层权重矩阵的平方和作为惩罚。

表达式:,是惩罚的强度,可以调整。除以2是为了便于推导(被后面的正方形抵消)。

意思是:当同一层的重量太高时,方块的总和就会增加。该模型将减少训练中的惩罚。效果是使所有的权重等于任务,这样所有的都有值。通过这种方式,每个节点都可以工作,这样就可以消除变化,减轻过拟合。

为什么要用深度学习?

例如:

具有隐藏层的神经网络可以模拟任何功能,最坏的情况需要节点。

也称为通用近似定理。但是在最坏的情况下,输入空.中的节点和变量一样多k代表独立因子的变量数量,n代表独立因子的数量。上面例子中最糟糕的情况需要隐藏节点。代价是需要不同的数据来完美匹配。

为什么要用深度学习?

使用条件:浅层神经网络可以分离几乎所有的自然联系。因为神经网络最初是因为移动生物需要预测未来事件而进化的。学会的联想是从过去的状态到未来的状态。如下所示,物理学中的力也可以分成两个独立的部分来研究。

为什么要用深度学习?

然而,有一种情况是不适用的:无功能。

示例:函数的定义是:每个输入值和唯一输出值之间的对应关系。你为什么这样定义函数?数学上可能对应两个以上的输出值。但这在宏观世界发展中并不常见。下图:

为什么要用深度学习?

时间流动:无论从哪个起点,同一个状态(不是维度)都可以独立地发展成多个不同的状态(例如,氧原子可以演化成氧分子和臭氧分子)。也就是说,热力学第二定律的自发熵增加:原始状态通过物理关系形成更多的变体。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154133680.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;269 amp;amp;quot; data-rawheight= amp;amp;quot;134 amp;amp;quot; >

时间倒流:宏观自然界中难以找到两个以上的不同状态共同收回到一个状态的例子(如氧分子和臭氧分子无法合并成氧原子)。如果这个可以实现,熵就会自发性减少。也就不需要生物来消耗能量减熵。我们的房间会向整齐的状态发展。但这违背热力学第二定律。至少在我们的宏观世界中,这种现象不常见。所以进化而来的神经网络可以拟合任何函数,但在非函数上就没有什么优势。毕竟生物的预测是从过去状态到未来状态。也说明神经网络并不违背无免费午餐定理。amp。amp。lt。img src= amp。amp。quot。getig . jrj/images/2017/08/leiphone/one _ 20170804154133680 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。269安培。amp。quot。数据-rawheight= amp。amp。quot。134安培。amp。quot。>回到过去的时间:很难找到两种以上不同的状态来恢复到宏观性质的一种状态(例如,氧分子和臭氧分子不能结合成氧原子)。如果能够实现这一点,熵将会自发减少。生物没有必要消耗能量和减少熵。我们的房间会变得整洁。但是这违背了热力学第二定律。至少在我们的宏观世界里,这种现象并不常见。因此,进化后的神经网络可以适应任何函数,但在非函数方面没有优势。毕竟,生物预测是从过去状态到未来状态。这也说明神经网络并没有违反没有免费午餐的定理。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154126797.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;269 amp;amp;quot; data-rawheight= amp;amp;quot;134 amp;amp;quot; >

实例:xor 门的输入空间和输出空间若互换位置,则神经网络拟合出来的可能性就非常低(并非绝对无法拟合)。amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154126797 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。269安培。amp。quot。数据-rawheight= amp。amp。quot。134安培。amp。quot。>示例:如果异或门的输入空和输出空的位置互换,则神经网络拟合的可能性非常低(并非绝对不可能)。

为什么要用深度学习?

模式4:浅层神经网络可以模拟任何功能,但数据成本是不可接受的。这个问题已经得到了很好的解决。与浅层神经网络相比,深层神经网络可以用更少的数据学习更好的拟合。上面的例子很特别。因为,你无法与之相比。Yjango再举一个例子,比较深层神经网络和浅层神经网络的区别。

为什么要用深度学习?

问题描述:空和空:之间可能有8个州,还有2个州

网络结构:

浅层神经网络:8节点隐层

深层神经网络:2节点隐层+3节点隐层

深度对比:

浅层神经网络:假设输入3对应输出0。数据只能用于学习节点前后的两条关系线(如)。所有8种变体都是完美学习联想所必需的。然而,当变量的数量为0时,我们就不能得到不同变量的数据,从而失去了学习的意义。毕竟,我们必须预测我们从未见过的数据。所以与其说是学习,不如说是强迫记忆。例如,如果一个学生已经做了100个练习,他可以解决他已经做的问题,但是仍然不能解决新的问题。他没有学会做这道题,而是记住了具体的问题。

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154131684.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;843 amp;amp;quot; data-rawheight= amp;amp;quot;283 amp;amp;quot; >

深层神经网络:如果只观察输入和输出,看起来同样需要 8 个不同的训练数据。但不同之间有共用部分。比如说,在确定 3 和 0 关系时,也同时对所有共用连接的其他变体进行确定。这样就使得原本需要 8 个不同数据才能训练好的关联变成只需要 3,4 不同数据个就可以训练好。(下图关系线的粗细并非表示权重绝对值,而是共用度)amp。amp。lt。img src= amp。amp。quot。getig . jrj/images/2017/08/leiphone/one _ 20170804154131684 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。843安培。amp。quot。数据-rawheight= amp。amp。quot。283安培。amp。quot。>深层神经网络:如果你只观察输入和输出,似乎你还需要8个不同的训练数据。但是它们之间有一些共同之处。例如,当确定3和0之间的关系时,也确定所有公共连接的其他变体。这样,原来需要8个不同数据进行训练的关联只能用3个或4个不同的数据进行训练。(下面关系线的粗细不代表权重的绝对值,而是共享的程度)

为什么要用深度学习?

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154141681.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;573 amp;amp;quot; data-rawheight= amp;amp;quot;350 amp;amp;quot; >

深层的前提:使用浅层神经网络好比是用解,需要 2 个不同数据。而深层神经网络好比用解,只需要一个数据。无免费午餐定理告诉我们,优化算法在一个任务上优秀,就一定会在其他任务上有缺陷,深层同样满足该定理。如果用去解实际上有的,或者去解实际为的关联时,搜索效果只会更差。所以深层的前提是:空间中的元素可以由迭代发展而来的。换句话说中的所有变体,都有共用根源(root)。amp。amp。lt。img src= amp。amp。quot。getig . jrj/images/2017/08/leiphone/one _ 20170804154141681 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。573安培。amp。quot。数据-rawheight= amp。amp。quot。350安培。amp。quot。>深层前提:使用浅层神经网络就像使用解,需要两种不同的数据。深层神经网络就像使用一个只需要一个数据的解决方案。没有免费午餐的定理告诉我们,如果优化算法在一个任务中是优秀的,它在其他任务中也会有缺陷,深层也满足这个定理。如果你用来解决实际存在的东西,或者解决实际存在的关联,搜索效果只会更差。因此,深层次的前提是空的元素可以通过迭代开发。换句话说,中的所有变体都有一个公共根。

为什么要用深度学习?

我们的物质世界:幸运的是,我们几乎所有的物质世界都满足迭代先验知识。

例如:进化。不同的动物都是变种。虽然我们现在在不同的州,但我们在过去都有共同的祖先。

amp;amp;lt;img src= amp;amp;quot;getimg.jrj/images/2017/08/leiphone/one_20170804154119677.jpg amp;amp;quot; data-rawwidth= amp;amp;quot;400 amp;amp;quot; data-rawheight= amp;amp;quot;480 amp;amp;quot; >

实例:又如细胞分裂。八卦中的 8 个变体是由四象中 4 个变体的基础上发展而来,而四象又是由太极的 2 个变体演变而来。很难不回想起 “无极生太极,太极生两仪,两仪生四象,四象生八卦”。(向中国古人致敬,虽然不知道他们的原意)amp。amp。lt。img src= amp。amp。quot。geting . jrj/images/2017/08/leiphone/one _ 20170804154119677 . jpg amp;amp。quot。数据-rawwidth= amp。amp。quot。400安培。amp。quot。数据-rawheight= amp。amp。quot。480安培。amp。quot。>示例:另一个示例是细胞分裂。八卦中的八个变型是从四象中的四个变型发展而来的,四象是从太极的两个变型演变而来的。“无极生太极,太极生二器,二器生四象,四象生八卦”,这是很难不让人想起的。向古代中国人致敬,虽然我不知道他们的初衷

为什么要用深度学习?

学习的过程是因素之间关系的分离,这就是信息回滚,信息回滚就是变量的消除,变量的消除就是不确定性的减少。

自然界中两种固有的先验知识;

并行:新状态是由几个旧状态并行组合而成的。

迭代:通过重复形成的状态来形成新的状态。

为什么是深度学习:在解决结构性问题时,深度学习可以用更少的数据学习更好的相关性。

以下三篇文章使用张量流来实现上述讨论,这是基于零的深度学习的起点。

张量流基本用法

代码演示lv1

代码演示lv2

最后,总结开头的问题:

1.为什么神经网络是有效的:并行先验知识使模型能够学习具有线性样本数的指数数量的变量

2.学习的本质是什么:将变量分为因素和知识

稀疏表达式:矩阵分为稀疏表达式和字典。

一个热点向量:将不同维度的因素分开,以避免相互纠缠。

3.为什么深层神经网络比浅层神经网络更有效?迭代的先验知识使得样本可以用来帮助训练共享相同底层结构的其他样本。

4.神经网络有什么问题:它不满足并行和迭代先验的任务

非功能:我们需要找到一种方法来转化问题。

非迭代(非结构化):这种层状态不是由上层状态组成的任务(例如,由于深度cnn中的最大汇集,信息将逐渐丢失)。而剩余网络再次使迭代先验满足)

到目前为止,我们已经讨论了神经网络最基本和最重要的知识。在实际应用中还存在很多问题(尤其是神经网络在克服噪声方面更为聪明)。随后,yjango将与大家一起分析过深后会产生什么影响,并逐步介绍设计神经网络的实质。

为什么要用深度学习?

雷锋文章版权所有。严禁擅自转载。详情请参考转载说明。

标题:为什么要用深度学习?

地址:http://www.hcsbodzyz.com/hcxw/11102.html