美团点评2017校招笔试真题-算法工程师B

1.以下关于经典的k-means聚类的说法哪个是错误的?

A:k-means聚类算法是全局收敛的

B:k-means的聚类结果和初始聚类中心点的选取有关

C:k-means聚类算法的时间复杂度是O(NKT),其中N为样本个数,K为聚类团数量,T为迭代次数

D:k-means聚类算法无法自动确定聚类团数量

正确答案: A

时间复杂度O(tkn)是线性的,t是循环次数,k是聚类的个数,n是数据点的个数。

用户需事先指定聚类数目k。算法对异常值十分敏感。对初始种子敏感。

如果K-means算法是全局收敛的,那么从不同的聚类中心迭代都会得到同一个聚类结果;但是我们都知道不同的聚类中心迭代结果不一样,反证K-means不是全局收敛的。

2. 以下两种描述分别对应哪两种对分类算法的评价标准?

① 美团推荐的餐厅有多少是用户喜欢的     Precision

② 用户喜欢的餐厅有多少被美团推荐了     Recall

precision是精确性的度量,表示被分为正例的示例中实际为正例的比例,

precision=TP/(TP+FP);

recall是覆盖面的度量,度量有多个正例被分为正例,

recall=TP/(TP+FN)=TP/P=sensitive,可以看到召回率与灵敏度是一样的。

3. 下列说正确的是?

A:回归函数A和B,如果A比B更简单,则A几乎一定会比B在测试集上表现更好

B:梯度下降有时会陷于局部极小值,但EM算法不会

C:在AdaBoost算法中,所有被错分的样本的权重更新比例相同

D:当训练数据较少时更难发生过拟合

正确答案: C

A项:若A与B均是高偏差模型(high bias),即欠拟合,但是B的欠拟合程度比A小,那么模型B会比A复杂,就会比A更好地拟合训练数据。

B项:EM算法是通过不断求解下界的极大化逼近求解对数似然函数极大化的算法(统计学习方法,p160),但EM算法不能保证找到全局最优解。

C项正确。

D项:对过拟合的一种解释:学习的模型复杂度,比实际数据的复杂度要高,欠拟合或者过拟合指模型本身和真实数据实际复杂度的关系,与训练数据的多少无关。

4. 逻辑回归的损失函数是?

逻辑回归模型预估的是样本属于某个分类的概率,其损失函数(Cost Function)可以像线型回归那样,以均方差来表示;也可以用对数、概率等方法。损失函数本质上是衡量”模型预估值“到“实际值”的距离,选取好的“距离”单位,可以让模型更加准确。

5. 如下表是用户是否使用某产品的调查结果。

UID 性别 地区 学历 收入 用户是否使用调查产品

1 男 北方 博士 低 是

2 女 北方 本科 中 否

3 男 南方 本科 高 否

4 女 北方 研究生 中 是

请计算性别、地区、学历、收入中对用户是否使用调查产品信息增益最大的属性(Log23≈0.63)

A:性别 B:地区 C:学历 D:收入

正确答案: C

信息增益,即互信息,g(A,D)=H(D)-H(D|A)。表示特征A所能透露的关于集合D的信息量(熵)的多少。这个题没必要真正去算,观察数据,我们可以发现在已知学历的情况下,对分类结果的判断是最明确的。所以我们能判定学历对用户是否使用产品的信息增益最大。

6. 美团点评是大家吃喝玩乐的生活好帮手: 比如大家搜索”7天连锁酒店”,会返回一系列相关的结果。如果要识别这句话的商家核心词-“7天”,以下哪种方法识别商家核心词准确率最低,不能直接使用?

A:通过分析用户搜索日志,人工制定模板或规则来识别

B:标注一些数据,抽取特征,用CRF训练出模型来识别

C:使用word2vec训练词向量,对词聚类,根据词属于的类别来识别

D:人工整理商家核心词词表,按是否命中词表里的词来识别

正确答案: C

首先,如果有人工干预,即通过一定的人力来进行人工识别和标注,肯定会大大提升识别准确率。然后再说一下词向量,通过word2vec训练出来的词向量是文本中出现的每一个词的向量表示,然后对词进行聚类,首先聚类是个非监督学习方法啊,没有人工标注你怎么能知道哪个类别和商家核心词汇有关?再者,对词向量聚类之后,得到的是一堆堆的近义词类别,比如七天、九天、六天、天天、周天可能会被聚成一类,但很明显这一大堆词根本都没有足够的特征来区分是不是属于商家核心词。

7. 同事去美团上班,自己开车,滴滴拼车,滴滴快车,骑滑板车的概率分别是0.3,0.2,0.1,0.4,各种方式迟到的概率分别1/4,1/3,1/12,0,下列语句中正确的是

A:如果他准点,那么骑滑板车的概率大于等于0.5

B:单人出行(自己开车或者滴滴快车)准点机会比滴滴拼车要低

C:如果他迟到,自己开车的概率是0.5

D:如果他准点,使用滴滴的概率等于自己开车的概率

正确答案: C D

P(开车) = 0.3        P(拼车) = 0.2          P(快车) = 0.1        P(滑板) = 0.4

P(迟到|开车)=1/4 P(迟到|拼车)=1/3P(迟到|快车)=1/12P(迟到|滑板)=0

P(准时|开车)=3/4 P(准时|拼车)=2/3P(准时|快车)=11/12P(准时|滑板)=1

P(迟到)=0.3*1/4 + 0.2*1/3 + 0.1*1/12 + 0.4*0 = 9/60

P(准时)=1-P(迟到) = 51/60

则:A选项:P(滑板|准点) = P(滑板)*P(准时|滑板)/P(准点)=0.4*1/(51/60) =24/51<0.5

B选项:P(开车|准时) = P(开车)*P(准时|开车)/P(准时)=0.3*(3/4)/(51/60)=27/102

P(快车|准时) = P(快车)*P(准时|快车)/P(准时)=0.1*(11/12)/(51/60)=11/102

P(拼车|准时) = P(拼车)*P(准时|拼车)/P(准时)=0.2*(2/3)/(51/60)=16/102

可知,B选项错误

C选项:P(开车|迟到) = P(开车)*P(迟到|开车)/P(迟到)=0.3*(1/4)/(9/60) = 0.5

D选项:P(快车|准时) = P(快车)*P(准时|快车)/P(准时)=0.1*(11/12)/(51/60)=11/102

P(拼车|准时) = P(拼车)*P(准时|拼车)/P(准时)=0.2*(2/3)/(51/60)=16/102

P(开车|准时) = P(开车)*P(准时|开车)/P(准时)=0.3*(3/4)/(51/60)=27/102

可知P(快车|准时)+P(拼车|准时)=P(开车|准时)

8. 机器学习中能够用于指导特征选择的指标

A:信息增益 B:信息增益率 C:基尼系数 D:信息熵

正确答案: A B C D   你的答案: A B C (错误)

信息熵的差就是信息增益,直接比较信息熵的大小,选取对应信息熵最小的特征,就相当于找到信息增益最大的项了,所以也算吧

9. 使用协同过滤做电影推荐,使系统可以对新用户输出结果的操作是:

A:使用内容特征计算电影之间的相似度

B:增加更长时间的训练数据

C:使用电影点击之外的数据计算用户相似度,例如用户背景信息

D:使用热门电影推荐结果补充个性化推荐结果

正确答案: C D

电影间相似度以用户对不同电影的评分为基础进行计算,新用户没有看过任何电影,所以即使知道电影间的相似性信息也无法基于此对用户进行推荐;没懂B项想表达什么,增加训练的时间么?。对新用户进行推荐,要么想办法获得用户更多的信息,以获得用户喜好,要么进行基于大家都喜欢的物品进行推荐。

美团点评2017校招笔试真题-算法工程师B的更多相关文章

  1. 美团点评2017校招笔试真题-算法工程师A

    美团点评2017校招笔试真题-算法工程师A 1.下面哪种STL容器的实现和其它三个不一样 A. set B. deque C. multimap D. map 正确答案: B STL的容器可以分为以下 ...

  2. 美团点评2017校招研发offer面经

    2017届的校招早早就结束了,抽出时间做个记录. 职位:后台开发工程师 岗位职责: 如果你热爱编程,这里给你平台用代码改变世界: 如果你乐于挑战,这里有用户和商家五花八门的需求和苛刻的系统运行环境在等 ...

  3. 《PHP面试笔试真题库》——PHP面试的好帮手

    你好,是我琉忆. 一个文艺的PHP开发工程师. 很荣幸能够在这里带来我的第一本新书--<PHP程序员面试笔试真题库>. 一.创作过程 <PHP 程序员面试笔试真题库>是我的第三 ...

  4. 网易实习笔试真题C/C++

    刚做的时候根本就没有想到解题思路,刚好看到了别人的思路,自己写了一下.里面对unordered_map及vector二维数组的建立很灵活,另外区别了一下map,unordered_map,hash_m ...

  5. ACM-ICPC(10 / 10)——(完美世界2017秋招真题)

    今天学了莫比乌斯反演,竟然破天荒的自己推出来了一个题目!有关莫比乌斯反演的题解,和上次的01分数规划的题解明天再写吧~~~ 学长们都在刷面试题,我也去试了试,120分钟,写出6题要有一点熟练度才行.先 ...

  6. 《PHP程序员面试笔试真题解析》——新书上线

    你好,是我--琉忆.很高兴可以跟你分享我的新书. 很高兴,在出版了PHP程序员面试笔试宝典后迎来了我的第二本书出版--<PHP程序员面试笔试真题解析>. 如果你是一个热爱PHP的程序员,刚 ...

  7. 笔试真题解析 ALBB-2015 算法project师实习生机试

    1.用十进制计算30!(30的阶乘),将结果转换成3进制进行表示的话,该进制下的结果末尾会有____个0. [解析] 计算N.下3进制结果末尾有多少个0,事实上就是计算3进制中的3被进位多少次,仅仅要 ...

  8. unity,C#,游戏面试笔试真题

    最开始的两家公司笔试面试题目 一家公司是学校聘请研究教育方面VR课件的公司,面试没几天,就收到了面试通过的消息,后面因为通过了另一家游戏公司而拒绝了. 另一家公司是一家游戏外企,在春熙路,当时笔试还可 ...

  9. CodeM美团点评编程大赛复赛 做题感悟&题解

    [T1] [简要题意]   长度为N的括号序列,随机确定括号的方向:对于一个已确定的序列,每次消除相邻的左右括号(右左不行),消除后可以进一步合并和消除直到不能消为止.求剩下的括号的期望.\(N \l ...

随机推荐

  1. maven项目中的报错问题——Dynamic Web Module 3.0 requires Java 1.6 or newer.

    转自:http://www.cnblogs.com/beppezhang/p/5919221.html maven项目中的报错问题——Dynamic Web Module 3.0 requires J ...

  2. Apache kafka v1.0.0 部署文档

    简介: Apache Kafka 是一个 Scala 语言编写的可扩展.分布式.高性能的容错消息发布.订阅系统. 官网地址:http://kafka.apache.org 中文教程:http://ww ...

  3. VNC连接黑屏的问题

    今天尝试在CentOS上安装一个VNC Server.CentOS5 已经自带了VNC,默认也已经安装了,只要配置一下就可以了(如果没有安装,可以:yum install vnc vncserver安 ...

  4. 吴裕雄 实战PYTHON编程(9)

    import cv2 cv2.namedWindow("ShowImage1")cv2.namedWindow("ShowImage2")image1 = cv ...

  5. Python实现的常用排序方法

    1.冒泡排序,相邻位置比较大小,将比较大的(或小的)交换位置 def maopao(a):     for i in range(0,len(a)):         for j in range(0 ...

  6. SpringBoot中使用Redis

    在SpringBoot中使用Redis,思路如下: 查询时先查Redis缓存,如果缓存中存在信息,就直接从缓存中获取. 如果缓存中没有相关信息,就去数据库中查找,查完顺便将信息存放进缓存里,以便下一次 ...

  7. INI

    .ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理 ...

  8. Java的继承与接口

    为什么Java里面只允许单一继承,但允许实现多个接口? 1,为什么不能实现类的多继承?主要是防止多个类有相同的方法名,然而方法体不一样,子类就比较难选择了.所以java和C#不支持类的多继承2,允许具 ...

  9. Jiu Yuan Wants to Eat(树链剖分+线段树延迟标记)

    Jiu Yuan Wants to Eat https://nanti.jisuanke.com/t/31714 You ye Jiu yuan is the daughter of the Grea ...

  10. 【校招面试 之 C/C++】第10题 C++不在构造函数和析构函数中调用虚函数

    1.不要在构造函数中调用虚函数的原因 在概念上,构造函数的工作是为对象进行初始化.在构造函数完成之前,被构造的对象被认为“未完全生成”.当创建某个派生类的对象时,如果在它的基类的构造函数中调用虚函数, ...