一面基础篇(数据结构、代码能力、逻辑思维)
(1) 用代码实现快排,说一下快排主要快在哪?
(2) 二分查找的时间复杂度(O(logn),最坏O(n)),时间复杂度,空间复杂度怎么计算的
(3) 编写二分查找算法
(4) 1-19个数字随意相加等于20的情况全部例出来,并且每中可能性的数字不能重复
(5) 给定字符串,计算单词数量,字符串中的单词以空格隔开
(6) 将阿拉伯数字转换成人民币大写形式
算法知识篇
(1) 手推SVM,什么是核函数,为什么要用核函数,SVM核函数怎么选择?
(2) 手推LR,并对每一步进行解释:引入sigmoid,逻辑回归的公式,极大似然,求解参数时的梯度下降算法
(3) bagging和boosting的区别
这个具体化其实就是RF和GBDT的区别:a.样本选择方式;b.样例权重;c.预测函数;d.并行计算
(4) SVM和LR的异同点?
相同点:
1.LR和SVM都是分类算法
2.若不考虑核函数,LR和SVM都是线性分类算法(它们的分类决策都是找到一个超平面来划分样本)
3.LR和SVM都是监督学习算法
4.LR和SVM都是判别模型(判别模型会生成一个P(Y|X)的判别函数,而生成模型先计算联合概率P(Y,X),然后通过贝叶斯公式转化为条件概率)
5.LR和SVM在学术界和工业界都广为认知并且引用广泛
不同点:
1.本质上是它们俩loss function不同:
LR:基于概率理论,样本为1 的概率可以用sigmoid函数表示
SVM:基于集合间隔最大化原理,认为存在最大几个分类面为最优分类面
2.支持向量机只考虑局部边界线附近的点(支持向量),LR受所有的数据点影响
3.非线性问题是,SVM采用核函数机制,而LR通常会采用特征构造,组合交叉特征引入非线性
4.线性SVM依赖数据表达的距离测度,所以需要对数据先做归一化,LR不受影响
5.SVM的损失函数自带正则化项,这是SVM是结构化风险最小化算法的原因,而LR必须另外在损失幻术上添加正则化项
(5) 对过拟合、欠拟合的解决办法?L1正则化和L2正则化的区别
(6) 用过哪些树模型,说说bagging和boosting的区别
(7) 讲讲模型的评估指标:ROC/AUC/KS、混淆矩阵
(8) xgboost树生长的精确分裂与近似分裂分别怎么做的
(9) SVM核函数的选择、核函数的主要作用是什么?
(10) 推荐系统的算法了解多少?简单介绍一下协同过滤,怎么计算商品之间的相似度?
二面 项目经验篇(项目的真实性,在项目中充当的身份,项目经验)
(1) 常用数据从哪里来,大数据处理的方法和技术用过哪些?
(2) 介绍一下自己的逾期还款率项目
(3) 特征工程中对时序型特征怎么处理?
(4) 说一说分类和聚类的区别?
(5) 在工作中都会用哪些特征来进行模型的训练,哪些数据比较有效?
(6) 之前做的项目风险是怎么定义的?
(7) 反欺诈项目用了哪些特征,最后怎么判定欺诈行为?
(8) 反欺诈的正负样本怎么确定的?
(9) 对风控模型的理解,完成一个风控系统都需要做哪些工作?
(10) 项目中样本量是多少?正负样本比例如何?怎么解决正负样本不均衡的问题?
全部评论
(2) 回帖