我花了两年从不明白Python变成了AI工程师

责任编辑NO。姜敏05682020-01-23 21:52:51

赖可 发自 凹非寺

量子位 报导 | 大众号 QbitAI

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

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

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

这条路不好走,这十分不简单。享用路上小小的成功,从遇到的许多波折中学习。All the best!

他的经历或许能给你一些启示。

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

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

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

“机器学习“的国际深深招引了他,最让他入神的是输入数据,然后猜测成果这样的一个进程。

原本,他对银行产品的杂乱性入神,通过了一段时刻作业后,觉得不过是从客户获利的一种办法。

总归,旧的东西没变得有那么招引他,又呈现了新的爱好。他决议改动作业方向了。

但现实是,他彻底不会编程。

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

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

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

Python 练习营:Python 3 从零开端成为英豪[ Udemy ]

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

运用MySQL办理大数据[ Coursera ]

Java初学者教程[ Udemy ]

Web开发人员练习营 [ Udemy ]

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

用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

“如果发现本网站发布的资讯影响到您的版权,可以联系本站!同时欢迎来本站投稿!