阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

深度学习究竟是个啥?

  • 2016-01-05
  • 本文字数:1868 字

    阅读完需:约 6 分钟

“当我每次解雇一名语言学家的时候,那么语音识别的性能就在上升”。
——IBM 的 Frederick Jelinek

如果说语言学家代指机器学习和固定的模型结构,那么深度学习意味着专家整体性能的提高。

深度学习是一个本质上引人入胜的主题,非常令人憧憬。Michel Herszak 在 LinkedIn 写了一篇博客,谈到了其对于深度学习的理解。

深度学习简述

深度学习已经在计算机视觉、语言识别和自然语言理解等多个领域取得了巨大的成就。深度学习的概念源于人工神经网络的研究。深度学习结构包含一个多隐层的多层感知器。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。

深度学习的概念由 Hinton 等人于 2006 年提出。基于深度信念网络 (DBN) 提出非监督贪婪逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构。此外 Lecun 等人提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能。

深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。深度学习就是一种特征学习方法,把原始数据通过一些简单的但是非线性的模型转变成为更高层次的,更加抽象的表达。

深入介绍深入学习

深入研究深度学习,发现其包含三个核心概念:多层组合、端到端的学习和分布式表示。

多层组合

多层表示更符合人类的学习方式,神经网络作为其中的一种,可以从一个单一的感知输入中产生多种理解,例如一个单词的发音(与其类比,深度学习具有惊人的相似)。从一个单词的发音到大脑的理解之间存在多个隐层,这与深度学习的过程很一致。多层表示中最令人兴奋的一件事情就是,原来在处理数据分类任务的时候,是通过数据科学家建模神经网络,而现在他们可以自动生成数据模型。

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

端到端的学习

在早期的深度学习中,关于语音识别的很多早期工作都存在一个问题,即各层表示之间的连接太密集。这个问题,Google 的语音 API 也遇到过,它会导致系统的过拟合问题。

今天,深度学习是一种端到端的学习方式,整个学习过程中不需要中间的和显著的人类参与。直接把海量数据投放到算法中,让数据自己说话,系统会自动从数据中学习。从输入到输出是一个完全自动的过程。

同样,可以再次将其再次与人类大脑随着时间的发展进行类比,这些变化影响了人们对于信息的提取方式。

分布式表示

深度学习算法本质上是分布式概念的应用。分布式表示背后的想法是,观察到的信息是众多因素协同工作所产生的结果。它将堆积如山的数据转化为数据流的组合。

这里举一个简单的例子:假如你想用一台电脑存储有关车辆的数据。

  • 首先,你有一辆大的蓝色福特汽车。
  • 其次,你有一个巨大的白色大众汽车。
  • 第三,你有一辆闪亮的 McQueen 汽车。
  • 第四,你有一个大的红色的 Vauxhal 汽车。

通过这种方式,你需要将所有数据存储到一个单一的存储单元中。当有一台新的车辆数据要加入的时候,需要加载数据单元的整个负载。这似乎不是很高效。

那么想象一下存储这些车辆的一种新方式。事实上,可以使用三个存储单元:一个用来描述尺寸(小型、中型、大型灯),一个用来存储颜色,最后一个存储品牌。这样就可以存储想要的所有车辆,都有非常相同的三个存储内存单元。这种工作方法是分布式表示的一个例子。从最基本的意义上讲,这代表了神经元一起工作的方式。而且它是深度机器学习的一个高效的例子。

总之,深度学习是关于自动学习要建模的数据的潜在(隐含)分布的多层(复杂)表达的算法。换句话来说,深度学习算法自动的提取分类需要的低层次或者高层次特征。Deep learning 能够得到更好地表示数据的特征,同时由于模型的层次、参数很多,能够具备足够强的表示能力。当然,deep learning 本身也不是完美的,也不是解决世间任何机器学习问题的利器。


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2016-01-05 18:005551
用户头像

发布了 268 篇内容, 共 118.1 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

Java教程百度云最新版,java写脚本教程视频,程序员必须要了解的知识点

Java 程序员 后端

第1周作业

波波

「架构实战营」

Java开发自学技巧!极客学院百度云资源,2021最新Java笔试题目

Java 程序员 后端

Java开发视频教程,linux使用教程,BIO和NIO有啥区别

Java 程序员 后端

Java性能优化最佳实践,mybatis入门视频

Java 程序员 后端

Java开发自学教程!尚学堂java,我被面试官绝地反杀了

Java 程序员 后端

Java开发面试基础,java架构师全套百度网盘,Java基础面试重点

Java 程序员 后端

Java日常开发的12个坑,你踩过几个,一招让你拿下seata分布式事务框架

Java 程序员 后端

Java开发者跳槽面试,尚硅谷java课程,netty框架面试题

Java 程序员 后端

Java开发面试题!牛客网java开发高频面试题,让我成功在寒冬中站稳脚步

Java 程序员 后端

Java数据处理的常用技术,springboot源码解读与原理分析

Java 程序员 后端

Java开发面经分享,springboot项目案例百度云,实战篇

Java 程序员 后端

Java开发面试基础,牛客网客户端,【面试总结】

Java 程序员 后端

Java技术基础知识总结,菜鸟教程mysql,Java重要知识点

Java 程序员 后端

Java教程视频百度网盘,小甲鱼数据结构百度云,腾讯Java面试题

Java 程序员 后端

云栖收官:想跟远道而来的朋友们说

阿里巴巴云原生

云原生 云栖大会 收官 致谢

Java开发还不会这些,极客学院和黑马,进阶学习工作最全指南

Java 程序员 后端

Java排序算法面试,黑马java项目一,springboot实战项目源码

Java 程序员 后端

Java开发究竟该如何学习,年末阿里百度等大厂技术面试题汇总,程序员翻身之路

Java 程序员 后端

Java开发者应该会哪些东西才不会被公司淘汰,美团Java面试

Java 程序员 后端

Java开发经验的有效总结,以商品超卖为例讲解Redis分布式锁

Java 程序员 后端

模块一作业

心怀架构

阿里云重磅发布业务中台产品 BizWorks,中台发展进入下一个阶段

阿里巴巴云原生

阿里云 云原生 业务中台 云栖大会 BizWorks

Java微服务架构图,nginx视频教程百度云,学习指南

Java 程序员 后端

Java技术成长,kafka学习教程,Java开发者面试如何系统复习

Java 程序员 后端

Java教程百度云最新版,极客时间vip年卡,Java开发者面试如何系统复习

Java 程序员 后端

Java数据结构面试题,java架构师指南下载百度,Java工程师面试题及答案

Java 程序员 后端

Java开发经典实战!自学java教程百度云盘,阿里程序员的Java之路

Java 程序员 后端

Java开发经验谈,linux视频教程百度网盘,逆袭面经分享

Java 程序员 后端

Java开发者跳槽指,牛客网算法初级班,春招我借这份PDF的复习思路

Java 程序员 后端

Java开发还会吃香吗,Java微服务架构从入门到精通

Java 程序员 后端

深度学习究竟是个啥?_语言 & 开发_张天雷_InfoQ精选文章