深度学习
我虽然气愤国内搞人工智能的总是慢人一步,但看到我想学的遥感+深度学习领域,10篇顶级综述,大部分是中国人发的,还是很欣慰的。虽然是用英文写的,但是你懂的,中国人写的英语,中国人看起来还是很顺畅的,[我想静静],国内也有各类开源的资料,看起来还是很方便很舒心的,万能的网友发了各种学习资料,大家还是很勤奋的,基础我们都很强,缺的大概是时间吧
深度学习是什么
全文共4854字,预计学习时长10分钟
摄影|Chevanon Photography 来源|Pexels
什么是深度学习?
简单来说,深度学习就是样本研究。
从最基本的概念上看,深度学习就是机器学习的一种方法,教计算机筛选输入的信息,进而对信息进行预测和分类。其观察结果可以通过图片、文字或声音的方式呈现。
深度学习的灵感来源于人脑过滤信息的方式。其初衷是通过模拟人脑运行模式来做些不一样的事情。
GIF来源:GIPHY
这是正儿八经/真实的人工神经网络。
人脑中有大约1亿个神经元。每个神经元都与另外约10万个同类相连,人类现在正试图将类似的工作原理应用到机器上。
人脑中的神经元分为胞体(body),树突(dendrites)和轴突(axon)。神经元发出的信号经由轴突和传送到下一个神经元的树突。这种信号连接被称作神经元突触(synapse)。
单个的神经元其实没多大用。但如果有很多神经元互相合作就能发挥奇效。这就是深度学习算法背后的理念!从观察中获得输入数据,再将输入数据进行筛选。这类筛选产生的输出数据就是下一层筛选的输入数据,这个过程不断进行,直到获得最后的输出信号!
神经元(结点)会收到一个或多个数据(输入值),经神经元继续传播。该神经元传递的信号就是输出信号。
读者可以将输入信号的筛选看作是自己的感官:比如说你看到、闻到或是感觉到的东西。这些是一个信号观察中独立的变量。该信息会被拆分成数字,变成电脑可以读取的二进制数据。最好给这些变量设置统一标准或格式,确保都在同一范围内。
程序员会使用很多非线性处理单位来提取、转换数据特征。每道筛选步骤都会使用上一步的输出数据作为输入数据。其获取的数据所支撑的概念分为三六九等。在这一个等级上,每层都需要学习如何将输入数据转换成更加抽象、内容更丰富的表达形式。
图片|ahmedged 来源|Pixabay
对图片来说,这就意味着输入数据可能是一个像素矩阵。第一层筛选可能为边界加密,并形成一些像素。第二层筛选可能会再加上鼻子眼睛。下一层筛选可能捕捉到图像中有人脸,如此往复。
神经元内部在发生着什么?
输入结点会按数字排序输入信息。该信息表现为激活值,其中每个神经元结点都会被赋予一个数字。数字越大,激活的程度就越深。
根据连接强度(权重)和转换函数,激活值会被传送到下一个结点。每次接收一个激活值,每个结点都会计算激活值的总和(权重总和),再根据转换函数进行编辑。接着,结点会使用激活函数。激活函数是应用于某一特定神经元的。这一步之后,神经元就知道它要不要再继续传播这个信号。
每个神经元突触都会被赋予一定的权重,这一步对人工神经网络(ANNs, Artificial Neural Networks)至关重要。人工神经网络通过调整权重来决定信号传播的程度。程序员在调试自己的网络时,如何调整权重这一决定权就握在自己手里。
整个激活过程贯穿整个网络,直到它突破输出结点。输出结点会以人类可理解的方式给出信息。程序员的设计的网络会使用成本函数对输出值和预计输出值进行对比,并对模型的表现进行评估,表示为真实值和预测值之间的差异。针对各自网络的具体错误,有不同类型的成本函数可供选择。程序员要尽量减少使用损失函数。从本质上讲,损失函数得出的值越低,得到的结果就越接近预期值。获得信息反馈后,神经网络会通过调整权重的方式学习尽可能少使用损失函数的方法。这个过程叫做反向传播。
在前向传播中,信息进入输入层,通过网络传播以获取输出值,将这个值和预期结果进行对比。接着计算错误,再使信息反向传播。这样做既能训练网络,又能更新权重。得益于算法设计,程序员可以通过反向传播的方式实现同时调整所有权重。这样如果出现任何错误,就能找到是网络的哪部分在负责。
将权重调整到最优级别,我们进入下一步测试阶段。
图|Yogendra Singh 图源|Pexels
人工神经网络是如何学习的呢?
想让程序按你的意愿行事,有两种方法。第一种是硬植程序(hard-programmed)。直接告诉程序你想让它为你做什么。第二种就是神经网络。给它输入信息以及期待的输出信息,让它自己去学习。
让网络自己学习就省去了输入规则这个步骤。一旦网络训练成熟,给它一张图片就能轻松区分输出信息。
前馈和反馈网络
前馈网络包括输入数据、输出数据以及隐藏的筛选层。信号只能单向传播(向前)。输入数据经过不断进行计算的筛选层,每个处理元素都根据输入数据的权重总和来进行运算,其结果就变为新的输入数据进入到下一个筛选层(前馈)。前馈网络常用于数据挖掘中。
如循环神经网络之类的反馈网络有反馈通道。这意味着信号能通过循环进行双向传播。所有神经元都可以随意进行连接。因为循环的参与,这种类型的神经网络变为一种非线性的动态系统,不断变化直到达到一种平衡。网络为互相连接的各个元素寻找最佳安排方案时,通常用反馈网络来找到问题的最优解。
什么是加权和?
神经元的输入数据可以是一组数据特征,也可以是上一个筛选层里神经元的输出数据。每两个神经元之间有一种特殊的突触,并有其特殊的权重。若数据要从一个神经元传输到另一个神经元,必须要经过突触,给“过路费”(权重)。对于突触传来的输入数据,神经元会应用激活函数到加权和,并将计算结果传输到下一层的神经元。在谈论在一个网络中更新权重时,通常是指在突触环节调整权重。
神经元的输入数据是上一个筛选层所有神经元产出的调整权重后的输出数据。与当前神经元相连接的突触会有权重,每个输入数据会与之相乘。如果上一个神经元有三个输入数据或神经元,当前筛选层的每一个神经元就会有三个不同的权重:每个突触都有不一样的权重。
长话短说,一个结点的激活函数决定该结点的输出数据。
激活函数(或转换函数)将输入数据转换成输出数据,在一定范围内映射输出数据,比如0到1或者-1到1。在细胞里,激活函数通常被看作动作电位发放率的抽象形式。其数字代表了神经元发射的可能性。简而言之,这个函数是二元的,只有是(神经元会发射),或否(神经元不会发射)两种情况。输出数据要么是0或者1(代表开或关,是或否),要么是范围内的任何值。如果图像中的物体是一只猫,定义在0到1之间,比如说,输出数据是0.9就代表有90%的几率证明图像中的物体是一只猫。
如何选择?有很多激活函数,下文举四个常用例子:
阀函数(Threshold Function)
这是一个阶梯函数。如果输入数据的总和达到阀值,该函数结果为0。如果总和大于等于0,那么函数结果为1。阀函数的结果非常客观,只有是非之分。
例:阀函数
双弯曲函数(Sigmoid Function)
该方程通常应用于逻辑回归。与阀函数不同的是,它是从0到1的缓慢发展。双弯曲函数在输出数据的筛选层非常实用,也广泛用于线性回归。
例:双弯曲函数
双曲线正切函数(Hyperbolic Tangent Function)
双曲线正切函数和双弯曲函数非常相似。但其不同点在于,双弯曲函数的范围是从0到1,它的值可以小于0,也就是说它的范围在-1到1之间。虽然这和人脑的工作方式不太一样,但使用双曲线正切函数来训练神经网络可以得到更好的效果。在使用双曲线函数时,神经网络有时候会突然卡住,特别是输入数据中有很多负数,输出数据接近0的时候,会扰乱网络的学习进程。
例:双曲线正切函数(tanh)
线性整流函数(Rectifier Function)
在神经网络宇宙中,这可能是最受欢迎的激活函数了。它效率最高,并且在生物学角度上也是可行的。虽然曲线上有一个节点,但节点之后的曲线是平滑并且缓慢发展的。也就是说,输出数据要么是0,要么是一定比例的“是”。线性整流函数不需要进行标准化或者其他复杂的计算。
例:线性整流函数
假如说预期值是以二进制表示的,要么是,要么否。你想使用哪个激活函数呢?
从上述例子,你可以使用阀函数或双弯曲函数。阀函数会给出“是”或“否”的反馈(对应1或0)。双曲线函数会给出“是”的可能性。
如果使用双曲线函数来决定图像是一只猫的概率,比如说,输出数据0.9就表示有90%的概率证明图像上就是一只猫。
图|minanafoto 图源|Pixabay
如何调整权重?
硬刚也不是不可以,但即便是只有5个值的输入数据和一个隐藏的筛选层,也有10??种可能的组合方式。
世界上运算最快的超级计算机的计算时间也会超过宇宙存在的时间。
梯度下降闪亮登场
如果使用梯度下降算法,可以查看权重斜率的角度,找出正负,再顺藤摸瓜找到最佳权重,以达到全局最小值。
摄影|RANJAN SIMKHADA 图源 |Pexels
梯度下降算法能算出一个函数的最小值。就好比困在山顶的人试着下山(找到最小值),路上迷雾重重,根本看不见道,这种情况下梯度下降就能派上用场。看着陡峭的山坡,沿着坡度最大的方向继续走,可以假设这样的陡坡也不是立马就能看清楚的。幸好,有梯度下降这个工具可以帮助测量!
然而,使用这个工具时间太久了。
她想在天黑之前下山,尽可能少使用这个办法。真正的挑战是多久使用一次梯度下降函数来确保不会迷路。
在这个例子中,主人公就是算法。山坡的倾斜度就是该点所在平面的错误值。小人前进的方向就是平面错误的倾斜度。她使用了微分法来帮助自己解决问题,平面的坡度可以通过该点错误函数平方的衍生结果来进行计算。小人使用另一种测量方法之前的速度就是这个算法的学习速度。虽然这个比方不是完全恰当的,但它能让读者对梯度下降算法有一个大概了解。机器也在学习这个梯度下降算法(方向),或许模型可以采用这种方法来降低错误率。
坡度下降算法(简化版!)
坡度下降算法要求成本函数呈凸字型,但万一不是呢?
现在呢?
一般来说,梯度下降算法会限于本地最小值而不是全局最小值,导致最终的网络低于平均值。这种情况下,通常将每一行的数据输入到同样的神经网络,先看一眼权重是多少,再进行调整。这个过程叫做批量梯度下降。在随机梯度下降法中,需要逐行检查,输入进神经网络,调整权重,再换到下一行。也就是说你要一行一行地调整权重。
随机梯度下降法波动更大,这样能帮助定位全局最小值。顾名思义,样本顺序是随机的,而不是一个数据集中单独的数据组。虽然看起来可能会很慢,但实际操作起来速度很快,因为不需要把所有数据都导入内存再等所有数据一起运行。这个方法最大的优势就在于它是确定性算法。也就是说如果每次初始权重都一样,每次运行网络得到的结果都是一样的。随机梯度下降法永远都是在随机的状态下运作,也可以用体量较小的数据用梯度下降的方式来计算,在同一时间运行很多行数据,再更新权重。
程序员们提出并使用了很多改进随机梯度下降法的算法,包括隐式更新(ISDG)、动量算法、平均随机梯度下降法、自适应梯度算法(AdaGrad),均方根传播算法(RMSProp),自适应动量法(Adam),等等。
下面总结一下用随机梯度下降法训练人工神经网络的技术要点:
?随机生成权重,其值为接近0的小数字。
?将数据集的首次观察数据当作输入数据导入筛选层,保证每一个输入节点都保留数据特征。
?前向传播——从左到右,每个神经元的激活都受制于权重,在没有得到预测结果之前一直进行这个过程。
?将预测结果和实际结果相比较再对生成的错误进行评估。
?反向传播——从右到左,错误是反向传播的。权重会根据各自对错误的占比不断更新。(机器学习的速率决定更新权重的频率)。
?强化学习(重复步骤1—5,每次观察后更新权重),或者批量学习(重复步骤1—5,但完成一批数据的观察后再更新权重)。
?当整个测试数据组都通过了人工神经网络后,就能打开新世界的大门。重复上述步骤,开启更多大门吧。
留言 点赞 发个朋友圈
我们一起分享AI学习与发展的干货
如需转载,请后台留言,遵守转载规范
课堂深度学习的四个步骤
书,是知识的源泉,是人类进步的阶梯。要跟上时代发展的步伐,就必须不断读书,不断充实自己。书给我们带来了遐想和乐趣,书给我们带来了智慧的源泉和精神的力量。读书能增长知识,开阔眼界;读书能明白事理,增强能力;读书能陶冶性情,德润人心沿着书籍构成的阶梯,学做人,学做事,攀上一个又一个科学的高峰。争取不断超越,走向卓越。 “开卷有益,读书好处多”这是自古以来人们的共识.每一个人要想在知识的山峰上,登得越高,眼前展现的景色越壮阔,就要拥有渊博的知识.知识是人类通向进步文明和发展的唯一途径.书是前人劳动与智慧的结晶.它是我们获取知识的源泉.我们要让自己变得聪明起来,必须多读书,读好书. 读书不仅可以使我们开阔视野,增长知识,培养良好的自学能力和阅读能力,还可以进一步巩固课内学到的各种知识,提高我们的认读水平和作文能力,乃至对于各科学习,都有极大的帮助。 我们的知识体系是通过课内外的自主学习而逐渐建立起来的。读书是搜集和汲取知识的一条重要途径。我们从课堂上掌握的知识不是很具体和容易理解的,需要再消化才会吸收。大量的阅读,可以将自己从课内学到的知识,融汇到从课外书籍中所获取的知识中去,相得益彰,形成“立体”的,牢固的知识体系,直至形成能力。 读书不仅对我们的学习有着重要作用,对道德素质和思想意识也有重大影响。“一本好书,可以影响人的一生。”这句话是有道理的。我们都有自己心中的英雄或学习的榜样,如军人、科学家、老师、英雄人物等。这些令我们崇拜或学习和模仿的楷模,也可以通过阅读各类书籍所认识。我们在进行阅读时,会潜意识地将自己的思想和行为与书中所描述的人物形象进行比较,无形中就提高了自身的思想意识和道德素质。 苏联著名教育家苏霍姆林斯基说得好:“如果学生的智力生活仅局限于教科书,如果他做完了功课就觉得任务已经完成,那么他是不可能有自己特别爱好的。”每一个学生要在书籍的世界里,有自己的生活。把读书,应视为自己的乐趣。 有的同学可能会说:功课那么多,作业要完成,那有时间看书?其实只要你肯挤时间来读书,就不愁没有时间。就像大文学家鲁迅先生说的: “时间就像海绵里的水,只要你愿意挤,总是有的。”他自己就是把大家喝咖啡、谈天的时间,用在了学习上。最终鲁迅写出了许多好文章,取得了举世瞩目的伟大成就。我们可以用午休、放学做完功课以后、节假日等点滴时间来读书。每天一小时,积少成多,积沙成塔。 书,是我成长道路上的启明灯,它不仅为我提供丰富的精神粮食,还陶冶了我的品格,使我懂得应该做一个怎样的人。同学们:“同沐四季风,共享读书乐”让我们与书交朋友吧!让读书之花,盛开四季校园。 同学们,我方观点始终不变,那就是“开卷有益”。大家都十分熟悉唐朝诗人杜甫的名言:“读书破万卷,下笔如有神。”书是人类智慧的结晶,书是人类历史经验的总结,书是社会生活的反映。读书可以彻悟人生的意义,读书可以洞晓世事沧桑,读书可以广济天下民众,读书可以步入智慧的殿堂。自古以来,人欲成才,士欲济世,务必读书。只有饱览群书,方可成人成才。乙方怎能说“读书无益”呢? 乙方A: 我们提请男方辩手注意,不要混淆我方观点,我们说“开卷未必有益”,并不是说不要读书,而是采取正确的读书方法。你方只说“开卷有益”,可知书有好书,也有坏书,甚至有“毒书”,怎么能够不加选择地打开就看呢?况且,那些《乌龙院》《爆笑西游》《冬至之雪》之类的所谓漫画书,看上去特别对我们小学生的胃口。你想,眼睛盯着一动不动,内容不健康,视力又下降,怎么行?更不必说那些关于情杀、算命和恶意调侃历史人物的有不良倾向的书,对我们这些孩子影响极坏,实在是不开卷为妙。 甲方B: 古人云:“宁可食无肉,不可居无竹。”竹者,风雅之士也。这也就是说,我们可以一日不吃肉,不可以一日不读书。书是人类精神的营养品,可以让我们意志坚强,品行高尚。只要注意用眼卫生,看上半个小时休息一下就行了。同时,我们只要注意起来,看书到正规的书店里去看,就不会看到思想不健康的书了。 乙方B: 对方的观点我们还是不能接受。原因有两点:一是现在的书店受场经济的影响,竞争激烈。一些不法书商为了赚钱,丧尽天良,夹杂一些不健康的书,甚至是黄色书刊。二是我们小学生年龄小,力不强,看到这类的书经不起诱惑,甚至还会废寝忘食,手不释卷。一旦迷上,便会走火入魔,上课也没有心思,成绩会一落千丈。有的甚至模仿书中的人物,因此走上犯罪道路。这不证实我方的观点:“开卷未必有益”,甚至有害了吗? 甲方C: 开卷倒底有没有益,我想让事实说话。古今中外,哪一个卓有成效的人不曾千万次开卷?正是因为开卷读书,他们成名成家,成就非凡。孔子读书破万卷,编写修订了《诗》与《书》;司马迁读书破万卷,写成了《史记》彪炳千秋;李白读书破万卷,斗酒诗百篇;鲁迅、郭沫若读书破万卷,成为中国现代文学的巨匠……高尔基说得好:“书籍是人类进步的阶梯。”多读书增长知识,使人聪慧,已经成为铁的事实。英国哲学家培根有句名言:“史鉴使人明智,诗使人巧慧,数学使人精细,博物使人深沉,伦理使人庄重。”这诸多意思,可一言以蔽之:开卷有益。如果我们不读书,哪来的知识?更何况,关于读书有益的名言数不胜数。大家说一说,这么多的名人、伟人总结出来的经验,难道不能充分说明“开卷有益”吗? 乙方C: 我方不得不佩服甲方辩手转移辩题的本事。但是,男方辩手用了许多名言,并不能掩盖我们正确的观点,相反证明了我方观点的正确。如果孔子、司马迁、李白、鲁迅和郭沫若等这些先贤们不是读了思想健康,弘扬中华民族优秀传统的好书,而是读书了那些毒害人的坏书,他们能成名成家吗?汉代的思想家刘向曾经说过:“书犹药也,善读之可以医愚。”他的话多么准确生动啊!书既然是一味药,它就具备了两种功能:一是良药,劝诫人生,医治愚昧,向善向美,服了就自然会药到病除,使人清醒,品行高洁,理想远大;一是毒药,迷惑人生,更加愚昧,向丑向恶,使人狂妄,德行低下,胸无大志,甚至置人于死地。难道不是这样吗?有位哲人曾说过,能够摄取必要营养的人,才是智者。因此,我方始终认为:在阅读过程中,一定要学会选择书。坚决不去读那些有害的书籍,切不可盲目迷信名言,用什么“开卷有益”来糊弄自己;更不可以抱着所谓的“猎奇” 心态,什么书都读。这样的开卷,非但无益,而且祸害无穷。(掌声) 回答者:paipailili - 经理 四级 9-19 18:29 我认为开卷有益。高尔基说过:“书籍是人类进步的阶梯。”多读书,就会增长知识。爱迪生不就是一个例子吗?他读了很多书,从中得到了启发,又进行了大量的实践,才发明出来电灯。 世界名人培根说过:“史鉴使人明智,诗使人巧慧,数学使人精细,博物使人深沉,伦理之学使人庄重。”这诸多意思,可一言以蔽之:开卷有益。如果我们不多读书,哪来 的这么多知识呢?如果没有了知识,我们怎样辨别人们谁是谁非呢? 书是历史经验的总结,书是社会文化的结晶。读书,可以彻悟人生道理;读书,可以洞晓世事沧桑;读书,可以广济天下民众。如果我们不多读书,哪来的丰富词语去写作文呢? 开卷,获益甚多。他写《资本论》时,就读了一千余册的自藏书,还到大英博物馆看了三间子的书。如果不开卷读书,可能就写不出《资本论》来了。 杭州四中高二学生文晔从小至今开卷读书。不仅知识面广,文理兼优,还在多家报刊发表文章30余篇,征文获奖五次。一个年方17的学生能有如此成就,不足以说明“开卷有益”吗?人欲成才,士欲济世,务必开卷读书。 我们读书多了,看到那些对我们身心不健康的书,一读就辨别出来了,就不会再看,再。 “读书破万卷,下笔如有神。”又如“读万卷书,行万里路。”读书是有好处的。希望同学们快快行动起来吧! 开卷有益! 正方:开卷有益 在这个信息化的世界里,读书是我们获取知识的只要途径之一。多读书可以拓宽我们的知识量,丰富我们的文学修养,对日后的说和写都有很大的帮助。 我们的知识就像水库,大量的阅读使我们的水库能够保持储存大量的知识,而我们在补充知识的同时,知识也在不停的往外泄漏。这时,如果我们停止读书,或者读的书少了,水库的水很快就会枯竭。只有不停的、丰富的课外阅读,才能使自己的知识见见丰富,而不会大量流失。大量的知识可以给你的作文提供足够的素材,不然你憋半天也就才写出那么几句毫无疑义且重复罗嗦的话。
追问 : 感谢大师指点,感激不尽。