From c114ac9e7aff3e63dcef8d0034fbf4188b1d575b Mon Sep 17 00:00:00 2001 From: RuyiLuo Date: Fri, 8 Apr 2022 20:03:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=9D=A2=E7=BB=8F=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.md | 10 ++-- docs/推荐算法面经/HR及其他.md | 90 +++++++++++++++---------------- docs/推荐算法面经/ML与DL基础.md | 87 ++++-------------------------- docs/推荐算法面经/业务场景相关.md | 6 --- docs/推荐算法面经/推荐模型相关.md | 13 ++--- docs/推荐算法面经/热门技术相关.md | 14 ++--- 6 files changed, 67 insertions(+), 153 deletions(-) diff --git a/docs/README.md b/docs/README.md index 42ad147e..8c0a93d7 100644 --- a/docs/README.md +++ b/docs/README.md @@ -119,10 +119,12 @@ - 任务监控与调度【完成一半,待优化】 ### 推荐系统算法面经 - - ML与DL基础【已完成】 - - 推荐模型相关【已完成】 - - 热门技术相关【已完成】 - - 业务场景相关【已完成】 + - [ML与DL基础](/推荐系统算法面经/ML与DL基础) + - [推荐模型相关](/推荐系统算法面经/推荐模型相关) + - [热门技术相关](/推荐系统算法面经/热门技术相关) + - [业务场景相关](/推荐系统算法面经/业务场景相关) + - [HR及其他](/推荐系统算法面经/HR及其他) + ## 致谢 diff --git a/docs/推荐算法面经/HR及其他.md b/docs/推荐算法面经/HR及其他.md index a1713ef1..c8c22258 100644 --- a/docs/推荐算法面经/HR及其他.md +++ b/docs/推荐算法面经/HR及其他.md @@ -1,54 +1,50 @@ # HR及其他 - - - ### 工程相关 -1. java语言怎么样 -2. 大数据有没有做过 -3. 项目中最大的难点 -4. tensor(1, 2) 和tensor(2)有什么区别 -5. tensorflow loss NAN一般可能原因,怎么解决 -6. tensorflow debug工具 -7. python yield -8. mapreduce用过嘛 -9. 撕代码itemcf -10. 按召回原因计算点击率(用pandas) -11. 大数据这块工具会用么 -12. python内存管理:引用计数,垃圾回收,分代回收 -13. 引用计数有什么缺点 -14. C++智能指针 -15. 并发,多线程通信 -16. python多线程,多进程适合IO密集型,计算密集型 -17. 堆栈的区别 -18. 内存分配 -19. new delete -20. tensorflow的框架理念 - +- java语言怎么样 +- 大数据有没有做过 +- 项目中最大的难点 +- tensor(1, 2) 和tensor(2)有什么区别 +- tensorflow loss NAN一般可能原因,怎么解决 +- tensorflow debug工具 +- python yield +- mapreduce用过嘛 +- 撕代码itemcf +- 按召回原因计算点击率(用pandas) +- 大数据这块工具会用么 +- python内存管理:引用计数,垃圾回收,分代回收 +- 引用计数有什么缺点 +- C++智能指针 +- 并发,多线程通信 +- python多线程,多进程适合IO密集型,计算密集型 +- 堆栈的区别 +- 内存分配 +- new delete +- tensorflow的框架理念 ### HR相关 -1. 期望薪资 -2. 意向城市 -3. 未来规划 -4. 自己的优缺点 -5. 有么有跟进最新论文 -6. 自我介绍 -7. 工作期望 -8. 薪资 -9. 对公司的看法 -10. 导师是谁,做什么方向 -11. 目前的offer和进展中的公司,这几个公司的优先级 -12. 怎么选择工作岗位 -13. 团队背景,构成,分工,协调 -14. 技术关注渠道,怎么学习技术 -15. 性格,最成功的事,最大的挫折 -16. 为什么选择上海,北京不够好嘛 -17. 本科毕业到研究生入学期间做了什么 -18. 实验室项目情况,怎么分工和沟通,有没有出现过摩擦或争执,怎么解决的 -19. 竞赛中有什么影响比较深的挫折,经历了之后收获了是什么 -20. 你认为你现在对这个工作岗位的优势有什么?有什么不足呢 -21. 对第一份工作岗位有什么期待 -22. 现在有什么offer,或者在面试流程中的公司,薪资怎么样,对上面几家公司,哪个和之前做的更匹配 -23. 对于互联网产品有什么想法嘛,新的项目有什么看法 \ No newline at end of file +- 期望薪资 +- 意向城市 +- 未来规划 +- 自己的优缺点 +- 有么有跟进最新论文 +- 自我介绍 +- 工作期望 +- 薪资 +- 对公司的看法 +- 导师是谁,做什么方向 +- 目前的offer和进展中的公司,这几个公司的优先级 +- 怎么选择工作岗位 +- 团队背景,构成,分工,协调 +- 技术关注渠道,怎么学习技术 +- 性格,最成功的事,最大的挫折 +- 为什么选择上海,北京不够好嘛 +- 本科毕业到研究生入学期间做了什么 +- 实验室项目情况,怎么分工和沟通,有没有出现过摩擦或争执,怎么解决的 +- 竞赛中有什么影响比较深的挫折,经历了之后收获了是什么 +- 你认为你现在对这个工作岗位的优势有什么?有什么不足呢 +- 对第一份工作岗位有什么期待 +- 现在有什么offer,或者在面试流程中的公司,薪资怎么样,对上面几家公司,哪个和之前做的更匹配 +- 对于互联网产品有什么想法嘛,新的项目有什么看法 \ No newline at end of file diff --git a/docs/推荐算法面经/ML与DL基础.md b/docs/推荐算法面经/ML与DL基础.md index d3bcae50..4409890e 100644 --- a/docs/推荐算法面经/ML与DL基础.md +++ b/docs/推荐算法面经/ML与DL基础.md @@ -1,137 +1,73 @@ -# 3.1 机器学习相关 +# 机器学习相关 -## 3.1.1 机器学习 +## 机器学习 - 介绍一个最熟悉的机器学习算法 - - 决策树怎么建树,基尼系数公式 - - Adaboost拟合目标是什么 - - Adaboost介绍一下,每个基学习器的权重怎么得到的 - - 介绍下GBDT - - 介绍XGBoost - - 介绍下LightGBM - - LightGBM相对于XGBoost的改进 - - GBDT中的梯度是什么,怎么用 - - GBDT如何计算特征重要性 - - GBDT讲一下,GBDT拟合残差,是真实的误差嘛,在什么情况下看做是真实的误差 - - 介绍XGBoost中的并行 - - 介绍XGBoost中精确算法与近似算法 - - XGBoost如何处理空缺值,为何要进行行采样、列采样 - - 讲一下xgboost算法,xgboost是如何处理离散特征的,xgb怎么训练,xgb算法优点,怎么选特征,主要参数有哪些,xgb的特征重要性怎么看 - - xgboost介绍一下,xgb对目标函数二阶泰勒展开,哪个是x,哪个是delta x, 一阶导和二阶导是对谁求得 - - 为什么高维稀疏数据,LR比GBDT要好 - - 随机森林与GBDT采样的区别 - - 随机森林中列采样的作用 - - bagging与boosting对比, boosting和bagging的区别及分别适用于什么场景 - - bagging与boosting分别从什么角度降低过拟合 - - 逻辑回归如何避免过拟合 - - 推导逻辑回归损失函数和损失函数求导 - - 正则化项L1和L2为什么有用 - - l1正则不可导,如何优化 - - 什么样的特征容易产生比较小的权重 - - 随机森林采样n次,n趋于无穷大,oob样本的概率接近于? - - 逻辑回归与树模型的优缺点 - - 对于高维稀疏数据,树模型能训练吗?一般怎么处理 - - 树模型一般有哪些参数,分别有什么作用 - - 随机森林如何处理空缺值 - - 介绍kmeans,与其他聚类算法的对比 - - 机器学习导致误差的原因?过拟合、欠拟合对应的偏差和方差是怎样的? - - 如何解决过拟合问题?哪些角度 - - LR的原理,问题的假设,为什么用交叉熵作为损失函数 - - LR损失函数写一下 - - LR是不是凸优化问题,如何判断LR达到最优值 - - LR一般用什么数据,一般有什么特点(离散数据,离散化的一堆优点) - - LR,SVM, xgboost如何防止过拟合 - - lr和树模型,离散特征和连续特征分别怎么处理 - - lr和线性回归的区别 - - 连续特征可以直接输入到lr中不? (归一化和标准化有什么区别) - - 线性回归可以求闭式解,逻辑回归可以吗,为什么,LR用什么求解参数,为什么要用梯度下降算法 - - SVM和LR的区别 - - SVM的公式会推导嘛,SVM的损失函数 - - SVM原理,为什么求最大间隔,为什么用核函数,常见的核函数及区别 - - SVM支持向量怎么得到的 - - 写一下SVM的原问题和对偶问题,分别解释一下 - - SVM核函数有什么性质,写一下SVM核化的形式 - - 无监督学习,半监督学习,有监督学习的区别 - - 有哪些无监督学习的方法(kmeans,pca,生成模型,自编码器) - - 有哪些回归模型(多项式回归,树模型,svr, 神经网络) - - 生成模型、判别模型的区别 - - 概率和似然的区别 - - 最大似然估计和后验概率的区别,分别用LR来推导损失函数的话有什么区别(乘以W的先验概率) - - 朴素贝叶斯介绍,朴素贝叶斯公式,为什么朴素 - - l1,l2特性及原理,分别适用于那些场合 - - 给一个多峰数据场景,为什么l2不适合,可以怎么解决 - - 讲讲Kmeans、EM算法 - - 机器学习中怎么解决过拟合,DNN中怎么解决 - - 说一下SVD怎么降维 - - 推导softmax做激活函数求导 - - LR,SVM,xgb哪个对样本不平衡不太敏感,顺便把SVM和xgb介绍了 - - 降维方法了解嘛,PCA? 为什么取特征值前k大的对应的特征向量组成的矩阵?低秩表示 - -## 3.1.2 深度学习 +## 深度学习 - 梯度是什么,hessian矩阵怎么求 - 有没有上过凸优化的课程,如何判断凸函数 @@ -166,8 +102,7 @@ - 深度模型和传统机器学习模型对数据量的要求,什么场景用什么模型 - -## 3.1.3 特征工程 +## 特征工程 - 特征工程一般怎么做 - 特征数值分布比较稀疏如何处理 - 正负样本不均衡如何处理 @@ -181,8 +116,7 @@ - 如果不使用最近邻检索的库,你会怎么做最近邻检索 - -## 3.1.4 评估指标 +## 评估指标 - auc的含义和计算方法, 有没有更快的计算方法 - AUC会不会出现小于0.5的情况,出现了怎么调bug @@ -200,14 +134,11 @@ - 分类评价指标,TPR,FPR等的含义 - - - ## 参考解析 (解析仅供参考,如果有错误、补充或者建议欢迎Issue,部分方向题目笔者还不熟悉不确定答案的没有更新) -#### 3.1.5.1 机器学习 +#### 机器学习 - 介绍一个最熟悉的机器学习算法 @@ -769,7 +700,7 @@ -#### 3.1.5.2深度学习 +#### 深度学习 - 梯度是什么,hessian矩阵怎么求 @@ -1007,7 +938,7 @@ - 深度模型和传统机器学习模型对数据量的要求,什么场景用什么模型 -#### 3.1.5.3 特征工程 +#### 特征工程 - 特征工程一般怎么做: @@ -1083,7 +1014,7 @@ - 如果不使用最近邻检索的库,你会怎么做最近邻检索 -#### 3.1.5.4 评估指标 +#### 评估指标 - auc的含义和计算方法, 有没有更快的计算方法 diff --git a/docs/推荐算法面经/业务场景相关.md b/docs/推荐算法面经/业务场景相关.md index 34513ce7..1d4b57f2 100644 --- a/docs/推荐算法面经/业务场景相关.md +++ b/docs/推荐算法面经/业务场景相关.md @@ -1,15 +1,9 @@ # 3.4 业务场景相关 - CVR相比CTR的区别、特点 - - 搜索与推荐的区别,你认为哪个难度更大 - - 广告与推荐的区别 - - 什么时候用策略规则,什么时候用模型 - - 线上如何生成最终的排序得分 - - 正负样本介绍(规模和比例),如何构造负样本 - - 低活用户特征稀疏如何解决 \ No newline at end of file diff --git a/docs/推荐算法面经/推荐模型相关.md b/docs/推荐算法面经/推荐模型相关.md index 3b60c4df..49f3d62b 100644 --- a/docs/推荐算法面经/推荐模型相关.md +++ b/docs/推荐算法面经/推荐模型相关.md @@ -1,15 +1,12 @@ -# 3.2 推荐模型相关 -## 3.2.1 召回 +# 推荐模型相关 +## 召回 - 介绍双塔模型 - - 双塔模型的输出,用双塔embedding做内积+sigmoid和求余弦相似度+sigmoid的区别 - - 双塔模型一般怎么做特征 - - 双塔模型为什么不直接把两个塔合起来输入一个DNN -## 3.2.2 排序 +## 排序 - 为什么CTR中目前普遍使用深度学习模型替换树模型 - 为什么要有wide层、FM层,deep层不也有记忆能力吗 @@ -24,7 +21,7 @@ ## 参考解析 -## 3.2.1召回 +## 召回 - 介绍双塔模型 - 双塔模型最大的特点就是**「user和item是独立的两个子网络」**,左侧是用户塔,右侧是item塔,这两个塔的参数不共享; @@ -40,7 +37,7 @@ - 性能:减少线上运算速度,item塔可以提前训练,线上只需要user的embedding和相似度计算; -## 3.2.2 排序 +## 排序 - 为什么CTR中目前普遍使用深度学习模型替换树模型 - 强大的表达能力,能够挖掘更深层次数据模式; diff --git a/docs/推荐算法面经/热门技术相关.md b/docs/推荐算法面经/热门技术相关.md index 83584dc2..59026a2f 100644 --- a/docs/推荐算法面经/热门技术相关.md +++ b/docs/推荐算法面经/热门技术相关.md @@ -1,5 +1,5 @@ -# 3.3 热门技术相关 -## 3.3.1 Embedding +# 热门技术相关 +## Embedding - 介绍下item2vec模型 - embedding冷启动怎么做 @@ -14,10 +14,7 @@ - DeepWalk相比序列embedding优缺点,对那一部分item影响最大 - w2v用的哪一个,是google13年的那篇嘛 - - - -## 3.3.2 多任务学习 +## 多任务学习 - 多任务学习模型的发展历史详细介绍 - 为什么要用多任务学习 @@ -34,10 +31,7 @@ - 如果一个特征对任务a是正相关,对任务b是负相关,如何处理这个特征 - CTR和CVR任务放在ESMM(都是曝光空间)里和放在PLE(CTR点击空间,CVR曝光空间)里哪种效果好 - - - -## 3.3.3 图神经网络 +## 图神经网络 - GNN在推荐系统中有哪些用法 - GCN、GraphSAGE、GAT的区别与联系