毕业于985本科,船舶与海洋工程专业,年龄30+(报班之前做的数据分析),0.1的基础来自于船舶行业专业计算软件学到点的编程。
我性格有非常非常多弱点,既不能看着船舶行业的天花板躺平,想行动吧又无从下手,自己给自己设限觉得不行,非常深的无力感。
契机是以前的一个同事,年龄比我略大,学历差不多,工作专业又是一样的,转行CV,跟他打听到七月在线的,他比我早一年行动,顿时非常心动,就报了。
特别感谢七月在线可以帮助我切换赛道,花钱学习是值得的,
一是会节省时间,让你知道重点,老师都非常专业。
二是学习氛围,收获了两个热心nice的好同学:姜同学(在集11项目阶段时一起组的队做推荐项目,没想在推7上又成为了同学,但姜同学先就业,这是之前姜同学写的面经:web测试转推荐薪资翻3倍多:算法不是天书,算法岗也不是天路)、廖同学,学习上遇到困难时可以相互鼓励,不是一个人在孤军奋战,非常感谢姜同学给了不少面试建议。
三是看到别人一个又一个就业成功,给自己正向反馈坚定下去。
四是肉痛会加剧坚定。
除了学霸不需要付出太多,大多数人还是需要脚踏实地慢慢积累的。学习困难大家都会遇到,尤其之前没有编程基础的,不要玻璃心,良好的心态信念非常重要。越来越觉得性格比能力更决定命运,自信行动力强的人职业生涯就是会顺利一些。
我是大学室友里最后一个出船舶坑的,以前会焦虑,但我现在也不焦虑,什么时候行动都不晚,不要想着沉默成本,年龄大了,想想未来还要三十年职业生涯,前面的十年又怎么样。不要给自己设限,慢不要紧,方向对了就行。培养自己的钝感力,学习瓶颈时要给自己正向洗脑,当下不会的东西迟早有一天会的,要相信自己,努力的人运气不会太差。
另外,如果你已经拥有一定基础,要挑战高薪或提升自己,可以看下七月在线【推荐系统高级小班 第十二期】课程。(可跳过直接看第四部分面试题哈)
目前最新的推荐高级班已迭代至第12期,且本期高级班继续沿用了“BAT大咖小班教学”模式,以及已有的特色。
内容全面系统:包括推荐常用算法、真实场景推荐、推荐前沿技术等四大阶段的内容;
标准化项目流程:涵盖环境和数据准备、特征工程、模型构建、模型调优、上线部署等;
多对一就业指导:单独指导每个人的就业,包括且不限于简历指导、面试辅导、就业内推;
其次,相比上期,本期
技术阶段新增:最新paper的学习研究和大厂落地新的技术点(推荐算法特征交叉新方法CAN,和参数个性化CTR模型PPNet等)
项目阶段新增:2020腾讯广告算法大赛和微信视频号推荐两大全新项目一切为更好的在职提升,或跳槽涨薪/升职加薪。
且本期课程讲师均为国内外知名技术骨干或技术大牛,学员将在这些顶级讲师的手把手指导下完成学习。
完成项目进入就业阶段后,BAT等大厂技术专家会一对一进行简历优化(比如将高级班项目整理到简历中)、面试辅导(比如面试常见考点/模型/算法),且和就业老师一起进行就业推荐等等就业服务。
提炼面试重点(只适用小单位):
1. 评价指标,acc,precision,recall,F1,auc这些指标如何计算以及适用场景要非常熟悉,哪怕别人没问适用场景,你也可以主动说给自己加分。roc-auc这个指标考核点很多,怎么计算,物理意义,为什么对正负样本不平衡不敏感,值得多花时间熟悉。
2. lr 损失函数公式,为什么不用mse?推导参数梯度。
3. Gbdt和xgb区别。能理解分类场景下gbdt和xgb是怎么学习新树的,损失函数,以及叶子节点怎么取值的。xgb工程实现方面理解到特征预排序,特征分裂并行,缺失值自动填充就可以了,不用再深究什么分位点,直方图。能说出这些大部分情况下理论储备不比面试官少了。xgb怎么调参。推荐方向非常值得在xgb上多花时间。
4. bagging和boosting的区别。
5.面试有问到svm和adaboost,其实我有学习过,但要到能说出来的地步还要再花些精力,我就没着重准备了,直接说不太熟悉,只知道adaboost会给分类错误的样本在下一轮训练时加大权重。不会也没有太减分,因为树模型的问题都回答的还可以。
6.有哪些构建特征的方法,这个问题很开放很大,没有标准答案,我答了项目里的统计特征,然后树模型也是天然特征交叉方法,像gbdt+lr,然后数值特征开方,平方,两两相乘交叉。类别型特征处理方式,one-hot encoder,label-encoder,类别取值对应的label均值。
7.项目这块花多少时间都是值得的,应该是优先级最高的。项目模型可以根据自己学习情况做删减,但项目逻辑要很清楚,怎么构建样本,怎么构建特征,因为面试官是不了解这个项目的,你表述的时候他可能有时候没理解或理解错了,你要纠正他的理解。可以在脑海里复盘怎么从0开始做这个项目。项目数据量也要记一下,构建的训练集多少条,测试集多少条,采样前后多少条等,这个比赛为什么这个指标分数这么低。还有可能问你一个业务场景,问你怎么建模,问我一个销量预测怎么建模,其实建模逻辑和我们做的项目差不多,只不过打标的不是0,1,而是回归值。
现在想想高级小班的这几个项目确实很好,和真实工作匹配度很高,
项目三:电商平台的商品推荐系统(殷老师讲),让你了解建模构建特征过程,做项目复盘时才意识到这个只能推历史商品。而且这个比赛能拿到成绩,对面试机会有帮助。
项目二:用户行为预测(王老师讲),让你了解召回+排序过程,这个是可以推没见过的商品的,所以这里构建特征时是没必要构建用户和商品的交叉特征的,因为没有交互拿不到交叉特征。
项目一:文本推荐系统(章老师讲),让你充实技术栈。我技术栈储备不够,所以没有做项目一。
我感觉能把这三个项目吃透,实际工作中是没有问题的。
8. 深度学习储备。学习wide&deep,deepfm性价比最高。小单位使用的排序模型可能就是xgb,deepFM,也不会都拿来试一试。din,youtubednn这些模型优先级不用那么高,有一家问了youtubednn结构,这是因为简历写了,youtubednn这个模型学习成本还是有点高,性价比不高。
9. 协同过滤,item2vec要熟悉。优缺点,适用场景,item2vec两种训练方法,负采样。
10.推荐方向更看重技术栈全不全,学习sql,spark比学习深度学习比较前沿的模型性价比高。
11. 简历上写了CNN,RNN/LSTM,面试问了RNN和LSTM的区别,LSTM几个门。我吸收了下面这个答案觉得自己回答应该挺加分。我感觉推荐方向面试官在深度学习方面并没有特别深的储备。
https://www.zhihu.com/question/34878706/answer/665429718。深度学习关于反向传播虽然面试没有用到,还是有必要自己手动推导不要偷懒,没有想象中困难,这样才能对所有关于梯度消失爆炸这系列问题理解不虚。像sigmoid做激活时,dnn里损失函数对参数的梯度是很多个w连乘很多个<=0.25的值,rnn里是参数共享,梯度是各个时间步的和,远距离梯度是很多个相同的w连乘很多个激活函数导数,远距离梯度消失导致遗忘较远的信息,才有长短时记忆模型的出现。
n代码能力(也有不考核代码的):
有一家考了最大回文字符子串,面试官给了两次提示才勉强写了个有bug的代码。
还有让做数据分析的题,考核pandas/sql操作,给小数据集让预测输出的,面试方再看你输出与答案的auc。
一些小建议:
1.多买书,虽然知乎很多回答写的很好,但书里讲的东西还是要系统一些,而且会有前置知识,不至于学习曲线太陡峭。西瓜书和统计学习我选择性的看了部分,老师讲的课件比较严谨全面,课件基本上就够了。自己完整看完觉得帮助比较大的书籍:《tensorflow 实战Google深度学习框架》《python深度学习》《深度学习推荐系统》《spark编程基础-scala版》,其他也买了好些书没来得及看。
2.综合别人的面经,自己提炼一个题库,然后用自己的语言整理一套答案。这个过程要花蛮久,但是很有用。虽然有的问题不会面到,但能增加面试底气。
3.老师的课考虑一下学习重点的优先级。
机会永远留给提前做好准备的人!如果你想从事推荐方向的工作,想在最短时间内成长为行业中高级人才,进入知名互联网公司,学长学过的【推荐高级小班】限时免费试听,扫码咨询课程详情!
学长学过的【推荐高级小班】限时免费试听+以下四本电子书
评论区回复 " 408 " 领取!