- 个人情况介绍
本人17年毕业,到19年前,一直在某国内某米手机厂商从事互联网业务部数据开发工作,机会偶然,接触到了算法,开始独立负责某夕阳红APP的推荐算法,业务虽然不重要,但是很锻炼人,一个人需要完成数据仓库建设、推荐算法架构建设、在线服务建设,高可用/效率/效果都要兼顾到。
而后报了七月在线的推荐系统就业班,经过近半年的准备,砍下7个offer:4个50w、2个60w+、1个80w。80w的不敢去,赛道偏窄,前景不乐观,最后决定在2个60w的offer中选一个。
- 推荐算法核心技能和面试关键点
1.0、 写在最前:重要的事说三遍,推荐算法最最核心的一定一定是业务的理解程度、推荐算法最最核心的一定一定是业务的理解程度、推荐算法最最核心的一定一定是业务的理解程度。 推荐算法是一个非常贴近业务的工作,业务理解>数据建设度>算法模型。业务中涉及的指标、技术、迭代过程一定要清楚
1.1、基本算法一定要掌握,面试中极大可能会推导:lr原理和推导、xgb原理推导、fm原理和推导、常见的优化算法、梯度消失/爆炸等
1.2、业界较新的技术,也要兼顾到,不一定要上线,但是需要基本了解原理,不然会受到面试官挑战(尤其是三面leader面,非常喜欢问)
1.3、简历上的东西一定要是真实发生过的,不要装逼不要装逼不要装逼
1.4、leetcode top 100起码刷3遍
- 面试技巧
2.0、多说、多想,最完美的情况是一直说,不要给面试官留出思考时间,要带着全场节奏,双方冷场是大忌。可以提前准备一个面试稿,比如提前准备一下xgb算法,把原理、推导、优化、面试中容易问到的问题提前记下来,为什么要用泰勒二阶展开、怎么并行化、特种重要度有哪几种计算方法?引导面试官往上面走
2.1、遇到挑战你的/不友好的面试官,有可能是在压力面,当然也有可能是其他情况,不要紧张、不要急躁、不要生气,一定要笑着面试
2.2、遇到不会的实话实说即可,答错比不会扣分更多
- 最后给大家总结一下我经常遇到的问题,希望可以帮到大家
3.0 基础理论篇
-
xgb原理、推导
-
lr原理、推导
-
FM原理、推导
-
sgd、ftrl原理、推导
-
反向传播原理
-
cart树如何剪枝
-
协同算法和优化
-
过拟合、欠拟合怎么做?
-
mmoe/esmm 多目标学习算法原理
-
YouTube双塔/mind/graph embedding 召回算法原理
3.1 业务篇
-
冷启动怎么做(要从user冷启、item冷启分别阐述)
-
实时策略如何融入算法
-
每个阶段,做了什么改进,指标提升了多少?
-
马太效应怎么解决?(结合具体场景和业界常用基础阐述)
-
如何进行召回融合?
最后推荐下我自己的博客:https://zjf-bigdata.blog.csdn.net/