首页 » 技术分享 » 晶赞科技二面面经

晶赞科技二面面经

 

9点40到达珠江创意园,面试时间是10点,先填了一下面试调查表,和HR的小姐姐稍微聊了一会,比如偏向于什么样的公司啊,之类的闲聊,然后稍微等了一会,就开始面试了。

第一轮是两个技术面试官,在上海数据交易中心都见过,其中一个就是一面面我的人,还有一个是隔壁的面试官。

很显然,一个面试官偏向于问机器学习项目,另外一个偏向于问算法的技术,包括原理,公式,推到等。

首先一位面试官问了一个编程题:

问题:list = [0,1,2...],长度为5,规则:1只能和2交换,0只能和1交换,并且只能相邻的进行交换。
请输出,最小的list组成的数字。
比如:
输入:
list = [2,1,0,1,2]
输出:
12012


我当时的想法是:
先交换最高位的2,到后面,
再交换次高位,一直到不能交换为止;1,2交换完毕
再交换0,1 高位是1 ,低位时0 ,就交换,一直到不能交换为止。
当时面试官说,这个复杂度是N平方。
没有完全写完,就结束了。

接着,面试官问我会什么排序算法,然后让我写了一下快排,之前都复习过,所以很快就写出来了。

后面就是简历项目的问题了:

因为我的简历第一个项目是用K-means的,

所以就问了k-means的几个问题:

1):k-means对初始值选择比较敏感,怎么改进的;

2):项目的情况,怎么选择特征,怎么对结果打标签。

3):k-means对离散的特征,怎么计算距离;

4):k-means算法和EM算法的区别

然后主要,对第二个项目申请评分卡的模型进行了大部分的询问:

1)数据缺失值怎么处理的

2)怎么进行特征的WOE编码的,为什么要WOE编码

3)怎么筛选特征的

4)叙述逻辑回归算法的原理,损失函数的推到,为什么用对数损失函数。

5)L1正则和L2正则的区别,原理是什么?

5)boosting和bagging的原理,boosting的公式。

6)凸函数的定义是什么?

7)我的提问?

第二轮:

来了一个面试官,他说是小领导吧,这个看起来比较和善。也问了几个问题:

1)多线程和多进程的区别

2)自己的编程语言和计算机基础情况

3)二分查找的原理,过程,时间复杂度,

4)也让我下了个代码

是二分查找的延生问题:
有序的list,但是有重复的数字,要输出重复数字的个数,和最起始的标签和最末尾的标签。
输入:[0,1,1,1,2]
输出:1
     1,3

我说,还是用二分查找就好,然后标签,用 lfind,rfind.就可以实现了。

但是,面试官说必须用自己的代码写出来,不能用python的方法。

5)决策树ID3树为什么选信息增益最大的,解释一下。

6)计算机32位和64位的区别是什么?

7)你认为在研究生期间学的最好的一门课是什么?

基本就是这样,最后HR小姐姐又过来总结了一下。还很NICE的给了牛奶和饼干,并且带着我在公司里转了一圈,结束了这次面试。

转载自原文链接, 如需删除请联系管理员。

原文链接:晶赞科技二面面经,转载请注明来源!

0