图源:Unsplash

常常有小伙伴私信给小芯,我没有编程根本,不会写代码,如何进入AI行业呢?还能遇上AI浪潮吗?

任何时候努力都不算晚。

下面,小芯就给大家讲一个朋友的真实故事,希望能给那些处于迷茫与徘徊中的小伙伴们一丝启示。
(下文以第一人称阐述)

​两年前不知若何编写代码的我现在是一名人工智能工程师

图源:Unsplash

正如Elsa所说,职业转换是一次“进入未知领域”的旅程。

两年前,我从大学毕业,主修经济学与金融学,做好了在金融业事情的统统准备。
投资银行和环球市场是我空想的事情。
毕业前9个月,我找到了在一家投行的事情,感到十分自满,由于如果之前没有在这家银行演习过就很难得到聘任的机会。

在那个岗位上干了几个月后,我学会了一些Excel VBA编程方法,以及如何利用Tableau、Power BI和UiPath(一款机器人过程自动化软件)。
我意识到相对付银行产品,自己对利用这些工具和学习代码更有兴趣。
我曾经对付银行产品的繁芜性很好奇,但现在创造它只是银行从客户身上获利的一种方法罢了。

银行环境对我的个人代价不雅观构成了极大的寻衅,但那是往后的话题。

同时,我的一位同事向我打开了“机器学习”的大门。
输入特天命据就能“预测”特定结果,这一事实深深吸引了我。

我急速入迷了。

但问题来了,我的编程技巧太过根本。
在我的字典里,Python是一种“蛇”,而Pig……是一只猪。

两年过去了,我将要进入人工智能(AI)行业,成为这个领域的一名工程师。
这段旅程困难而漫长。
对我而言,转战人工智能只是学习和发展的新开始。

图源:Unsplash

我的旅程

跳上慕课的宣扬列车

只有经济学和金融学背景,我不知道若何编程。
ExcelVBA与编程十分靠近,但仅此而已。
为了成为一名高造诣者,跳进数据科学的潮流,我报名参加了很多大型网络公开课(慕课)。
以下是我报名的课程列表:

· python演习营:从零到英雄[Udemy]

· 数据科学和机器学习的python演习营 [Udemy]

· 利用MySQL管理大数据[Coursera]

· 初学者的Java教程[Udemy]

· Web开拓职员演习营[Udemy]

· 机器学习A-Z:数据科学中的python和R实践[Udemy]

· 利用Docker支配机器学习和NLP模型[Udemy]

毋庸置疑,大多数课程我都没能完成(只完成了标记粗体的课程)。
我陷入了慕课自我延续的循环。
知识的易获取性使得课程很自然地从一门课延续到下一门,由于覆盖的主题太简短,使我的兴趣须臾即逝,我常常还没上完前一门课就跳到了下一门。

对我而言,内容简短是慕课最大的缺陷。
我本希望学完慕课就能得到一份数据科学的职业,但现在看来过于天真了。

为了供应不雅观点,教授传统的机器学习(ML)方法的慕课常常忽略了模型的实际浸染。
慕课讲述随机森林算法是决策树的凑集,但并未解释决策树如何决定在哪个分支上选择哪个特色(如熵的观点和打算)。
它只大略讲述了支持向量机是一种分类办法,但没有解释如何确定超平面。

在更前辈的AI领域(如深度学习)里,“我知道什么”和“我须要知道什么”大相径庭。
教深度学习的慕课的惯用套路是:把一堆代码放到Tensorflow上,放在如MNIST的精良数据库中,并推断“你现在已经是一名深度学习专家了”(有些夸年夜,但你该当能懂我意思)。
这与现实相差甚远,由于研究报告常常包含繁芜的构造,包括对深度神经网络模型中提取特色的理解,以及其他更繁芜的特色,如变压器和双向编码的理解。
理解最前辈模型优于其他模型的缘故原由也很主要,以及一些观点如转移学习和元学习。

我认为,教ML的慕课常常给人以这样的错觉,即任何人都能成为一名ML从业者。
他们天真的以为,ML仅仅是几行包含.fit()和.predict()的代码。
这是由于慕课表示人们可以较为轻松的开始学习ML(或许正是对付ML的大量炒作使得这些课程利润丰硕)。

不过别误解我,慕课实在很棒。
它使人们能方便快捷地得到知识,开始某个话题。
但是它们能使你成为专家吗?明显不能。
你在学完课程后所做的,才能决定你能否成为专家。

把手弄“脏”

完成几个慕课课程后,我一无所获。
诚然,我学会了python的一些基本技能,知道如何通过.fit()和.predict()利用sci-kit learn,但仅此而已。

为了提高编程技巧,我在Hackerrank上进行练习并完成了与SQL和Python干系的问题。
与其同时,我想将python运用于真实项目中。
于是我开始研究用于预订羽毛球场的机器人,它紧张能利用Selenium与浏览器交互以进行网页导航,终极购买并支付定金(类似于运动鞋机器人)。
我开始该研究的动机是,新加坡的羽毛球场常日提取两周就被订满了,常常一到放票韶光,许多人就每天在预订网站上露营抢票。
(它们常日在一两秒内就被预订了)

虽然我对自己的python编程比较自傲,但我对代码效率一无所知。
韶光和空间繁芜度对我来说是完备陌生的。
对我而言,面对工具编程只是一个观点,我从未实战过(更不用说终极会被遗忘了)。

在ML领域,我是Jupyternotebook专家。
我可以将Jupyter notebook的主题改为“阴郁模式”并充分利用键盘上所有快捷键。
显然,我已经准备好接管数据科学家这一角色了。

而事实考验——我的口试惨败。
设计代码的技能测试让我更快的迈出了“数据科学”的大门。
我申请的技能剖析岗位让我到另一个部门,由于他们以为我去业务剖析岗位可能更得当。

我间隔我须要去的地方还很远。

图源:Unsplash

手还不足“脏”

为了更加深入学习ML和演习python技能,我决定在新加坡管理大学攻读IT商业硕士学位(专攻AI)。

我学习了传统ML模型背后的数学事理,并将最前辈的深度学习架构运用到自我管理的数据集中。
我学习了关于AI的主要观点,包括通用搜索算法、Q学习和深度Q学习。
学习了算法设计,包括图形算法、韶光和空间繁芜度、名字匹配算法以及许多险些要撕裂我非打算机科学大脑的算法。
本色上,这些课程为我供应了慕课所缺少的学术严谨性。

硕士期间我的一些项目小有造诣。
他们不是完备成熟的项目,由于所用的数据集常日是别人给的或者从Kaggle上得到的,而且展示在Jupyter notebook后项目就结束了。
深度学习模型在Docker上持续运行,但是从未考虑过支配方面。
毕竟只是学校的项目而已。

我认为,硕士学位供应了AI专业人士所必需的学术严谨性,但是缺少实用性。
硕士课程不会见告你找到一份数据科学事情须要什么,你必须自己弄清楚。
软件工程和开拓运维技能是数据科学家事情的一部分(但是不足广泛)。
代码协作在大型组织里也很主要。
同样地,知道如何搭建Docker环境、启动AWS EC2实例、在Azure blob存储上托管数据集、有效组织代码以及利用GitHub或Gitlab进行版本掌握都是一些必需的关键技巧,然而这些在教室上也学不到。

就算你认为自己不足精良,也要大胆去考试测验。

我连续参加口试,在技能口试和非技能口试中积累了大量履历(只管大多数口试还是不及格)。
这使我理解自己的知识盲区并能花韶光学习干系技能。
更主要的是,它使我理解不同公司对同一岗位提出的不同事情描述,以及这些事情描述与公司在AI运用的成熟度上的干系性。

两年后,我得到了一份AI工程师的事情。
对我来说,这是一个极大的学习和发展机会,是我所梦寐以求的。
除此之外,这也证明了任何人都能完成他们动手做的事情,只管有些人花费的韶光可能会久一些。

末了,职业是一场马拉松,而不是冲刺赛。
做你热爱的事情,由于事情会霸占你人生的大部分韶光。

如果你彷徨不知向何处去,请记住Elsa所说的,“做下一件该做的事”。

图源:Unsplash

以是,与其摧残浪费蹂躏韶光在那纠结,不如赶紧行动起来吧~

声明:每个人在数据科学上的旅程是不同的。
这篇文章不是关于“如何进入AI天下的大门”,也不应被视为入门指南。
这只是我的个人经历,希望能鼓励人们冒险去做自己想做的,由于生命须臾即逝,不应毫无意义地虚度生平。

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范