深度学习读书笔记pdf.docx
- 文档编号:3711866
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:7
- 大小:23.43KB
深度学习读书笔记pdf.docx
《深度学习读书笔记pdf.docx》由会员分享,可在线阅读,更多相关《深度学习读书笔记pdf.docx(7页珍藏版)》请在冰豆网上搜索。
深度学习读书笔记pdf
深度学习读书笔记pdf
【篇一:
deeplearning深度学习总结】
deeplearning深度学习总结
一、deeplearning的基本思想
假设我们有一个系统s,它有n层〔s1,…sn〕,它的输入是i,输出是o,形象地表示为:
i=s1=s2=…..=sn=o,如果输出o等于输入i,即输入i经过这个系统变化之后没有任何的信息损失〔呵呵,大牛说,这是不可能的。
信息论中有个“信息逐层丧失”的说法〔信息处理不等式〕,设处理a信息得到b,再对b处理得到c,那么可以证明:
a和c的互信息不会超过a和b的互信息。
这说明信息处理不会增加信息,大部分处理会丧失信息。
当然了,如果丢掉的是没用的信息那多好啊〕,保持了不变,这意味着输入i经过每一层si都没有任何的信息损失,即在任何一层si,它都是原有信息〔即输入i〕的另外一种表示。
现在回到我们的主题deeplearning,我们需要自动地学习特征,假设我们有一堆输入i〔如一堆图像或者文本〕,假设我们设计了一个系统s〔有n层〕,我们通过调整系统中参数,使得它的输出仍然是输入i,那么我们就可以自动地获取得到输入i的一系列层次特征,即s1,…,sn。
对于深度学习来说,其思想就是对堆叠多个层,也就是说这一层的输出作为下一层的输入。
通过这种方式,就可以实现对输入信息进行分级表达了。
另外,前面是假设输出严格地等于输入,这个限制太严格,我们可以略微地放松这个限制,例如我们只要使得输入与输出的差异尽可能地小即可,这个放松会导致另外一类不同的deeplearning方法。
上述就是deeplearning的基本思想。
二、deeplearning与neuralnetwork
深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。
深度学习是无监督学习的一种。
深度学习的概念源于人工神经网络的研究。
含多隐层的多层感知器就是一种深度学习结构。
深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
deeplearning本身算是machinelearning的一个分支,简单可以理解为neuralnetwork的发展。
大约二三十年前,neuralnetwork曾经是ml领域特别炽热的一个方向,但是后来确慢慢淡出了,原因包括以下几个方面:
1〕比较容易过拟合,参数比较难tune,而且需要不少trick;
2〕训练速度比较慢,在层次比较少〔小于等于3〕的情况下效果并不比其它方法更优;
所以中间有大约20多年的时间,神经网络被关注很少,这段时间基本上是svm和boosting算法的天下。
但是,一个痴心的老先生hinton,他坚持了下来,并最终〔〕提成了一个实际可行的deeplearning框架。
deeplearning与传统的神经网络之间有相同的地方也有很多不同。
二者的相同在于deeplearning采用了神经网络相似的分层结构,系统由包括输入层、隐层〔多层〕、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,每一层可以看作是一个logisticregression模型;这种分层结构,是比较接近人类大脑的结构的。
而为了克服神经网络训练中的问题,dl采用了与神经网络很不同的训练机制。
传统神经网络中,采用的是backpropagation的方式进行,简单来讲就是采用迭代的算法来训练整个网络,随机设定初值,计算当前网络的输出,然后根据当前输出和label之间的差去改变前面各层的参数,直到收敛〔整体是一个梯度下降法〕。
而deeplearning整体上是一个layer-wise的训练机制。
这样做的原因是因为,如果采用backpropagation的机制,对于一个deepnetwork〔7层以上〕,残差传播到最前面的层已经变得太小,出现所谓的gradientdiffusion〔梯度扩散〕。
这个问题我们接下来讨论。
三、deeplearning训练过程
3.1、传统神经网络的训练方法为什么不能用在深度神经网络
bp算法作为传统训练多层网络的典型算法,实际上对仅含几层网络,该训练方法就已经很不理想。
深度结构〔涉及多个非线性处理单元层〕非凸目标代价函数中普遍存在的局部最小是训练困难的主要来源。
bp算法存在的问题:
〔1〕梯度越来越稀疏:
从顶层越往下,误差校正信号越来越小;
〔2〕收敛到局部最小值:
尤其是从远离最优区域开始的时候〔随机值初始化会导致这种情况的发生〕;
〔3〕一般,我们只能用有标签的数据来训练:
但大部分的数据是没标签的,而大脑可以从没有标签的的数据中学习;
3.2、deeplearning训练过程
如果对所有层同时训练,时间复杂度会太高;如果每次训练一层,偏差就会逐层传递。
这会面临跟上面监督学习中相反的问题,会严重欠拟合〔因为深度网络的神经元和参数太多了〕。
2006年,hinton提出了在非监督数据上建立多层神经网络的一个有效方法,简单的说,分为两步,一是每次训练一层网络,二是调优,使原始表示x向上生成的高级表示r和该高级表示r向下生成的x尽可能一致。
方法是:
1〕首先逐层构建单层神经元,这样每次都是训练一个单层网络。
2〕当所有层训练完后,hinton使用wake-sleep算法进行调优。
将除最顶层的其它层间的权重变为双向的,这样最顶层仍然是一个单层神经网络,而其它层则变为了图模型。
向上的权重用于“认知”,向下的权重用于“生成”。
然后使用wake-sleep算法调整所有的权重。
让认知和生成达成一致,也就是保证生成的最顶层表示能够尽可能正确的复原底层的结点。
比方顶层的一个结点表示人脸,那么所有人脸的图像应该激活这个结点,并且这个结
果向下生成的图像应该能够表现为一个大概的人脸图像。
wake-sleep算法分为醒〔wake〕和睡〔sleep〕两个部分。
1〕wake阶段:
认知过程,通过外界的特征和向上的权重〔认知权重〕产生每一层的抽象表示〔结点状态〕,并且使用梯度下降修改层间的下行权重〔生成权重〕。
也就是“如果现实跟我想象的不一样,改变我的权重使得我想象的东西就是这样的”。
2〕sleep阶段:
生成过程,通过顶层表示〔醒时学得的概念〕和向下权重,生成底层的状态,同时修改层间向上的权重。
也就是“如果梦中的景象不是我脑中的相应概念,改变我的认知权重使得这种景象在我看来就是这个概念”。
deeplearning训练过程具体如下:
1〕使用自下上升非监督学习〔就是从底层开始,一层一层的往顶层训练〕:
采用无标定数据〔有标定数据也可〕分层训练各层参数,这一步可以看作是一个无监督训练过程,是和传统神经网络区别最大的部分〔这个过程可以看作是featurelearning过程〕:
具体的,先用无标定数据训练第一层,训练时先学习第一层的参数〔这一层可以看作是得到一个使得输出和输入差异最小的三层神经网络的隐层〕,由于模型capacity的限制以及稀疏性约束,使得得到的模型能够学习到数据本身的结构,从而得到比输入更具有表示能力的特征;在学习得到第n
-1层后,将n-1层的输出作为第n层的输入,训练第n层,由此分别得到各层的参数;
2〕自顶向下的监督学习〔就是通过带标签的数据去训练,误差自顶向下传输,对网络进行微调〕:
基于第一步得到的各层参数进一步fine-tune整个多层模型的参数,这一步是一个有监督训练过程;第一步类似神经网络的随机初始化初值过程,由于dl的第一步不是随机初始化,而是通过学习输入数据的结构得到的,因而这个初值更接近全局最优,从而能够取得更好的效果;所以deeplearning效果好很大程度上归功于第一步的featurelearning过程。
四、deeplearning的常用模型或者方法
4.1、autoencoder自动编码器
deeplearning最简单的一种方法是利用人工神经网络的特点,人工神经网络〔ann〕本身就是具有层次结构的系统,如果给定一个神经网络,我们假设其输出与输入是相同的,然后训练调整其参数,得到每一层中的权重。
自然地,我们就得到了输入i的几种不同表示〔每一层代表一种表示〕,这些表示就是特征。
自动编码器就是一种尽可能复现输入信号的神经网络。
为了实现这种复现,自动编码器就必须捕捉可以代表输入数据的最重要的因素,就像pca那样,找到可以代表原信息的主要成分。
具体过程简单的说明如下:
1〕给定无标签数据,用非监督学习学习特征:
在我们之前的神经网络中,如第一个图,我们输入的样本是有标签的,即〔input,target〕,这样我们根据当前输出和target〔label〕之间的差去改变前面各层的参数,直到收敛。
但现在我们只有无标签数据,也就是右边的图。
那么这个误差怎么得到呢?
如上图,我们将input输入一个encoder编码器,就会得到一个code,这个code也就是输入的一个表示,那么我们怎么知道这个code表示的就是input呢?
我们加一个decoder解码器,这时候decoder就会输出一个信息,那么如果输出的这个信息和一开始的输入信号input是很像的〔理想情况下就
【篇二:
深度学习--深度信念网络(deepbeliefnetwork)】
深度学习--深度信念网络〔deepbeliefnetwork〕概述
深度信念网络(deepbeliefnetwork,dbn)由geoffreyhinton在2006年提出。
它是一种生成模型,通过训练其神经元间的权重,我们可以让整个神经网络按照最大概率来生成训练数据。
我们不仅可以使用dbn识别特征、分类数据,还可以用它来生成数据。
下面的图片展示的是用dbn识别手写数字:
图1用深度信念网络识别手写数字。
图中右下角是待识别数字的黑白位图,它的上方有三层隐性神经元。
每一个黑色矩形代表一层神经元,白点代表处于开启状态的神经元,黑色代表处于关闭状态的神经元。
注意顶层神经元的左下方即使别结果,与画面左上角的对应表比对,得知这个dbn正确地识别了该数字。
下面是展示了一个学习了大量英文维基百科文章的dbn所生成的自然语言段落:
in1974northerndenverhadbeenovershadowedbycnl,andseveralirishintelligenceagenciesinthemediterraneanregion.
however,onthevictoria,kingshebrewstatedthatcharlesdecidedtoescapeduringan
alliance.themansionhousewascompletedin1882,thesecondinitsbridgeareomitted,whileclosingistheprotonreticulum
composedbelowitaims,suchthatitistheblurringofappearingonanywell-paidtypeofboxprinter.
dbn由多层神经元构成,这些神经元又分为和〔以下简称显元和隐元〕。
显元用于接受输入,隐元用于提取特征。
因此隐元也有个别名,叫特征检测器(featuredetectors)。
最顶上的两层间的连接是无向的,组成联合内存(associativememory)。
较低的其他层之间有连接上下的有向连接。
最底层代表了数据向量(datavectors),每一个神经元代表数据向量的一维。
dbn的组成元件是(restrictedboltzmann
machines,rbm)。
训练dbn的过程是一层一层地进行的。
在每一层中,用数据向量来推断隐层,再把这一隐层当作下一层(高一层)的数据向量。
受限玻尔兹曼机
如前所述,rbm是dbn的组成元件。
事实上,每一个rbm都可以单独用作聚类器。
rbm只有两层神经元,一层叫做(visiblelayer),由(visible
units)组成,用于输入训练数据。
另一层叫做,相应地,由隐元(hiddenunits)组成,用作特征检测器(featuredetectors)。
图2受限玻尔兹曼机的结构。
图中的较上一层神经元组成隐层,较下的神经元组成显元。
每一层都可以用一个向量来表示,每一维表示每个神经元。
注意这两
层间的对称(双向)连接。
神经元之间的条件独立性
应注意到,显层和隐层内部的神经元都没有互连,只有层间的神经元有对称的连接线。
这样的好处是,在给定所有显元的值的情况下,每一个隐元取什么值是互不相关的。
也就是说,
同样,在给定隐层时,所有显元的取值也互不相关:
有了这个重要性质,我们在计算每个神经元的取值情况时就不必每次计算一个,而是同时并行地计算整层神经元。
使用rbm的过程
假设我们现在已经得到一个训练好的rbm,每个隐元与显元间的权重用矩阵w表示,且:
其中wij代表从第i个显元到第j个隐元的权重,m代表显元的个数,n代表隐元的个数。
那么,当我们把一条新来的数据附给(clampto)显层后,rbm将会依照权值w来决定开启或关闭隐元。
具体的操作如下:
首先,将每个隐元的激励值(activation)计算出来:
注意,这里用到了前面提到的神经元之间的条件独立性。
然后,将每个隐元的激励值都用s形函数进行标准化,变成它们处于开启状(用1表示)的概率值:
此处的s形函数我们采用的是logistic函数:
至此,每个隐元hj开启的概率被计算出来了。
其处于关闭状态(用0表示)的概率自然也就是
那么到底这个元开启还是关闭,我们需要将开启的概率与一个从0,1均匀分布中抽取的随机值
进行如下比较
然后开启或关闭相应的隐元。
给定隐层,计算显层的方法是一样的。
训练rbm
rbm的训练过程,实际上是求出一个最能产生训练样本的概率分布。
也就是说,要求一个分布,在这个分布里,训练样本的概率最大。
由于这个分布的决定性因素在于权值w,所以我们训练rbm的目标就是寻找最正确的权值。
为了保持读者的兴趣,这里我们不给出最大化对数似然函数的推导过程,直接说明如何训练rbm。
g.hinton提出了名为比照散度(contrastivedivergence)的学习算法。
下面我们来详述它的具体过程。
【篇三:
深度教学读书笔记】
深度教学读书笔记
要把文章的句号当成问号
北师大王富仁问题例如:
为什么从明天起做个幸福的人?
他今天不幸福吗?
你走,我不拦你。
家里怎么办?
中间的句号换成逗号可以吗?
不巧之巧名曰极巧,不言之言名曰至言弘一法师
一个老教师的文言文学习布置任务:
1、自读第一自然段,画出不理解、不明白的地方;
2、找出常见的实词与常见的虚词〔以一同回忆这些词在以前学过的文言文中的含义,并分析这些词语在本文中的意义。
〕
3、找出特殊句式,指出其翻译的通常方式
4、接下来是第二自然段
另一个做法:
先讲讲大概,然后重点串讲第一段,边读边讲,讲实词讲虚词,将行文结构,最后总结并诵读这一段落;到第二段就完全交给学生自读自悟,同学之间合作交流。
要求学生按照老师串讲第一段的方式逐句串讲,不会的地方同学补充。
到第三段老师在串讲,第四段学生再讲解。
一对一引领,逐字逐句诵读
那时候我跟同龄人唯一的一点差异就是,我已经读过了《静静的顿河》
“给我一个班,三个月我就能让其成为年级第一”
1、注重基础的反复训练
整理出许多小纸条,都是有关拼音、错别字、病句、成语、句式名句的。
一上课他就把小纸条发给相关的学生,然后写拼音、错别字、成语的同学,到黑板上写下
答案;有关病句、名句、句式的题目,同学直接答复。
2、每月考后成绩中游的15名同学,组成语文学习先锋队,每天找两位同学上课前在黑板上抄5个语文基础知识题,涉及拼音、字形、词语、病句、成语,可以让前排的几位同学分别帮助抄一下,然后让15名中的两名答复;如果这两名同学有答错的,下次就由该同学准备题目。
另外,还让这15名同学每周写两个语段,每天选择两名同学的语段,抄到后面的黑板上,让师生点评。
3、三分钟语段背诵。
让学生建立作文语段抄写本,每周背诵、默写两个优美语段。
*语句的理解:
上下文、核心词语、中心
*为何以”我不是一个好儿子”为题本义、内容、中心
本义:
自己没有做好儿子的责任
内容:
文本写母亲对儿子无私的爱,反衬自己以为给母亲很多的钱就是孝子,没有给母亲什么,反而给母亲带来不少烦恼中心:
表达作者对母亲的感激和深深地愧疚之情
为什么用祝福为题?
再别康桥》想象文中暗示的内容,
*启功先生的《上课须知》
已有385次阅读2007-02-1119:
05标签:
启功上课须知
初为人师,刚上讲台,应该注意些什么?
这也许是新教师们正在认真思考的问题。
这里,我想向大家介绍一篇《上课须知》。
那是著名书法家启功先生拟写的。
文中的精辟之见,既有他恩师传授给他的,更多的则是他自己一生教学经验的总结。
这份《上课须知》共有九条:
一、一个人站在讲台上要有一个样子。
人脸是对立的,但感情不可对立。
二、万不可有偏爱、偏恶,万不许讥诮学生。
三、以鼓励夸奖为主。
不好的学生,包括淘气和成绩不好的,都要尽力找他们一小点好处,加以夸奖。
四、不要发脾气。
你一发火,即使有效,以后再有更坏的事情发生,又怎样发更大的脾气?
万一发了脾气之后无效,又怎样下场?
你还年轻但站在讲台上即是师表,要取得学生的佩服。
五、教一课书要把这一课的各方面都预备到,设想学生会问什么。
自己研究几个月的一项结果,有时并不够一堂时间讲的。
六、批改作文,不要多改,多改了不如替他作一篇。
改多了他们也不看。
要改重要的关键处。
七、要有教课日记。
自己和学生有某些优缺点。
都记下来。
记下以备比较。
八、发作文时,要举例讲解。
缺点尽力在堂下个别谈;缺点改好了,有所进步的,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 深度 学习 读书笔记 pdf