深度学习的新世界(入门篇)

编程将成为像阅读一样的基本技能?

看起来更高深的人工智能与深度学习呢?


深度学习的新世界

The New World of Deep Learning

深度学习,

这个近年来炙手可热的新鲜事物,

相信各位并非第一次听说。

深度学习是什么?与AI等关系如何?前景如何呢?


01

先从它的基友们说起吧,

他们是人工智能机器学习

他们的基友关系大概是这个样子

第一次提出人工智能

是在1956年在美国举行的达特茅斯会议上,

一群异想天开的大神

咯,就是这帮“怪咖”。
每个单拎出来都是某个领域的“祖师爷”,服气!

提出了人工智能,

想让计算机像人一样思考。

不过,当时大家都以为人工智能是个不切实际的“玩意”,

AI≈“虾扯”

直到机器学习的问世。

什么是机器学习?

机器学习就是让计算机模拟或实现人类的学习行为,

进而解决一系列问题的学科。

史载,

蓝色巨人18摸有个塞缪尔,

木得女朋友,

也木有智能手机打游戏、刷抖音,

整出了个跳棋程序。

该程序能够通过观察并学习一个隐含的模型,

从而为后续动作提供更好的指导,

也就是让机器拥有了模仿与思考的学习能力,

这就是“机器学习”。

机器学习作为实现人工智能的手段,

自20世纪80年代以来,

得到了重大发展。


02

但是,

机器学习也有很大的局限性。

传统机器学习主要是由一个输入层和一个输出层组成浅层神经网络,

在神经网络里绘制出一组虚拟神经元,

然后给他们之间的链接分配随机数值或权重,

经由反复的训练来实现误差最小化。

但是早期的神经网络只能模拟为数不多的神经元,

所以不能识别太复杂的模型。

而深度+学习拥有多个节点层,

让深度神经网络能够以分层的方式学习数据的特征,

动用深层人工神经网络进行机器学习。

深度学习神经网络简单示意图

在深度学习网络中,

每个节点层在前一层输出的基础上

学习识别一组特定的特征。

一旦这一层神经元准确的识别了这些特征,

数据就会被输送到下一层,

并自我训练以识别更复杂的特征。

举个栗子——数学学习,

我们小学阶段学习加减乘除,

中学阶段学习一元一次,

高中学习一元二次、极限等,

每层都是在前一层输出的基础上学习识别下一层的特定特征,

学到了更加复杂的数学知识。

敲黑板了!

深度学习是学习样本数据的内在规律和表示层次,

这些学习过程中获得的信息,

对诸如文字、图像和声音等数据的解释有很大的帮助。

它的最终目标

是让机器能够像人一样具有分析学习能力,

能够识别文字、图像和声音等数据,

深度学习是一个复杂的机器学习算法。


03

深度学习出现后,

在视觉和自然语言处理领域取得了突破性进展。

计算机视觉(CV)

CV是深度学习中最受欢迎的领域,

主要的应用领域这几类

① 图像分类

计算机视觉中最基础的一个任务,

核心是从给定的分类集合中给图像分配一个标签的任务。

图像分类基于图像的内容对图像进行标记,

通常会有一组固定的标签,

而模型必须预测出最适合图像的标签。

这对于机器相当困难,

因为它看到的只是图像中的一组数字流。

② 对象检测

对象检测是定义图像中存在的对象,

对其进行标记并输出边界框的过程。

想象一个装满货物的仓库,

如果带摄像头的机器人可以检测所有物体并对其进行跟踪,

将节省大量时间和提高工作效率。

③ 图像分割

图像分割是计算机视觉中的基础任务,

它将整个图像分割成像素段,

然后进行分类和标记。

更具体地说,

图像分割试图理解每个像素在给定图像中的重要作用。

图像分割主要包含3个小方向:

语义分割,实例分割,全景分割。

上图即为实例分割,

将每个人都作为不同的类别划分出来。

语义分割较为简单,将所有人都划分成同一个类别,

对比文中图片可视化出来就是用同一种颜色标出来人的。

全景分割=语义+实例,

实例分割只对图像中的目标物体进行分割,

而全景分割是对图中的所有物体包括背景都要进行检测和分割。

④ 对象追踪

对象追踪是自动驾驶汽车中非常重要的应用,

跟踪给定场景中的一个或多个运动对象。

对象追踪通过数据关联和滤波两个子模块运行,


Generative(生成模型)和discriminative(辨别模型)是两类实现算法。

生成模型描述明显的特征,

减少搜索对象时重建中的误差。

判别模型被认为是相对更强大和准确的,

可以区分背景和主体。

⑤ 其他

除了这些,

还有许多其他的高级技术,

如影像重建、风格转换、动作识别、着色、人体姿态估计、3D对象等。

更深入的计算机视觉介绍详见下一篇文章

自然语言处理(NLP)

每种动物都有自己的语言,

机器也是!

NLP就是机器语言和人类语言之间沟通的桥梁,

以实现人机交流的目的。

NLP的两大核心任务:

一是自然语言理解,

希望机器像人一样,具备正常人的语言理解能力。

二是自然语言生成,

将机器非语言格式的数据转换成人类可以理解的语言格式。

“宝宝的经纪人睡了宝宝的宝宝”

对这种烧脑的“讲人话”,NLP理解乏力,

因为自然语言是没有规律的,

它们可以自由组合表达复杂的意思,

还能自创一些新的表达方式,

并要联系到实践知识和上下文。

除了视觉和自然语言处理外,

小爱同学等智能机器人,推荐系统

以及情感分析、语音识别、机器翻译等都是深度学习的典型应用。


04

讲了这么多,灵魂一问来了,

“深度学习有前(钱)途吗?”

我们先看整个AI。

按投资媒体IT桔子的报道,将AI产业链分为三层

基础层、技术架构层和应用层。

基础层包括数据、算力、传感系统等三大类,

代表企业有华为、百度、腾讯、浪潮等巨头公司,

还有寒武纪、明略数据这样的新兴明星企业。

技术架构层包括如机器学习、深度学习等通用技术,

还有算法模型、框架和操作系统。

代表企业包括商汤、旷视、科大讯飞、思必驰等。

应用层包括各种AI应用、解决方案及智能产品,

知名企业有如「AI 医疗」企业推想科技、「AI 教育」学霸君等。

但目前即使是头部AI公司,

自身造血和盈利能力有限,

AI领域引发关注的大规模落地应用不多,

且企业及政府对产业发展理解不透,

普遍高估并急于兑现AI的近期商业价值,

过热的AI风潮已明显降温。

回到深度学习,

作为AI的重要实现手段,

对于深度学习的现状与前景,

知乎网友的回复见仁见智。

知乎用户1

深度学习已经成为了基础设施,逐渐渗透进了各个你看不到的行业和领域。

深度学习过时了,但智能化,自动化的浪潮才刚刚开始。

无论是在学术界,还是在工业界,深度学习就是智能化浪潮的基础设施。

知乎用户2

深度学习随着计算机硬件的发展和一步步的研究,会渗入到社会各个领域。

知乎用户3

研究层面上,各方的态度已经很明显了,这就是第四次科技革命的引子,‘智人’彻底退出世界舞台。

工作层面上,前途一般。科技革命到来之前,很难落地,开拓出来的市场很小。

知乎用户4

不能以偏概全,需要找到深度学习的具体落地场景,不然吹嘘深度学习也没有实际的社会意义。

知乎用户5

深度学习少了很多泡沫,热度没有前几年那么高,但这是好事,行业回归理性,竞争环境才更加公平。


05

扎克伯格曾在一封请愿书中说:

“编程显然已成为了一项基本的技能,

是每个人都应该做的事情,就像阅读一样。”

未来的趋势也是如此,

少儿编程、Python已飞入寻常百姓家。

深度学习或许如同Python、Jave一样,

如同前文知乎网友预料,

成为一种“通用的基础技术”。

但目前阶段,

深度学习仍然是不错的“发paper”方向,

一起来看看行业内的顶级会议。

AAAI

美国人工智能年会

ICRA

机器人与自动化会议

CVPR

国际计算机视觉与模式识别会议

ECCV

欧洲计算机视觉国际会议

ICCV

国际计算机视觉大会

ICML

国际机器学习大会

ACL

国际计算语言学协会

h2 id="06">06

那么,小白如何入门深度学习呢?

根据知乎用户“马索萌”的建议,

可以分步走。

准备阶段

熟悉一门编程语言(python)

准备一台算力较强的电脑

数学基础(如微积分)

良好的心态

基础知识

阅读书籍系统了解深度学习

《Neural networks and deep learning》

小而精,深入浅出

《Deep Learning 》

更深入,更详细

实践巩固

找一个好用的主流框架(推荐 Pytorch),

把教程和示例代码跑一遍。

然后使用这套框架去解决你感兴趣的问题。

阅读经典的论文并复现实验。

将算法融入一个应用当中,

或者将深度学习算法融合到手机当中。

这个阶段你可能会遇到大量的问题,

这个时候你需要不断搜索、阅读,最终解决问题。

经历了这个过程,你所学的理论知识将得到检验。

发明创造,理论创新

解决前人解决不了的问题,

或者更好地解决问题,

提出新的认识世界的方法。

工程创造

轮子不需要被重新发明,

但需要重新创造,

可以尝试实现自己的深度学习框架。

看了大神的分享,

感觉深度学习好像也没那么难,

那么,行动起来吧!


07

如果对计算机视觉感兴趣,

可以了解下OpenVINO。

它是英特尔发布的针对AI工作负载的一款部署神器,

可支持计算机视觉的CNN网络结构超过150余种,

在X86上推断速度没有什么框架可以媲美。

OpenVINO和TensorRT类似,

是硬件厂商针对自家的硬件平台开发的一套深度学习工具库,

包含推断库、模型优化等等一系列与深度学习模型部署相关的功能。

通俗易懂点说想要在Intel-cpu或者嵌入式上部署深度学习模型,

之前使用libtorch或者tvm,

这个时候可以考虑考虑OpenVINO,

其针对Intel的多代CPU以及其他硬件平台做了针对的优化。

如果想系统学习OpenVINO,

可访问以下页面,

课程完全免费且可以获得认证证书,

还有幸运奖品。

(为了您的良好体验,建议您在PC端开启学习)


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/24829.html
分享到:
相关文章
条评论

登录后才可以评论

SDNLAB君 发表于21-04-14
1