我花了两年,从不懂Python变成了AI工程师

2020 年 1 月 23 日 CVer

点击上方“CVer”,选择加"星标"或“置顶”

重磅干货,第一时间送达

赖可 发自 凹非寺
本文转载自:量子位(QbitAI)

想做机器学习的工作,却觉得自己没有专业技能?

有一位小哥,从不知道Python到找到AI工程的工作,用时两年。他的文章在网上获得了5000多条点赞。

有网友在他的故事里看到了激情好奇心 

这条路不好走,这非常不容易。享受路上小小的胜利,从遇到的众多挫折中学习。All the best!

他的经验或许能给你一些启发。

不知道Python,却被”机器学习“吸引

这位David Chong小哥在新加坡管理大学的专业是经济和金融,本来毕业后打算在银行工作。

毕业前的9个月,他找到了日企野村证券的工作。这期间,他接触了一些数据分析的软件,学习了Excel VBA编程,数据可视化软件Tableau和Power BI,还有机器人过程自动化软件UiPath。

“机器学习“的世界深深吸引了他,最让他着迷的是输入数据,然后预测结果这个过程。

原来,他对银行产品的复杂性着迷,经过了一段时间工作后,觉得不过是从客户获利的一种方式。

总之,旧的东西没变得有那么吸引他,又出现了新的兴趣。他决定改变工作方向了。

但现实是,他完全不会编程。

那时候的他的字典里,Python是一种蛇,而Pig……是一头猪。

在Mooc上疯狂自学,纸上得来终觉浅

想学数据科学,网上资源大把大把,于是他在Mooc上注册了不少课程:

  1. Python 训练营:Python 3 从零开始成为英雄[ Udemy ]

  2. 用于数据科学和机器学的 Python 训练营[ Udemy ]

  3. 使用MySQL管理大数据[ Coursera ]

  4. Java初学者教程[ Udemy ]

  5. Web开发人员训练营 [ Udemy ]

  6. 机器学习A-Z:动手实践数据科学中Python和R [ Udemy ]

  7. 用Docker进行机器学习和NLP模型[ Udemy ]

不过他只完成了前三门课程。Mooc的课程内容非常简洁,也让他很快就对一门课失去兴趣,还没有上完就去看下一门。

MOOC上教授传统机器学习方法时,往往会跳过模型实际在做什么这个部分。比如,会教随机森林是决策树的集合,但不会讲决策树怎样决定在哪个分支上选择哪些特征(也就是熵概念和与之相关的数学);会简单介绍支持向量机是分类方法,但不会讲如何确定超平面。

深度学习的课程更不能满足做获取AI专业技能的需求。

相关课程通常会在Tensorflow上,在MNIST这样不错的数据集上给出大量代码,然后让你觉得自己是深度学习专家了。

但是这远远不够。研究论文通常包含复杂的体系结构,涉及理解深度神经网络模型中的特征提取,以及其他更复杂的特征,例如Transformer和双向编码。理解为什么某些最新模型比其他模型更好,以及迁移学习transfer learning元学习meta learning等概念也很重要。

小哥认为,Mooc的课程的优势在于快速入门。上面的课也容易给人误导,任何人都可以成为机器学习的从业者,以为机器学习就是关于.fit() and .predict()的几行代码。

实践和挫折

因此,上了在线课程后。为了提高编程能力,David选择在Hackerrank上进行练习,完成关于SQL和Python的问题。

同时,他还用python进行了一个项目,来实现在网上自动预订羽毛球场。新加坡的羽毛球场需要提前抢着预定,经常提前两周就预订完了。

经过一段时间的学习和操练,David对自己的技能水平心里有了个大概:

对写python很有信心,但是对代码效率一无所知。

在机器学习上,是jupyter notebook专家,可以把Jupyter notebook 的主题改为“ dark mode”,并使用所有的键盘快捷键。

他想做数据科学家。

但是面试失败了,涉及代码的技术测试比他学习的“数据科学”发展更快。他本来申请了技术分析师的职位,被转去了另一部门,做了业务分析师。

这离他的目标还很远。

接受专业学术训练

为了有更好的技能,他决定在学校继续读商业IT硕士学位(专门研究AI)

接受专业教育的过程中,大大的补充了此前知识框架的不足。

他学习了传统ML模型背后的数学原理,在自定义数据集上应用了最新的深度学习架构;有关AI的重要概念,包括常见的搜索算法,Q-learning and 深度Q-learning;算法设计,包括图形算法,时间和空间复杂度,名称匹配算法以及其它很多算法。

他还参加了几个学校的硕士项目。这些项目不完整,数据集经常从Kaggle上获得,在Jupyter notebook上结束。深度学习模型在Docker上运行,但不考虑部署。

David 看来,硕士教育提供了AI从业者所需要的严谨学术训练,但缺乏实际应用的训练。硕士课程不会告诉你数据科学工作的必要条件。这个部分需要自己去弄清楚。

软件工程和DevOps技能通常是必需的(尽管并不广泛)。在大型组织中,代码协作也很重要。比如,如何设置Docker环境,启动AWS EC2实例,在Azure blob存储上托管数据集,有效地组织代码,使用GitHub或GitLab进行版本控制。课堂不会教授这些内容。

在面试中积累

David继续进行面试,在技术面试和非技术面试中积累了很多经验(大多数人都不及格),也知道了自己所缺的知识,然后花时间补足。

面试带来更重要的经验是让他详细地摸了摸行情。

他明白了公司对于同样一个职位角色做的不同描述,以及这与公司在采用AI技术的成熟度之间的对应关系。

最终,在决定做AI工作的两年后,他找到了一个好机会,是一个会被培训成AI工程师的职位

小哥目前的职位是在野村证券操作风险部门operation risk的数据分析师。他在邮件中告诉量子位,下个月他将会转去新的岗位。

小哥觉得,这只是一个开始,职业之路就像一场马拉松,不是短跑。

One more thing

看了David小哥职业路径,对你有没有启发呢?

David 说分享自己的经验也是为了鼓舞更多的人,不要把他的经验看成指南。

这是我个人的轶事,我希望能够鼓舞人们,抱持信念去做他们想做的事情,因为人生太短暂了,不能过没有意义的生活。

做你爱的事情,因为你会花你生命的一大部分来工作。

如果你感到迷失,记住Elsa说的“do the next right thing”

参考资料:

https://towardsdatascience.com/i-had-no-idea-how-to-write-code-two-years-ago-now-im-an-ai-engineer-13c530ab8227

作者系网易新闻·网易号“各有态度”签约作者


重磅!CVer-学术交流群已成立


扫码可添加CVer助手,可申请加入CVer大群和细分方向群,细分方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索等群。


一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群

▲长按加群


▲长按关注我们

麻烦给我一个在看!

登录查看更多
1

相关内容

Python是一种面向对象的解释型计算机程序设计语言,在设计中注重代码的可读性,同时也是一种功能强大的通用型语言。
【干货书】Python语音计算导论,408页pdf
专知会员服务
101+阅读 · 2020年7月12日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
264+阅读 · 2020年6月10日
专知会员服务
171+阅读 · 2020年6月4日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【干货书】机器学习Python实战教程,366页pdf
专知会员服务
338+阅读 · 2020年3月17日
【新书】Pro 机器学习算法Python实现,379页pdf
专知会员服务
198+阅读 · 2020年2月11日
谷歌机器学习速成课程中文版pdf
专知会员服务
145+阅读 · 2019年12月4日
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
95后“过控”专业转行AI工程师打卡!
人工智能头条
5+阅读 · 2018年6月1日
在一头扎进机器学习前应该知道的那些事儿
全球人工智能
3+阅读 · 2018年4月24日
如何从零到一地开始机器学习 ?(附思维导图)
THU数据派
6+阅读 · 2018年4月17日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
五位专家跟你讲讲为啥Python更适合做AI/机器学习
全球人工智能
3+阅读 · 2018年3月18日
Python 如何快速入门?
全球人工智能
6+阅读 · 2018年3月15日
为什么“高大上”的算法工程师变成了数据民工?
数据挖掘入门与实战
5+阅读 · 2018年2月25日
干货|7步让你从零开始掌握Python机器学习!
全球人工智能
8+阅读 · 2017年9月24日
SlowFast Networks for Video Recognition
Arxiv
19+阅读 · 2018年12月10日
Video-to-Video Synthesis
Arxiv
9+阅读 · 2018年8月20日
Bidirectional Attention for SQL Generation
Arxiv
4+阅读 · 2018年6月21日
Arxiv
6+阅读 · 2018年3月12日
Arxiv
27+阅读 · 2017年12月6日
VIP会员
相关VIP内容
【干货书】Python语音计算导论,408页pdf
专知会员服务
101+阅读 · 2020年7月12日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
264+阅读 · 2020年6月10日
专知会员服务
171+阅读 · 2020年6月4日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【干货书】机器学习Python实战教程,366页pdf
专知会员服务
338+阅读 · 2020年3月17日
【新书】Pro 机器学习算法Python实现,379页pdf
专知会员服务
198+阅读 · 2020年2月11日
谷歌机器学习速成课程中文版pdf
专知会员服务
145+阅读 · 2019年12月4日
相关资讯
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
95后“过控”专业转行AI工程师打卡!
人工智能头条
5+阅读 · 2018年6月1日
在一头扎进机器学习前应该知道的那些事儿
全球人工智能
3+阅读 · 2018年4月24日
如何从零到一地开始机器学习 ?(附思维导图)
THU数据派
6+阅读 · 2018年4月17日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
五位专家跟你讲讲为啥Python更适合做AI/机器学习
全球人工智能
3+阅读 · 2018年3月18日
Python 如何快速入门?
全球人工智能
6+阅读 · 2018年3月15日
为什么“高大上”的算法工程师变成了数据民工?
数据挖掘入门与实战
5+阅读 · 2018年2月25日
干货|7步让你从零开始掌握Python机器学习!
全球人工智能
8+阅读 · 2017年9月24日
相关论文
SlowFast Networks for Video Recognition
Arxiv
19+阅读 · 2018年12月10日
Video-to-Video Synthesis
Arxiv
9+阅读 · 2018年8月20日
Bidirectional Attention for SQL Generation
Arxiv
4+阅读 · 2018年6月21日
Arxiv
6+阅读 · 2018年3月12日
Arxiv
27+阅读 · 2017年12月6日
Top
微信扫码咨询专知VIP会员