励志!普通IT研发转行AI的学路、心路,和充满干货的面经


不是七月的就业老师催着写总结,我可能还在拖着不去回顾。人都有惰性,七月的老师催促自己总结这段经历,一如刚报名时催着大家预习、考试、提交项目。七月好像自身蕴含这种属性,催促你前进。

我是机器学习集训营第六期的学员,双非院校硕士。在校时实验室研究图像识别,但自己当时做技术实现,理论方面研究得比较浅。毕业后做了两年软件研发,发现实际工作跟上学时想的差别挺大,而且编程方面自己优势不大,于是觉得还是把以前接触过的图像识别加深下,顺带学下机器学习,转岗吧。当时实在是受够了长时间加班,而且对所做的技术方向有了较全面的认识,觉得发展很有限。

在新公司干了九天我就辞职了,辞职后真得觉得充满干劲,因为前面有片浩瀚的大海等着自己去冲浪。把不如意的现状打破,解下枷锁,全力投入新战场,即使暂时没有收入,即使积蓄仅够两个月生活。但是顾不得了,要干,就马上干。

我先自己闭门在家,看完了冈萨雷斯的《数字图像处理》,是真的看懂,不是随便翻翻。看完花了一个多月。后来报了一门课(还不是七月的):深度学习在计算机视觉的应用。学了两课就震惊了:原来,传统图像处理已基本被深度学习碾压!而且当下CV应用的FasterCNN,Yolo等完全没听过。震惊之余充分认识到,闭门造车是绝对不行的,自学容易学偏,不得要领。正巧当时看了几部网上流出的七月在线的视频,授课时间很早了,视频还没有后来的ID水印。看后由衷地觉得讲得确实好,清晰明了。于是就搜七月在线官网,挑选一番,报上了机器学习集训营。也是咬牙决定的,要干,就马上干。

报名后又是一次次的意想不到,课程的侧重、编排与内容的设置,真的与之前闭门看图像处理时认为的天壤之别。这边绝对是按照实战需要进行的规划。而且,有几集课程和几篇课件对理论概念的剖析,真的是神来之笔。这要比自己闷头看经典书省了大力气,比力气更宝贵的是时间。

再就是七月这边安排的节奏其实挺紧张的,我辞职全天候地学,都觉得吃力。当然用另一个词形容就是充实。课前送配套的预习课程,会反复提醒你看完。线上课讲解的信息量巨大,一般是连续2小时,我都是第二天再听才能勉强消化。真消化完,东西就基本掌握了。课后有作业,周末有考试。一遍遍催促你对知识咀嚼消化吸收。

关于项目和知识的讲解与总结,七月给了很多特别好的资料与案例,并且逐行讲解清楚,不明白的还可以再单独问,直到自己明白为止。
七月每期的学员,都是求变求突破的人。七月把大家集合到一起,共同讨论共同进步,这种氛围真的非常棒。如果自己一个人闭门造车,承受的压力要比这样大很多。

学完后已经1月份了,马上找工作心里没底,于是把简历让七月的老师帮改了一下,又温习了下课程,就过年了。打算年后赶春招。
春招真的不容易。我之前只简单做过一点图像处理,但是求职方向按照NLP准备的,数据挖掘类的也一起投,这就有点难办了。由于个人规划原因换过两次工作地点,加之简历润色得不太够,导致面试接连失利。

春招面试持续了一个半月左右,拿了两个offer,一个是某创业公司的NLP算法岗,25k/月但没过去,再就是我现在入职的这边,某高校下属科研院所的研究岗,兼带一部分开发的任务。下面是我把几次重要面试的情况总结如下,大家有兴趣可以参考一二。
A,某中型互联网金融公司
简历上项目,最初提了多少套方案,为什么最终选这套;
机器学习训练误差由哪些构成;
偏差与方差;
降低过拟合的方式;
神经网络降低过拟合的方式(dropout,早停);
BN层作用;
BN层加在激活函数前与后效果有何不同;
如何判断异常点;
逻辑回归的分布函数;
逻辑回归的参数求解在优化方面属于什么类型;
机器学习中常用loss;
精确率召回率;
PR曲线面积代表什么;
常见的语言模型;
文本表达方法;
新词如何发现;
句子中关键词如何提取(tfidf,textrank);
如何计算两个句子相似度;
项目中遇到了哪些困难,如何解决的;
简历项目现在进行改进的话,可以从哪些方面;
seq-seq有哪些结构形式;
soft-attention与hard-attention的区别;
数据分类不均匀的话,要做哪些处理;
手写逻辑回归极大似然函数的数学推导;
Glove与word2vec的比较;
讲一下Attention模型;
讲一下Bert;讲一下fastText;
文本处理常用步骤;
分词分得不准确的话,该如何处理。

B,平安第一次面(NLP)
DenseNet的网络结构?
与全连接有何不同?
简历项目中网络用了多少层FeatureMap,每层面积?
项目用了多大的数据量?
达到了怎样的分类效果?
FeatureMap提取了哪些特征?
画一下项目中采用的网络结构。
聊项目,解释项目中为什么这么做。
词向量怎么训练的?
word2vec两种常用模式?
词向量后面的Softmax如何优化?
CBOW和Skipgram哪个更适合采用?(大规模训练的话Skipgram要更好)
Glove的原理?(简历上有体现)
编程题:连续数组中值的去重;整数1~n,每个数字的二进制表示中“1”的个数,把此个数保存到数组。

C,平安第二次面(NLP,不同事业部)
讲一下fastText(简历上有体现),说一下与word2vec的联系;
Huffman树;
简历上项目如何设计的;
如果用seq-seq进行embedding,做相似度计算,会如何(替代Glove的话);
Glove如何训练的,用的多少维;
马尔可夫过程是怎样的;
怎么调试tensorflow;
解释下TextRank(简历有体现);
PageRank是怎么回事;
为什么数据量越大SVM训练越慢;
SVM原理;
分词是如何处理的;
语料中遇到新词如何处理;
决策树和SVM在数据预处理上有何不同(缺失值);SVM对文本要先做什么处理;
fastText最初先对文本如何处理(固定格式);
词性标注比较好的方法是哪些,有没有最新的模型。
下面是上机编程,记得有道题要求把不同的字符串进行分类。期间涉及到了对python的调试,表现不够好。

D,平安第三次面(数据挖掘岗)
先做了一份笔试题,上面都是常规的概念问答。例如数据预处理、清洗的方法等等,记得七月给的总结资料中几乎都有。
然后对着简历问。印象比较深刻的问题有:tensorflow出错误了,怎么debug;手推SVM;LSTM的结构,优势在哪里。其余的大多是常规问题。再就是根据简历问项目。

总结起来,失败的地方有这么几点。
第一,手写代码的功夫确实有退化,社招的同学务必花时间刷一下算法和编程题库;
第二,准备的时间还是有些短,三四个月的时间拿下理论和实战,会比较仓促,不够扎实,如果可以,延长到7-8个月,应该就不是当时那个心态了;
第三,最好还是不要离职脱产学习,如果脱产,请保证积蓄充足,不然拖到后面财务压力影响心情;
第四,工作头几年,请务必耐住性子,不要把简历跳花了,但如果确实有重要的抉择,优先级高于工作的问题,也不必在乎。

感觉比较感激和庆幸的几点:
一是遇到了七月这个平台,它不一定适合所有人,但是于我,帮助很大;
二是感谢线上的老师和深圳这边线下的老师,这个浮躁的时代,能有人耐下心来花大段个人时间,不厌其烦地向你传授宝贵经验,似乎已经超出了合同和契约,背后是有些情怀的。
三是认识了更多在这个领域奋进中的朋友。

要看的书有这么几本,百面机器学习,西瓜书,这两本要看熟(但很多章节可略过);统计学习方法,最好翻两三遍;NLP做客服机器人的话,推荐《自然语言处理实践 聊天机器人技术原理与应用》,这本比七月对聊天机器人的讲解更系统全面。
已邀请:

要回复问题请先登录注册

收藏七月在线,一起向大牛进阶

ctrl+D或command+D可以快速收藏哦~