怎样找到一份深度学习的工作(附学习材料,资源与建议)

原文地址:How to get a job in deep learning

原文翻译与校对:@戴丹 && @胡杨 && 寒小阳

时间:2016年10月。

出处:http://blog.csdn.net/han_xiaoyang/article/details/52777661

声明:版权所有,转载请联系作者并注明出

如果你是一个软件工程师(或者你现在正在学习这一方面),你肯定有机会听说过深度学习(有时候深度学习缩写为”DL”)。它现在是一个热门、且快速发展的研究领域,解决工业界的一系列问题,从图像识别、手写识别到机器翻译,更甚于AlphaGo4比1击败了世界围棋冠军

大部分人认为找与深度学习相关的工作应该具有博士学位或者大量的相关经验,但是如果你已经是一名很好的工程师,那你就可以很快、很好的学习这些必要的技能和技巧。至少,这是我们的观点。(即使你是深度学习的初学者,非常欢迎您加入我们的职位申请)

重点: 你对这一行业有着激情与兴趣,且具有很好的编程和解决问题的能力就足够了。

在Deepgram中,我们主要应用深度学习来解决语音搜索的问题。主要是我们教会机器去听、记录电话、在线视频、播客和其他音频等的谈话内容。但听仅仅是其任务的一半。正如我们的大脑是通过你回想起的那些关键词和短语的声音来寻找记忆中的谈话一样,我们也教会机器回想起那些记录中的关键词和短语。(如果你还没有玩弄Deepgram,我们有一个小演示来展示它的一些功能。)

乍看起来,感觉深度学习有点吓人,但好消息是,现在有比以往任何时候都要多的学习资源。(还有大量被禁锢需求的工程师知道如何实现深度学习的软件)。所以,如果你想要找到一份深度学习工作,首先你需要调整你自己的学习速度,那就让这篇成为你深度学习的指导吧!(如果你已经非常了解深度学习,且只是寻找工作信息,那就跳到底部。)

什么是深度学习?

总的来说,深度学习包括建立和训练一个大型的人工神经网络,该神经网络在输入和输出之间具有许多隐藏层。正是因为这些隐藏层,我们才称呼这些神经网络为”深度”。至少具有三层隐藏层才能叫深度神经网络,但现有的一些神经网络已具有上百层。

神经网络是一个复杂的统计模型,它通过计算机来对信息进行一个非常准确的抽象表示。你可能会问,什么样的信息?就像我们以前提及的,Deepgram的深度神经网络是专门训练来“理解”并在语音数据上进行操作,但深度神经网络已经应用于大量的其他方面,从医学扫描检测癌症到预测能源价格和气象建模。

在深度学习方向有很多著名的成员。在学术方面,多伦多大学的杰弗里-辛顿的实验室纽约大学的雅安·勒存小组斯坦福大学人工智能实验室是深度学习研究领域的引领者。在工业界,谷歌已经率先应用深度学习于搜索和计算机视觉,百度首席科学家AndrewNg,其作为Coursera的主要创始人,在上面贡献了大量深度学习有关的科学文献和教程。

今天学习深度学习为什么如此容易,即便是新手?主要有两个原因:首先,计算硬件设施的快速发展和便宜足以让深度学习技术能在几乎任何一个像样的显卡上运行。(通过我们的测试,发现对于一个正在使用的算法,基于GPU服务器的速度是CPU核的400倍) 其次,大量的深度学习资源开放平台,如TensorFlowTheanoCaffe,使实现自己的深度神经网络相当容易,尤其是自己不必从头开始构建一个神经网络。

当然,还有很多深度学习相关的知识需要去学习,但这就是本篇指南的目的!

深度学习前的必备知识

说到数学,你肯定对微积分、概率论和线性代数很熟悉。这些知识将帮助你去理解深度学习的理论和规则。

当然了,这也需要一些编程知识。正如你所看到的这个深度学习库列表,大部分流行的深度学习库是用Python和R语言编写的,所以,了解Python和R语言会对你很有帮助。

如果你需要提高你的数学和编程技巧,网上有大量的高质量资源可以学习和使用。

同时,正如我们上面提到的,需要有一个像样的显卡(或通过云计算平台,如Amazon Web服务或这里列出的其他提供商之一来访问GPU实例)。

去哪学习深度学习

关于深度学习的探讨和文章

如果你是在全新的领域,且在寻找一些深度学习知识概念后的高层次解释,而不是迷失在数学和编程方面的话,这有一些资料来帮助你对这些专业概念和术语的了解。

  • 威斯康星大学有一个one-webpage神经网络的综述
  • Brandon Rohrer,微软的主要数据科学家,在波士顿开放数据科学会议上做过一个演讲,其主要是通过少量数学和计算机术语来解释和阐明深度学习。这个页面有相关的视频和资料
  • 深度学习的开拓者Geoffrey Hinton,他是第一个演示使用backpropogation算法训练神经网络。他现在不怎么参加多伦多大学的学术,而是领导谷歌的一些人工智能研究工作,我们都很喜欢他的“神经网络实际怎样工作”这么一个简短但却富有启发性的谈话。你还可以在他的教师主页找到他的”没有太多数学”的深度学习论文列表。
  • Steve Jurvetson,DFJ的创始合伙人,硅谷的风险投资公司成员,在深度学习领域领导了一个斯坦福大学商学院的讨论小组。如果你有兴趣从工业界一些创业者和工程师的角度来学习深度学习,看看视频吧

如果你想深入,熟悉一些数学,有着简单的代码示例,还可以讨论深度学习的应用,可查阅斯坦福毕业生Andrej Karpathy的博文“The Unreasonable Effectiveness of Recurrent Neural Networks”。

在线课程

如果你是那种喜欢和从在线课程获取大量知识的人,你很幸运。这有几个很好的深度学习网上课程。

  • Andrew Ng的斯坦福大学机器学习课程很受欢迎,通常广受好评。它被认为是最好的机器学习入门课程,将给你一些深入研究深度学习的准备。
  • Udacity有一个免费的,十周的机器学习课程,着重于理论与实际的应用。对深度学习感兴趣的人这会是一个全面的预备课程。
  • 加州理工学院的Yaser S. Abu-Mostafa自学课程,“Learning From Data”课程在数学上密度涉及较少,但它仍然是一个非常全面的学习机器学习理论和技术的课程。
  • Andrej Karpathy的”CS231n: Convolutional Neural Networks for Visual Recognition“,斯坦福大学的课程是具有一定的挑战性,但它是在深度学习上很好的教程,其教学大纲和详细的课程笔记在网上都可以下载。
  • Geoffrey Hinton的课程”Neural Networks for Machine Learning” 也很好,这是一个做为该领域的教父级别课程。

书籍

也许在线学习不是你的菜,或你只是喜欢看讲座和复习幻灯片。我们推荐一些值得阅读的书籍:

  • Andrew Trask的Grokking Deep Learning旨在提供一个可理解、实用指南的深度学习技术。如果你以前了解一些Python和代数知识,那你100%的需要这本书。
  • Ian Goodfellow、 Yoshua Bengio 和 Aaron Courville的Deep Learning,将在麻省理工学院出版社(MIT Press)出版。到目前为止,这是一个早期在线的免费版本、外加一些幻灯片讲座和练习。

其他学习资源和网站

深度学习实践地

一旦你具备了相关的基础知识,你将准备好进行一些实际数据和练习。这有些网站,你能够找到一些简单的数据集和实现时遇到的一些问题:

在哪寻找也对深度学习感兴趣的小伙伴

不管你是一个业余者还是在深度学习研究最前沿的博士生,在社区之间进行交流总是好的。这里提供了一些地方来寻找都对深度学习感兴趣的同道中人:

  • 你应该看看你所在的城市是否有一个机器学习或深度学习的小组,比如说Meetup.com。大部分的主要城市是有的。
  • 有关于数据深度学习和衍生见解的几个在线社区:
    • Deeplearning.net是一个学习深度学习相关信息的网站。它的资源包括:综合阅读书单,深度学习研究实验室列表和一组优秀的演示,这样你就能发现深度学习的实际应用。
    • Datatau有点像黑客新闻,但特别关注数据和机器学习。它的评论部分不是很活跃但有定期发布的新链接。
    • 这有一个非常活跃的机器学习板块,(他们有非常有用的wiki和其他更多资源)。但深度学习板块就稍微要沉闷一点。
    • 令人惊讶的是,Google+发展了一个超过30000注册用户的深度学习小组。(谁知道人们现在还用Google+吗?)

深度学习在哪找工作

好消息是,基本上每个人都想招聘懂深度学习的人。

你可能知道去一些大众的地方寻找相关工作:股权众筹平台AngelList,黑客新闻的每月“谁招聘”栏目,StackOverflow的招聘工作板块和许多求职网站。

一些关于深度学习岗位的工作可在Deeplearning.net的招聘板块上发现,在Kaggle上也有更多的关于机器学习工作的招聘板块

这绝对是一个重磅消息。大多数公司在寻找深度学习和机器学习的人才时,并不会设置申请人要通过人力资源部门的环节。

当你申请职位了你该怎么做

在你申请这份工作前公司想看你是否做过一些很好、很酷的东西。

如果你没做过那你就没有面试的机会,如果你曾经做过,那无论你的背景怎样都会有一个机会的。当然了,什么是很好、很酷的东西,我们稍后解释。

如果你唯一的经验是构建一点点成功的小型项目,你很可能没有面试机会(尽管它可能会为大公司工作或者一些公司需要这一部分运行机器学习)。但是如果这样:

“我通过使用Theano/Tensorflow/MxNet 建立了一个微博深度神经网络分析并且对于预测话题有很高的准确率”:

  • 这是我实验得到的准确率
  • 这是我的实验报告链接
  • 这是我github上的代码链接

这样的东西将会使你获得面试的机会。在你面试的时候你就应该发挥出你编代码的魔力与解决问题的能力。

Deepgram也在招聘,如果你对解决问题和构建工具感兴趣的话,请联系我们吧!

时间: 2024-08-04 09:29:42

怎样找到一份深度学习的工作(附学习材料,资源与建议)的相关文章

掌握Linux系统后3个月内找到一份9K运维工作

毕业后做了3年机房运维,每天看看路由器,交换机,服务器状态,检查检查AP是否在线,服务器的硬件资源是否吃紧,并没有什么真正的技术,偶然的机会我接触到了Linux,了解到Linux操作系统是当前大多数服务器的操作系统,而且是开源的可以自由的下载学习,最重要的是它是云计算,虚拟化的基础,学会以后可以往许多方向发展,比如系统工程师,虚拟化工程师,云计算工程师等:于是就开始了我学习linux的学习之路,近些日子换了个linux运维的工作,每个月9千是之前的两倍了,对我来说比较满意.找工作的时候走了很多弯

Python入门学习指南--内附学习框架

Python入门学习指南 最近开始整理python的资料,博主建立了一个qq群,希望给大家提供一个交流的同平台: 78486745 ,欢迎大家加入共同交流学习. 对于初学者,入门至关重要,这关系到初学者是从入门到精通还是从入门到放弃.以下是结合Python的学习经验,整理出的一条学习路径,主要有四个阶段 NO.1 新手入门阶段,学习基础知识 总体来讲,找一本靠谱的书,由浅入深,边看边练. 网上的学习教程有很多,多到不知道如何选择.所有教程在基础知识介绍方面都差不多,区别在于讲的是否足够细(例如运

(原创) cocos2d-x 3.0+ lua 学习和工作(4) : 公共函数(3): 深度克隆clone()

先上一段代码: local tbl = { ["a"] = 1, ["b"] = 2 } local cpy = tbl for k, v in pairs( tbl ) do print( "tab: " .. k .. ":".. v ) -- 打印tbl里的元素值 end for k, v in pairs( cpy ) do print( "cpy: " .. k .. ":".

程序员的工作、学习与绩效

工作中,碰到一些这样的例子,总有人提出疑问,为什么一个同事工作勤勉,完成了很多事情,季度绩效评定很高,但晋升却碰壁了.之前已经写过一篇<技术晋升的评定与博弈>,基本就能解答这个问题.但隐藏在背后的更深层次的本质却是:工作.学习与绩效的关系. 工作 程序员的主要工作是:编程,产出代码,完成需求,交付软件系统. 程序员按其工作技能和经验,大体又分为三个阶段:初.中.高级.三个级别的程序员的主要工作都是编程与产出代码,产出代码的数量也许相差不大,但产出代码的属性可能有明显差别. 在曾经的文章中提出过

一个软件测试员的工作与学习(三)

续上一篇 http://www.cnblogs.com/fnng/archive/2013/04/13/3017598.html 在开始讲述这一年多的经历的过程之间,我又回顾了之前的经历,以便把比较好的把故事的衔接,需要说明的是,我并没什么高大上的经历来吹牛皮,只是做为一个普普通通的软件测试员,来记录自己的经历而已. 关于学历                                      应该是在入职新公司前报考的自考,学历一直是我的硬伤,所以,就想通过自考的方式来弥补,对于搞技术的

30岁找份程序员的工作(伪程序员的独白)

前言:       30岁一个而立之年,一个应该有家的人了,而我却还在为工作生计困难而烦恼,在我的印象里,程序员应该是一些性格比较内向,喜欢专研技术的宅男,我也因为小时候一次机缘巧合接触到了电脑(红警和暗黑),就觉得我以后要做一个从事电脑方面的工作,我记得小学有一次老师问大家以后想做什么?很多同学都是医生.老师之类的,当时轮到我的时候,我说我想当一个IT精英,当我说出口就后悔了,因为有些同学们都在嘲笑,知道有一次我跟同学去学校附件的文具店买东西的时候,有几个男的就指着文具店里面的一本杂志封面,我

完全用Deepin Linux娱乐、工作、学习(1)

截至今天我已经用全Deepin Desktop Linux环境娱乐.工作.学习了100多天.当你看到这个桌面的时候,会不会觉得它是MacOS?错了,它是Deepin Desktop Linux,而且它已经在全球很多个国家流行开,它字体的渲染.桌面的细腻是目前Windows10没有办法企及的,可以说和MacOS有得一比,如果你觉得它只是一个花瓶,那你就错了,你想实现的功能它基本上都能实现,有人说2017年是Linux桌面年. 记得在很多年前看过一篇王垠写的<完全用Linux工作>那是在2003还

谈工作与学习

如果连每天.每周的工作任务都不能按计划完成,那么哪里来的时间给你去自主学习,不会合理分配使用时间的人,大多都有一个惯病--拖延症,永远被时间拎着鼻子走,做事情缺乏效率,学习因此而耽误,并不是不想学习,而是习惯了拖延,做事情很难集中精力,一会忙这个,一会忙那个,根本不清楚自己在忙什么东西,半天的时间,甚至比不上自己集中精力工作一个小时的效率.那么,怎样才能合理安排好工作和学习,这其实也是一件难题,但是我觉得首先你要清楚自己的实力,不要每天都按超实力的工作计划做事情,合理安排计划,否则每天都是一个未

作为一名IT从业者,你在工作和学习中,遇到哪些问题

大家都是IT从业者,遇到的问题多少与相似. 如果能把这些问题总结下来,并给出解决方案,相信可以帮助很多的人. 我在ITFriend发起了一个话题"作为一名IT从业者,你在工作和学习中,遇到哪些问题",有很多网友给出了很好的答案. 希望对大家有所帮助. 周琦: 首先说说工作上,作为研发,产品需求不断变更,导致不停的重写代码,这时就需要和产品那边进行沟通确定明确的需求了,而且作为研发我们也可以从产品上提出自己的意见和需求.从而引导别人和提高自己上做出更大的提高.  而当遇到测试方面提出的各