传统机器学习解决问题的一般思路为:

数据获取→\to→ 预处理→\to→ 特征提取(表达)→\to→ 特征选择→\to→ 推理、预测、识别

其中的 特征提取(表达) 部分对最终的算法准确性起着非常关键性的作用,而系统主要的计算和测试工作都消耗在这一部分。但实际中这一部分一般都是人工完成的,即人工提取特征。

手工提取特征费力且需要经验、专业知识和运气,难以得到好的特征,因此思考让计算机自动学习特征,即 深度学习

人脑视觉机理

近几十年以来,认知神经科学、生物学等学科的发展促进了人工智能的发展。而关于人的视觉信息系统:

(1)人的视觉系统信息处理是分级的;
(2)高层特征是低层特征的组合,而抽象层面越高,存在的可能猜测就越少,就越利于分类。

这个生理学的发现,促成了计算机人工智能的突破性发展。

特征表达

而深度学习,则是让机器自动学习良好特征的过程,参考人的视觉分层处理系统,即深度学习需要更多层来获得更抽象的特征表达。

深度学习的基本思想

假设有一个系统 SSS,有 n 层 (S1,S2,⋯,Sn)(S_1,S_2,\cdots,S_n)(S1​,S2​,⋯,Sn​),输入为 III,输出为 OOO,则可表示为:

I⇒S1⇒S2⇒⋯⇒Sn⇒OI\Rightarrow S_1\Rightarrow S_2 \Rightarrow\cdots\Rightarrow S_n\Rightarrow OI⇒S1​⇒S2​⇒⋯⇒Sn​⇒O,

若输出 OOO 等于输入 III,即输入 III 经过这个系统变化之后没有任何的信息丢失。

深度学习需要自动地学习特征,有一堆输入 III(如一堆图像或者文本),假设我们设计了一个系统 SSS(有n层),通过调整系统中参数,使它的输出等于输入 III,那么我们就可以自动地获取得到输入I的一系列层次特征,即 (S1,S2,⋯,Sn)(S_1,S_2,\cdots,S_n)(S1​,S2​,⋯,Sn​)。输出 OOO 严格等于输入 III,这个限制太严格,可略微放松,只要使得输入与输出的差别尽可能小即可。

深度学习的思想就是堆叠多个层,也就是说这一层的输出作为下一层的输入。通过这种方式,就可以实现对输入信息的分级(hierarchical)表达

深度学习

传统的多数分类、回归等学习方法为浅层结构算法,其局限性在于有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力受到一定制约。深度学习可通过学习一种深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式表示,并展现了强大的从大样本中集中学习数据集本质特征的能力。而使用多层网络的好处是可以通过多层叠加表示复杂函数

深度学习的实质,是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。即利用“深度模型”这一手段来实现“特征学习”的目的

深度学习与传统浅层学习的不同

(1)深度学习强调模型结构的深度,通常至少有5层、6层,甚至10多层的隐层节点;
(2)深度学习明确突出特征学习的重要性,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,使分类或预测更加容易。与人工规则构造特征的方法相比,利用大数据学习特征,更能够刻画数据的丰富内在信息。

但相较于传统方法,其也存在着劣势:
(1)比较容易过拟合,参数比较难调整,而且需要不少窍门;
(2)训练速度比较慢,在层次比较少(小于等于3)的情况下效果并不比其它方法更优。

深度学习与 神经网络的异同点比较:
相同点:深度学习采用了神经网络相似的分层结构,系统由包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,每一层可以看作是一个逻辑回归模型;这种分层结构,比较接近人类大脑的结构。

不同点:传统神经网络中,采用的是反向传播(BP)算法进行训练。即采用迭代的算法来训练整个网络,随机设定初值,计算当前网络的输出,然后根据当前计算的输出值和实际的标记值之间的差去改变前面各层的参数,直到收敛(整体是一个梯度下降法)。但深度学习整体上是一个layer-wise的训练机制。避免层数多时残差出现所谓的gradient diffusion(梯度扩散)。

BP算法作为传统训练多层网络的典型算法,实际上对仅含几层网络,该训练方法就已经很不理想。其对深度网络的训练存在一些问题:(1)梯度越来越稀疏:从顶层越往下,误差校正信号越来越小;(2)收敛到局部最小值:尤其是从远离最优区域开始的时候(随机值初始化会导致这种情况的发生);(3)只能用有标签的数据来训练:但大部分数据是没标签的,而大脑可以从没有标签的数据中学习。

对于深层模型的训练,通常采用BP算法来更新网络参数。但是需要对网络参数进行很小心的初始化,以免网络陷入局部最小点。

深度学习的具体模型及方法

1.自动编码器( AutoEncoder )

2.稀疏自动编码器( Sparse AutoEncoder )

3.降噪自动编码器( Denoising AutoEncoders )

4.受限波尔兹曼机( RBM,Restricted Boltzmann Machine )

5.深度信念网络( Deep Belief Networks )

6.卷积神经网络( Convolutional Neural Networks )

7.生成对抗网络( GAN )

从机器学习到深度学习相关推荐

  1. 1-1 机器学习和深度学习综述-paddle

    课程>我的课程>百度架构师手把手教深度学习>1-1 机器学习和深度学习综述> 1-1 机器学习和深度学习综述 paddle初级课程 王然(学生) Notebook 教育 初级深 ...

  2. 资源 | AI、神经网络、机器学习、深度学习以及大数据学习备忘单

    向AI转型的程序员都关注了这个号☝☝☝ 以下是关于神经网络.机器学习.深度学习以及大数据学习的备忘单,其中部分内容和此前发布的<资源 | 值得收藏的 27 个机器学习的小抄>有所重复,大家 ...

  3. 超全!CS 顶会历届最佳论文大列表,机器学习、深度学习一应俱全!

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 工欲善其事必先利其器!今天给大家推荐一份非常棒的资源,该资源罗列收集了 CS 顶会历届 ...

  4. 认认真真推荐几个机器学习、深度学习公众号

    "三人行,必有我师焉",学习就是要从别人身上学到好的.今天特意给大家推荐10个优质公众号,目前属于活跃度非常高的几个原创公众号,涵盖了python和AI,重点是他们还坚持在原创技术 ...

  5. 深度学习“四大名著”发布!Python、TensorFlow、机器学习、深度学习四件套(附免费下载)...

    Python 程序员深度学习的"四大名著": 这四本书着实很不错!我们都知道现在机器学习.深度学习的资料太多了,面对海量资源,往往陷入到"无从下手"的困惑出境. ...

  6. 使用Python,机器学习和深度学习的5个很棒的计算机视觉项目创意!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 计算机视觉属于人工智能领域,可以通过处理图像和图片来解决现实生活中 ...

  7. 揭秘人工智能、机器学习和深度学习的神秘面纱

    1 题记 AI.机器学习.监督学习.无监督学习.分类.决策树.聚类.深度学习和算法.深度学习.机器学习,人工智能--这些时下流行语代表着对未来技术的分析. 在这篇文章中,我们将通过现实世界中成熟的例子 ...

  8. 2021-03-28为什么用SCALA语言优势在哪里 Scala适合服务端、大数据、数据挖掘、NLP、图像识别、机器学习、深度学习…等等开发。

    Go适合服务端.桌面应用程序开发. Scala适合服务端.大数据.数据挖掘.NLP.图像识别.机器学习.深度学习-等等开发. Python适合做网络爬虫.自动化运维.快速地实现算法的原型. 但是Pyt ...

  9. 【重磅干货】Python、机器学习、深度学习算法实战和应用必备书籍

    [导读]首先祝大家中秋佳节快乐,乘此良辰美景,今天就给大家发一波福利干货!本文给大家分享机器学习.深度学习算法实战和应用必备的4本"宝藏"书.具体书籍展示如下:(文末提供下载方式! ...

  10. 机器学习、深度学习、自然语言处理、计算机视觉顶级期刊的论文资料分享(附顶会论文下载链接)...

    推荐一个Github项目,项目整理了机器学习.深度学习.自然语言处理.计算机视觉等领域的顶会论文全集.超级赞!!! Github项目地址:https://github.com/murufeng/awe ...

最新文章

  1. A typical memory leak
  2. Oracle配置OneMap中的sql数据库问题及解决方案
  3. redmine2.4.2 插件安装
  4. 7-26 有重复的数据I (10 分)
  5. php对象比较大小,PHP 面向对象:对象的比较
  6. [原创]状态值在数据库中的检索
  7. .NET 面向对象基础
  8. zoj 2526(一道很好的最短路应用题)
  9. lsof查找放进linux回收站中的删除文件,并彻底删除或恢复文件
  10. WP模板Ripro9.0免扩展二开版+全解密无后门
  11. 保千里智联宝机器人图_保千里打令小宝机器人落地机器人+ 新模式
  12. 别忘了看,今年中秋月亮“瘦”了!网友扎心了:我还没瘦…
  13. 【前端】PS图层切图
  14. 电池级碳酸氢锂除杂质钙镁离子工艺原理
  15. Executors.newFixedThreadPool(int threads)和Executors.newCachedThreadPool()
  16. 运维标准化与流程化建设深度指南(转)
  17. 龙芯2号处理器,龙芯2K1000芯片参数
  18. rewind java_具有rewind()/ reset()功能的Java文件输入
  19. windows下的谷歌翻译(Google Translate SDK)使用
  20. openxml的视频教程

热门文章

  1. 毕业论文Word排版专题
  2. 树莓派(0)C语言教材学习
  3. 微信安装包11年膨胀575倍,UP主:“98%的文件是垃圾”;苹果应用商店被曝大量色情App;四大科技巨头呼吁废除闰秒|极客头条
  4. 计算机二级题库office基础知识,计算机二级office题库
  5. catia逆向建模步骤_catia逆向工程应用
  6. WMS仓储管理系统解决方案
  7. 数据结构课设:仓库管理系统(C++)
  8. office2016+visio2016
  9. kali-TheFatRat木马生成工具安装及简单使用
  10. a byte of python2微盘_《A Byte of Python》与《简明 Python 教程》PDF版