阅读更多
【编者按】深度学习,作为人工智能研究中一个新的领域,其动机在于建立可以模拟人脑进行去分析学习,模仿人脑的逻辑去解释数据的神经网络。为了帮助大家能够更加系统化的学习该门课程,知识库特邀请了CSDN社区专家、知识库特邀编辑孙佰贵精心绘制了深度学习知识图谱。

点击进入深度学习知识库

与此同时,我们还采访了孙佰贵(博客地址:http://blog.csdn.net/sunbaigui)老师,分享他是如何与深度学习结缘以及技术层面的理解与思考。



孙佰贵

CSDN:请先简单地介绍一下自己。

孙佰贵:我叫孙佰贵,本科毕业于宁波大学,本科期间曾参加ACM编程竞赛取得最好成绩是省赛银奖,地区赛铜奖。
硕士毕业于浙大CAD&CG国家重点实验室,硕士期间主要研究方向是计算机视觉(图像分割、视频分割、视频2D转3D)。
硕士毕业后来到阿里巴巴工作至今,主要研究和应用方向为深度学习,包括图像分类、图像搜索、广告点击率预测,曾发表一篇ACMMM长文,论文地址http://arxiv.org/abs/1609.06018。在本科大一做ACM编程竞赛开始就坚持着写博客,在csdn上已经陆续写了7、8年。

CSDN:能否分享一下,你是如何与深度学习结缘,并从事这个领域的。

孙佰贵:在本科大三的时候接触到人工智能课程,对里面的手写数字识别尤其感兴趣,当时手写数字识别是用BP(深度学习的基石)网络去做,感觉非常酷。于是打算考研进修,因为觉得人机交互是人工智能普及的必经之路,所以读研期间选择了计算机视觉。

刚入职阿里巴巴工作时也找了图像方向的岗位,当时进到组里的时候,我对组里的各个业务方向还有技术方向都详细研究了下,由于我对人工智能一直有强烈的兴趣所以就选择了当时组里比较新的深度学习方向,然后我当时就成了阿里第二批做深度学习的人,第一批做的人很少,大概就几个,我师兄就是其中一个。

CSDN:在深度学习领域,目前有很多开源的工具和库,开发者该如何选择适合他们的深度学习框架?

孙佰贵:通常一聊到开源,大家首先会看这个开源代码写的性能是否足够好,代码风格是否足够好,支持的特性是否特别前沿。但是往往以上几点都有可能成为误区,一个真正好的开源是要有足够大的开发者人气的,并且它必须是易扩展的,然后还要是易移植的,其实只要有前两点,那这个开源库是一定会不停的更新,这点非常重要,很多开源一时热,但没有开发者基础,往往很容易就冷掉了。

好的开源也要是易移植的,因为工业上用开源的话,一般都会用到线上,这就要求这个开源必须是非常容易移植的,caffe在工业界比较受欢迎。

以上都是基于工业上的需求去选的,一般做学术的话可能会更加要求少量编程,所以一般theano,torch在学术界很受欢迎。

CSDN:如何利用高性能计算加速深度学习算法?

孙佰贵:现在深度学习的加速也是一个非常火热的研究方向,在硬件方面一般采用FPGA或者GPU进行加速,在算法方面一般采用并行计算去加速。

CSDN:目前Intel和Nvidia两家都砸重金押注深度学习,并在处理器、软件栈、生态建设等展开全方位布局,您对此有何评价?

孙佰贵:从商业上来讲,当前这两家在处理器、软件栈、生态建设等方面的布局其实可以看做是一个问题,那就是要卖处理器。早前,Intel专注于CPU,Nvidia专注于GPU分工比较明确,最早Intel在GPU领域有集成显卡,一般情况下也能满足个人的需求,所以导致Nvidia的市场份额一直都不大。近几年工业界在深度学习方面的突飞猛进式的研究与业务拓展,迎来了GPU的高需求期,Nvidia凭借其在GPU独立显卡领域的优势迅速提升了其销售额,也使得Nvidia的市值在最近提升了很多。

从深度学习生态上来讲,Intel在深度学习上的发力,使得工业界之后有更多的选择,也能加速深度学习硬件层面上的突破式创新,对于开发者来讲多了一种选择,这无疑是一种福音。

CSDN:从工程应用角度,您认为一个深度学习平台的易用性和效率哪方面更重要?

孙佰贵:这两者缺一不可,线上的性能效率往往直接决定了该应用能不能上线;然而易用性往往决定了迭代速度;在互联网里,应用的迭代速度与效率都非常重要。

CSDN:目前Google,微软,Facebook,百度分别开源了自己的深度学习平台,形成百花齐放,百家争鸣的局面,您认为哪个更适合初学者,哪个更适合生产部署?

孙佰贵:这三家公司开源的深度学习平台,都带有一些局限性,有些门槛太高,有些专注于某个特定领域,我认为最适合初学者的还是非商业公司的开源,比如caffe,torch等。

从易部署角度来讲,Google的TF比较好。

CSDN:阿里哪些典型业务使用了深度学习,其有效性体现在哪些方面?

孙佰贵:阿里有很多语音,图像,视频相关的都使用了深度学习,有效性在于深度学习在这些方向上的效果都远高于传统算法,这些方向能放大深度学习擅长特征表达学习的优势,因为原先在这些方向上特征的抽取往往都是人工制定的,人工制定的特征存在一个问题,那就是它并不是适用于所有的数据场景的,深度学习可以在任一一个数据场景中学习出专属于这个数据集的特征描述,这是深度学习的优势所在。

CSDN:深度学习理论方面有哪些由于当前技术水平限制还不能用于工程实现?

孙佰贵:由于深度学习强依赖于硬件、集群、大数据,这使得深度学习是少数的工业界成果不输于学术界成果的领域。深度学习是一个重实践的领域,一般情况下,深度学习理论都是在实验上验证过而沉淀下来的,所以往往是先由工程后有理论。

CSDN:技术路线方面,对于DL的入门和进阶,您有什么建议?我们上线了知识库系统化学习的方法,您会怎样应用?

孙佰贵:DL入门的话一般挑一些权威的survey或者书籍,如下作者写的一些资料比较权威:Yoshua Bengio、Geoffrey Hinton、Yann LeCun、Andrew Ng,然后挑一个开源跟着教程去跑例子,比较推荐torch、theano、caffe。

DL进阶的话一定要选择一个开源去做详细的代码解读,比较推荐caffe,然后再去了解各种深度学习相关的领域以及竞赛,再就是一定要去arxiv网站上定期查看DL的相关文章,了解DL最新研究状况与动态。

技术学习一般都是由点及面,上线的知识库可能会很大,除了了解该技术全面的知识点外,还需要挑这里面的某个细分领域去做仔细的研究与学习=>>进入深度学习知识库

推荐阅读:


更多内容请关注CSDN知识库。该产品汇集了领域专家们精心绘制的各重点技术领域的知识图谱,及由特邀编辑(领域专家)从海量数据中层层筛选出的精华内容和资源(学习视频、实践Demo、图书)。知识图谱可以帮助开发者全局把控该技术领域,而精选内容更能让开发者从技术细节加深了解该领域的每个核心技术点。扫描以下二维码,获取更多CSDN知识库内容。



个人知识图谱已上线,快来订制你的专属知识库吧=>>你的个人图谱上线了,快来领取!
  • 大小: 36.4 KB
  • 大小: 51.6 KB
1
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • C#编译工具 SnippetCompiler 轻型IDE开发环境 媲美VS2010

    C#编译工具 SnippetCompiler 轻型IDE开发环境 媲美VS2010 京华志&精华志出品 希望大家互相学习,互相进步 支持CSDN 支持微软 主要包括C# ASP.NET SQLDBA 源码 毕业设计 开题报告 答辩PPT等

  • 轻量级开发工具 Snippet Compiler 和 SharpDevelop

    Snippet Compiler 官方主页:http://www.sliver.com/dotnet/SnippetCompiler/ 如果你具有较小的代码段,并且你不想创建完整的 Visual Studio项目以及该项目附带的所有文件,此时就是Snippet Compiler的用武之处。假如我们要用记事本编写该代码段,不仅没有智能提示功能,容易出错,编写完成后还需要使用命令行进行编译,是一件...

  • 快速编码与测试:Snippet Compiler Live 2008终极版

    本文还有配套的精品资源,点击获取 简介:Snippet Compiler Live 2008 Ultimate Edition 是一个轻量级的C# 3.0代码片段编译器,它让开发者能够迅速编写、测试和执行C#代码,而无需启动完整的开发环境。该工具特别适合于概念测试、调试和快速原型设计。C# 3.0引入的新特性如Lambda表达式、匿名类型和自动属性等,提升了编码效率和质量。...

  • c#读取写入文本文件

    读取文本文件: class ReadFromFile { static void Main() { // The files used here were created in the code example // in How to: Write to a Text File. You can of course substitute // other files of your own. // E

  • Snippet Compiler 3.0.2 老朽痴拙汉化版(代码段编译器)

    Snippet Compiler3.0.2 老朽痴拙汉化版是一个免费的 .NET 编译和开发工具基于Windows 的小型应用程序,你可以通过它来编写、编译和运行代码。在下载Snippet Compiler后,无需进行安装,直接运行可执行文件即可。在第一个运行时,它会提示你如何创建快捷方式,运行后默认的语言是c#,可以直接在RunSnippet()方法中编写你的代码片段。 主要的特色有: 支援 Intellisense 功能,在撰写的时候会自动提示各方法的参数与型别 若程式码有错误,将会不支援 Intellisense 功能 程式码自动缩排,包括 #region 收合的功能也有支援支援许多 Visual Studio 中既有的快速键 可选用 C# 或 VB.NET 编译器 编译错误的时候支援 Errors 视窗

  • SnippetCompiler 3.0.2.0 迷你C#/VB代码段编译运行工具

    Snippet Compiler主要功能: 编译和运行一个或多个C#、VB.NET和ASP.NET代码片段 可选择编译WinForm EXE文件、控制台EXE文件或DLL文件 用户可存储模板库 显示编译错误和警告,包括在编辑器中以波浪线提示 智能感应(IntelliSense)静态成员、方法及构造器签名 导入VS.NET项目 可方便置入任务栏通知区 将代码片段导出为HTML文件或RTF文件

  • NET开发必备工具

    Snippet Compiler:用来编写、编译和运行代码的基于Windows的小型应用程序  Microsoft Source Analysis for C#(StyleCop):是一款C#代码规范检查工具(VS插件) Reflector for .NET:类浏览器和反编译器 MyGeneration :代码生成工具  The Regulator:生成和测试正则表达式 GhostD...

  • 10个用于C#.NET开发的基本调试工具

    在调试软件时,工具非常重要。获取正确的工具,然后再调试时提起正确的信息。根据获取的正确的错误信息,可以找到问题的根源所在。找到问题根源所在,你就能够解决该错误了。 你将看到我认为最基本的解决在C# .NET 中错误问题的工具的列表。这些将帮助你找到任何难题的根本原因并加以解决。 除了代码中的常见问题外,一下工具还可以处理各种问题类型,包括: 性能问题 内存问题(GC压力和内存泄漏) 第三方引用库...

  • 介绍一个软件SnippetCompiler

    平时测试一段代码用vs。一个最不方便的地方就是要新建一个项目,项目名称是test1、test2 ……。有时候还想着要保留这段代码,以后使用起来的时候非常不方便,平时测试的代码多了,后面要找的时候找不到。就想周星星说的,要找的时候找不到,不想找的时候自己就出现了。自从发现了SnippetCompiler这个软件后,感觉方便了不少。SnippetCompiler是一个绿色软件。只要关心代码...

  • SnippetCompiler_3.0.2

    Snippet Compiler是一个基于 Windows 的小型应用程序,你可以通过它来编写、编译和运行代码。现在Snippet Compiler已经支持.NET Framework 3.5,最新版本为Snippet Compiler Live 2008 Ultimate Edition for Developers (Alpha)。

  • .NET开发十大常用工具软件分享

     从事.NET开发也有两年多的时间了,期间积累了一些日常工作中常用的软件,在这里和大家分享一下,希望能为大家的日常工作带来便利,以下排名不分先后:1. 文字处理软件EditPlus:(http://www.editplus.com/)    EditPlus 是一款功能强大的文字处理软件。它可以充分的替换记事本,它也提供网页作家及程序设计师许多强悍的功能。支持 HTML、CSS、PHP、ASP、P

  • Snippet Compiler 学习C#的小工具

    以前做一些测试的时候总是喜欢新建项目,现在想想杀鸡焉用牛刀,这个小工具正好满足我的一般要求而且很轻巧,最重要的是完全免费,当然得先装上framework。 地址:snippet compiler下载...

  • 用轻型IDE SharpDevelop写C#,很有趣的说~~

    1 /* 2 * Created by SharpDevelop. 3 * User: Sky 4 * Date: 2013/3/22 5 * Time: 17:27 6 * 7 * To change this template use Tools | Options | Coding | Edit Standard Headers. 8 */ ...

  • .NET开发者必备的11款免费工具

    如今,HTML5,jQuery,JavaScript 等等这些热门技术,受到了开发者们的强烈追捧,有了这些开发工具也为开发者们减轻了许多负担。本文为开发者介绍了 11 款 .NET 框架,这些框架有很多优点,比如提供用户界面,数据访问,数据库连接,Web 应用开发,加密,数值算法算法,网络通信,以及一些其它的服务。这些工具都是开源的,有的开发工具你既可以从网上下载可执行文件,也可以下载源代码;还有

  • 编程开发工具

    C#随身开发工具(体积非常小): SnippetCompiler C# 开发工具(体积非常小): SharpDevelop5.1 转载于:https://www.cnblogs.com/bingxing/p/6346853.html

  • Snippet Compiler——代码段编译工具

    原文地址:http://www.cnblogs.com/conexpress/archive/2011/07/24/2115308.html 不知道大家在工作中是否遇到过下面的情况:在项目中实现了一段代码,需要验证其正确性,但又不愿意编译整个项目;或者是要验证一种算法,但又不想打开庞大的Visual Studio新建一个项目。简单的说就是希望对一段代码脱离项目,不用Visual Studio就能...

  • .NET 程序员必备工具

    地址http://publish.itpub.net/msoft/2008-06-19/200806192333598.shtml 1、Snippet Compiler Snippet Compiler 是一个基于 Windows 的小型应用程序你可以通过它来编写、编译和运行代码。如果你具有较小的代码段并且你不想创建完整的 Visual Studio...

Global site tag (gtag.js) - Google Analytics