京东商城-商城研发部 算法岗面试
2017-09-15 17:42
169 查看
1. 直接介绍一个最近做过的项目:
用到哪些预处理步骤?
为什么选用CNN?
对CNN的结构和参数有哪些修改?
刚开始有点懵,语言组织有些着急,只说了个大概,后来进一步问的时候,才详细介绍了流程。
应该快速整理一下思路,然后有条理的说出来,并且要说出本身项目的难点和创新点,主导面试,向自己擅长的方向;
2. 又看到一个关于京东算法大赛的项目:
说一下对于数据的预处理是怎么做的,就是特征提取的步骤,有哪些特征?
评价标准,有没有想过对提高得分,哪些操作会比较有用?
提到一个关于时间的衰减,具体衰减是怎么做的?
用到XGboost,他与Adaboost有什么不同,在精度上有什么区别么?
1. Adaboost一般用于分类,XGBoost既能用于分类也能用于回归
2. Adaboost是一阶泰勒展开,XGBoost还用到了二阶泰勒展开的信息
3. 方差和偏差的角度(现在才明白面试官说的精度应该是指这个不同)
【精度方面的区别主要应该是说Adaboost主要是减小偏差,而XGboost即能够减小偏差又能减小方差】
XGboost与随机森林又有什么区别?
1. bagging与boosting
2. CART分类器,线性分类器相当于带L1,L2正则化的逻辑回归或者线性回归
3. 分类器权重一样,权重由分类准确率来确定
4. 减小方差,偏差和方差都减小;
3. 看到简历中有提到聚类算法,说说常见的聚类算法有哪些?
聚类算法的应用场景分别是什么?
新闻聚类、用户购买模式(交叉销售)、图像与基因技术
关于k-means聚类和DBSCAN有什么区别?
K-means:
1.确定聚类个数K
2.选定K个D维向量作为初始类中心
3.对每个样本计算与聚类中心的距离,选择最近的作为该样本所属的类
4.在同一类内部,重新计算聚类中心(几何重心) 不断迭代,直到收敛:
缺点:
1.对初始聚类中心敏感,缓解方案是多初始化几遍,选取损失函数小的。
2.必须提前指定K值(指定的不好可能得到局部最优解),缓解方法,多选取几个K值,grid search选取几个指标评价效果情况
3.属于硬聚类,每个样本点只能属于一类 4.对异常值免疫能力差,可以通过一些调整(不取均值点,取均值最近的样本点)
5.对团状数据点区分度好,对于带状不好(谱聚类或特征映射)。
优点:
速度快,适合发现球形聚类,可发现离群点
尽管它有这么多缺点,但是它仍然应用广泛,因为它速度快,并且可以并行化处理。
DBSCAN聚类:
基于密度的算法,之前的一些算法都是考虑距离,而DBscan是考虑的密度,只要样本点的密度大于某阈值,则将该样本添加到最近的簇中(密度可达的簇)
核心点:在半径eps内含有超过Minpts数目的点,则该点为核心点。
边界点:在半径eps内含有小于Minpts数目的点但是在核心点的邻居。
核心点1连接边界点2,边界点2又连接核心点2,则核心点1和边界点2密度可达。
噪音点:任何不是核心点或是边际点的点。
密度:在半径eps内点的数目。
Python中可调的参数:eps(半径)和m(密度), eps为半径,m为要求的半径内点的个数即密度,m越大聚出的类越多,因为即要求成某个类的密度要比较高,一旦中间比较稀疏的就不算一个类了;eps越大,类的个数越少。
优点:相对抗噪音(可发现离群点),可以发现任意形状的样本。不用确定聚类的个数,只需要确定eps(半径)和m(密度)。
缺点:但计算密度单元的计算复杂度大,不能很好反应高维数据,高维数据不好定义密度。
关于一个机场人流密度预测的比赛,有了解吗?
4. 平时用python么,对于SQL语句熟练么,平时处理查询数据怎么来做?
解释了为什么没用SQL。
5. 除了经典的XGboost和CNN还实践或者用过哪些机器学习算法?
说没太用过其他的,其实还用过KNN,随机森林也用到过,只是没有深入研究。参加过的相关比赛,或者尝试也可以。
总共面试时间为23分钟,应该是电话面试时间最短的一次了吧。说基本情况已经了解了,明天会通知结果。水~~~
用到哪些预处理步骤?
为什么选用CNN?
对CNN的结构和参数有哪些修改?
刚开始有点懵,语言组织有些着急,只说了个大概,后来进一步问的时候,才详细介绍了流程。
应该快速整理一下思路,然后有条理的说出来,并且要说出本身项目的难点和创新点,主导面试,向自己擅长的方向;
2. 又看到一个关于京东算法大赛的项目:
说一下对于数据的预处理是怎么做的,就是特征提取的步骤,有哪些特征?
评价标准,有没有想过对提高得分,哪些操作会比较有用?
提到一个关于时间的衰减,具体衰减是怎么做的?
用到XGboost,他与Adaboost有什么不同,在精度上有什么区别么?
1. Adaboost一般用于分类,XGBoost既能用于分类也能用于回归
2. Adaboost是一阶泰勒展开,XGBoost还用到了二阶泰勒展开的信息
3. 方差和偏差的角度(现在才明白面试官说的精度应该是指这个不同)
【精度方面的区别主要应该是说Adaboost主要是减小偏差,而XGboost即能够减小偏差又能减小方差】
XGboost与随机森林又有什么区别?
1. bagging与boosting
2. CART分类器,线性分类器相当于带L1,L2正则化的逻辑回归或者线性回归
3. 分类器权重一样,权重由分类准确率来确定
4. 减小方差,偏差和方差都减小;
3. 看到简历中有提到聚类算法,说说常见的聚类算法有哪些?
聚类算法的应用场景分别是什么?
新闻聚类、用户购买模式(交叉销售)、图像与基因技术
关于k-means聚类和DBSCAN有什么区别?
K-means:
1.确定聚类个数K
2.选定K个D维向量作为初始类中心
3.对每个样本计算与聚类中心的距离,选择最近的作为该样本所属的类
4.在同一类内部,重新计算聚类中心(几何重心) 不断迭代,直到收敛:
缺点:
1.对初始聚类中心敏感,缓解方案是多初始化几遍,选取损失函数小的。
2.必须提前指定K值(指定的不好可能得到局部最优解),缓解方法,多选取几个K值,grid search选取几个指标评价效果情况
3.属于硬聚类,每个样本点只能属于一类 4.对异常值免疫能力差,可以通过一些调整(不取均值点,取均值最近的样本点)
5.对团状数据点区分度好,对于带状不好(谱聚类或特征映射)。
优点:
速度快,适合发现球形聚类,可发现离群点
尽管它有这么多缺点,但是它仍然应用广泛,因为它速度快,并且可以并行化处理。
DBSCAN聚类:
基于密度的算法,之前的一些算法都是考虑距离,而DBscan是考虑的密度,只要样本点的密度大于某阈值,则将该样本添加到最近的簇中(密度可达的簇)
核心点:在半径eps内含有超过Minpts数目的点,则该点为核心点。
边界点:在半径eps内含有小于Minpts数目的点但是在核心点的邻居。
核心点1连接边界点2,边界点2又连接核心点2,则核心点1和边界点2密度可达。
噪音点:任何不是核心点或是边际点的点。
密度:在半径eps内点的数目。
Python中可调的参数:eps(半径)和m(密度), eps为半径,m为要求的半径内点的个数即密度,m越大聚出的类越多,因为即要求成某个类的密度要比较高,一旦中间比较稀疏的就不算一个类了;eps越大,类的个数越少。
优点:相对抗噪音(可发现离群点),可以发现任意形状的样本。不用确定聚类的个数,只需要确定eps(半径)和m(密度)。
缺点:但计算密度单元的计算复杂度大,不能很好反应高维数据,高维数据不好定义密度。
关于一个机场人流密度预测的比赛,有了解吗?
4. 平时用python么,对于SQL语句熟练么,平时处理查询数据怎么来做?
解释了为什么没用SQL。
5. 除了经典的XGboost和CNN还实践或者用过哪些机器学习算法?
说没太用过其他的,其实还用过KNN,随机森林也用到过,只是没有深入研究。参加过的相关比赛,或者尝试也可以。
总共面试时间为23分钟,应该是电话面试时间最短的一次了吧。说基本情况已经了解了,明天会通知结果。水~~~
相关文章推荐
- 【有趣的面试算法题】之四 求最小不重复数,源于百度2014届校园招聘软件研发岗位深圳站
- 【C++研发面试笔记】20. 常用算法-路径搜索算法(图算法)
- 【C++研发面试笔记】21. 常用算法-STL中常用算法函数
- 【C++研发面试笔记】18. 常用算法-查找算法
- 【C++研发面试笔记】22. 常用算法-字符串查找算法
- 【面试笔试算法】Problem 9: 腾讯2016年研发实习笔试题:最长回文子串
- 【面试笔试算法】Problem 9: 腾讯2016年研发实习笔试题:最长回文子串
- 【C++研发面试笔记】19. 常用算法-排序算法
- 面试c++研发工程师需要看哪些书
- JAVA面试算法题3
- 【LeetCode-面试算法经典-Java实现】【079-Word Search(单词搜索)】
- 【LeetCode-面试算法经典-Java实现】【070-Set Matrix Zeroes(矩阵置零)】
- 面试复习重点 算法 数据结构 【山科大牛陈磊整理】
- Java企业面试算法新得体会之4递归和动态规划问题17问
- 【LeetCode-面试算法经典-Java实现】【112-Path Sum(路径和)】
- 2015年阿里、网易、中兴、华为、美团等Java研发工程师面试心得
- 经典面试问题:12小球问题算法(文档)
- 代码面试最常用的10大算法
- 2015届华为软件研发面试经验(提前批)
- 算法面试字符串-题目3-交换*号