热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

我从吴恩达课堂演讲中学到的一些建议

作者|RichmondAlake原文|见页面左下角『阅读原文』编译|机器之心近来,硅谷迎来裁员潮,机器学习领域的求职压力也有所增加。如何规划ML职业生涯

69fb3821cc20c1824d9ad851875d3a46.png

作者 | Richmond Alake

原文 | 见页面左下角『阅读原文』

编译 | 机器之心

近来,硅谷迎来裁员潮,机器学习领域的求职压力也有所增加。如何规划 ML 职业生涯,才能获得长期成就?吴恩达教授为机器学习领域的毕业生提供了一些建议。

69bd16735294ae45531be02a41ba8b50.png

这篇文章内容取自斯坦福大学教授、Coursera 联合创始人吴恩达的课堂演讲,主题为《关于在机器学习领域获得成功职业生涯的几点建议》。

本文提到的职业建议位于视频后半部分。

演讲主要包括以下几部分内容:

  • 如何找到一份工作

  • 成功的 AI 从业者模式

  • 如何选择一份工作

  • 机器学习职业生涯的误区

55f030942e28b60f83fba7317e374483.png

机器学习专业的学生在完成学术研究之后,通常会从事这一领域的工作,或者继续读博。

通常有两种类型的公司会需要 AI 领域的人才。一种是大型科技公司,比如 Facebook、谷歌。另一种是年轻的,充满活力的初创公司。

吴恩达教授提到一点:无论朝哪个方向走,你都应该确保自己从事的是重要且有意义的工作。本文作者 Richmond Alake 详细介绍了吴恩达教授的这一观点,并结合自身经历谈了谈这些建议的具体内容。

首先,如何找到工作?

如何找到一份工作

a60af1ffb145912198efed0fb8bfb89d.png

机器学习领域的工作竞争激烈,大部分人都了解这一点,已经做好心理准备,但你可能不知道公司招聘时看重哪些技能和素质。

多年来,吴恩达教授在 AI 团队中和各类企业中积累了深厚的工作经验和领导经验,他给出了一些建议:

编程技能

机器学习研究工作要求个人至少要掌握平均水平的编程技能。程序员平均要掌握两到三种编程语言,并且达到中级水平。

机器学习领域的从业者也应具备编程技能,并且应该了解几门常用的编程语言,例如 Python、Java、Javascript、R 语言等。

为什么需要掌握多种语言的实践知识呢?

以我自己为例,我目前是一名计算机视觉工程师,我需要用到 3 种不同的编程语言。我用 Python 来实现模型(TensorFlow)和编写脚本,用 Javascript 来实现模型(tfjs),最后,我还要用 Swift 将模型和计算机视觉技术集成到 iOS 应用程序中。

回答技术问题的能力

在简历通过之后,你就会进入面试的下一阶段,通常是电话面试和现场面试。在这两个面试阶段,你都需要回答机器学习相关的问题,比如解释梯度下降变体之间的差异,描述新型神经网络架构的特性。

理论知识的实际应用

面试之前,你可能在学术研究机构中度过了几年,所以已经习惯了大学采用的基于理论的考试方法。

但是公司招聘的不是只掌握理论知识的人,而是能够将机器学习中的理论概念、技术以及思维进行实际应用的优秀人才。

比如,你首先要从概念上理解批归一化的好处,但是只有会用并且大量用过 Jupyter notebook 或 GitHub repo 的人才能够在招聘中脱颖而出。

业余项目

证明和应用所学理论知识的一个好方法是在你的工作任务中加入一两个业余项目,这是你展示技术、创造力和问题解决能力的绝好机会。

持续学习

一些传统领域的职位不需要随时更新专业知识,但在机器学习领域则完全不是这样。作为一个热门学科,人工智能领域里每天都有新开发的技术,每周都有更新的工具和库,每个月都有大量新发表的研究论文。

在机器学习领域里,你不能停止学习的脚步。我目前正在参与这个领域的研究,利用研究和开源项目中的技术,尽管如此,我还是会经常看到有全新的神经网络推动计算机视觉特定任务的发展,成为某方向的新 SOTA。

你的雇主总会希望你不满足于现有水平,保持求知欲望。机器学习从业人员需要永远处于领先技术的最前沿。

成功的 AI 从业者模式

dc63570fced3ef57ceb07b5d24d91c05.png

AI 包含很多子领域,如机器学习、NLP、语音识别、CV 等等。吴恩达表示,职场的最强候选人和成功的 AI 从业者都用一种「T」形方法来学习 AI 子领域。

也就是说,他们对很多子领域都有一个大致的了解,但只深入其中的几个。

以我个人为例,我在机器学习、计算机视觉和机器人学方向进行了深造。通过学习,我对 AI 的一些关键子领域有了基本了解。但在论文、个人项目和职业路径中,我只关注三大领域:计算机视觉、自然语言处理和深度学习。

下图显示了我在大学毕业、完成 pwn 项目并开始工作之后构建的「T」形知识路径长什么样。

在研究生阶段学完 ML、CV 和机器人学相关课程之后,我获得了 AI 主要子领域的基本知识。

989a39072071f9451fc5312c7ea3b707.png

大学毕业后的人工智能领域知识。

在我完成论文并开启自己的职业生涯时,我的学习路径是 T 型的。我专注于深度学习的子领域计算机视觉。由于关联度较高,在研究过程中我也获得了神经网络、机器学习、自然语言处理(图像标注方面)和图像处理等临近领域的知识。当然,对于一个研究者而言,要想成为深度学习和计算机视觉方面的专家还有很长的路要走。

b6d6f7e9b081f06efa380ad556826843.png

在完成硕士毕业论文并开始职业生涯之后我所获得的 AI 领域知识。

深度知识

深度知识我们提到了很多遍,但深度意味着什么?在吴恩达看来,深度知识由以下几个方面定义:

  • 项目

  • 开源贡献

  • 研究

  • 实习

同样,在特定子领域里做个人项目可以让你的专业知识更加深入。这不仅可以让你成为成功的 AI 从业人员,而且会让你有更多参与面向实践任务的机会。

如何选择一份工作

df3572f1611217f1e1e08b6cc03c9b20.png

吴恩达意识到,拥有机器学习专长的人很受欢迎。对于一些人来说,选择多是一件好事,但对于另一部分人来说,选择多了反而容易出错。

以下是吴恩达写给学生的工作选择建议:

选择一个优秀的团队

在吴恩达看来,团队的选择非常重要。在选择团队时要注意以下几个因素:

  • 互动

  • 沟通

  • 成长

吴恩达建议,你所在的团队应该很容易实现组员之间的互动,通常这样的团队包含 10-30 人。此外,你还要留意团队成员的努力程度,以及他们的个性、职业道德理念能否对你产生积极影响。

为什么这点如此重要?因为行为研究表明,和你相处时间最长的五个人的平均值就是你的各方面行为得分。

找准自己的定位

在决定接受一份 offer 之前,一定要弄清楚你要从事的工作是什么。

通常情况下,招聘广告中给出的职位描述并不能反映真实的工作内容。有时候,某个职位的职责范围会被夸大,这很容易令人失望。还有时候,招聘广告会淡化某个职位的工作量,这会导致你入职不久就陷入倦怠。

避免失望和倦怠的最好方法就是直接和你的上司对话,了解任务的内容和交付时间。

此外,你还可以与类似岗位上的组员交流,了解一下他们的日常工作。

忽略公司品牌形象

公司都有自己的品牌形象和外部认可,但这往往只是他们想让你看到的东西,而且通常是最好的一面,会让你在选择时产生先入为主的偏见。

吴恩达表示,从一般经验来看,公司的品牌形象和你在这家公司的个人经历关系不大。

在选择一份 AI 方面的工作时,团队比公司更应该考虑,选择行业时也是如此。

简单来讲,对于一家石油公司和一家医疗机构的图像分类机器学习项目来说,二者的区别其实只在于他们用来训练 ML 模型的数据集以及模型的应用。机器学习技能可以在行业之间迁移。

选择一份感兴趣的工作,考虑长期目标

人类是一种受到内部和外部因素激励的生物,如果内外激励都不具备,我们就会陷入懊悔、不安甚至是失望,

对此,吴恩达给出的建议非常直白:

「选择一个你不会觉得无聊的工作」。

我还喜欢吴恩达的另一个观点:迫不及待地进入某个角色并不是什么好主意。

在找工作期间,我拒绝了很多 offer。这些 offer 表面看起来都很不错,但都需要我做出一些我不想做的个人牺牲。

还有一些 offer 短期来看非常不错,但如果考虑未来十年的职业生涯,我并不觉得它们是最佳选择。

我想要成为一家成功公司的 AI 领导,因此我要以比平时更快的速度深入这家公司。在这种情况下,一个大的团队会让我成为小透明,因此不是我的最佳选择。相反,在一家创业公司工作可以让我获得更多的自主权和学习的环境,加速我的职业发展和成长。

因此,一定要选择一份适合你个人目标和长期发展的工作。

机器学习职业生涯的误区

做一个万事通

在人工智能这个领域,做一个「万事通」不一定有什么好处,反而意味着你在每个分支领域知识浅薄。这不是确保你在人工智能或者机器学习之路上拥有长远发展的最佳路径。

从长远来看,专注于获取深度知识会获得相应的回报,尤其是在人工智能这样的领域,精通某个子方向的人往往更受欢迎。

没有耐心

我经常因为没有耐心而内疚,但老实说,在机器学习这种快速发展的领域,你很多时候会焦虑于自己吸收知识的速度不够快。

但通过对那些在职业生涯中取得长期成就的人的深入观察,我意识到,在人工智能的任何一个分支领域建立起真正的技能、知识、经验都需要时间。

我们这一代人习惯于即时满足,急于看到快速成形的结果,最终会损害我们获取知识的进度。

没有实质性项目

拥有一个自己的业余项目对机器学习生涯大有好处,但问题是,这个项目必须具备一定的水平,才能给外部评审者留下足够深刻的印象。

因此,有十个平庸的业余项目不如有两三个真正有影响力的项目,这能更好地展现出你的技术能力。正如吴恩达所说:质量胜过数量。

结语

在吴恩达演讲的最后,他总结了成就成功 ML 职业生涯的三个要素:

1、一定要在有利于学习的环境中工作;

2、确保你所做的项目和工作对他人的生活有积极意义;

3、做有助于实现个人目标的决定,这将使你获得长期成功。

一起交流

想和你一起学习进步!『NewBeeNLP』目前已经建立了多个不同方向交流群(机器学习 / 深度学习 / 自然语言处理 / 搜索推荐 / 图网络 / 面试交流 / 等),名额有限,赶紧添加下方微信加入一起讨论交流吧!(注意一定o要备注信息才能通过)

8234af8ce1319368ec090104d1cf6556.png

END -

63918de9029d6fe83bfd98aabcc4e52c.png

75033af837df34f9a0f981acad3b5cd9.png

2021最新 北京互联网公司

2021-10-24

b7c60b5dd9c780a3717db63d71738747.png

『优势特征知识蒸馏』在淘宝推荐中的应用

2021-10-22

17e5daac862bfeca59e39603db62c01b.png

GPT Plus Money!B O O M

2021-10-09

70d7d52a79cd9f9eba52444ee4425706.png

博士延期的我,女友已经是副教授了

2021-10-02

02476b03d42dde5936c838e52a65247f.png

ef1a752c0eabfc6a8b07e4bed6f49e87.gif



推荐阅读
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 2022年的风口:你看不起的行业,真的很挣钱!
    本文介绍了2022年的风口,探讨了一份稳定的副业收入对于普通人增加收入的重要性,以及如何抓住风口来实现赚钱的目标。文章指出,拼命工作并不一定能让人有钱,而是需要顺应时代的方向。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 本博文基于《Amalgamationofproteinsequence,structureandtextualinformationforimprovingprote ... [详细]
author-avatar
江西风起如斯
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有