苹果、微软等巨头107道机器学习面试题

通常性问题

苹果算法

假设你面临着数百万用户,每一个用户有数百笔交易,涉及成千上万种产品。你如何对这些用户进行有意义的分类?编程

微软api

1.请描述一个你参与的项目,讲讲它有什么独特之处。数组

2.如何用高基数(high-cardinality)处理类别特征(categorical feature)?缓存

3.如何 summarize 一个 Twitter feed?网络

4.在应用于机器学习算法以前,清理数据的步骤是什么?app

5.如何测量数据点之间的距离?机器学习

6.请定义方差(variance)。函数

7.请描述箱形图(box plot)和直方图(histogram)之间的区别,并举出用例。工具

Twitter

你会用哪些 feature 来为用户构建一个推荐算法?

Uber

1.选一个你真正喜欢的产品或 app,说说你打算怎么改进它。

2.如何在分布(distribution)中找到异常点(anomaly)?

3.若是分布中的某种特定趋势是因为一个异常点,你将如何着手调查?

4.你如何评估 Uber 对交通和驾驶情况的影响?

5.你会用哪些参数来追踪 Uber 的付费广告是否真正得到了新客户?你会用什么办法来算出一个理想的新客户获取成本?

LinkedIn

大数据工程师,你能解释一下什么是 REST 吗?


机器学习类问题

谷歌

1.你为何要用特征选择?

2.若是两个预测因子高度相关,对逻辑回归系数的影响是什么?系数的置信区间是多少?

3.高斯混合模型(Gaussian Mixture Model)和 K-Means 的区别是什么?

4.如何为 K-Means 拾取 k ?

5.什么时候应用高斯混合模型?

6.假设一个聚类模型的标签是已知的,如何评估该模型的性能?

微软

1.举一个你自豪的机器学习项目的例子。

2.描述任意一个机器学习算法。

3.描述Gradient Boosting 是如何工做的。

4.数据挖掘:描述一下决策树模型。

5.数据挖掘:神经网络是什么?

6.阐释一下误差-方差权衡(Bias-Variance Tradeoff)。

7.如何处理不平衡的二元分类?

8.L1 和 L2 正则化有何不一样?

Uber

1.你会用什么 feature 来预测 Uber 司机是否会接受一次乘车请求?你会用什么有监督学习算法来解决这一问题?如何比较算法的结果?

LinkedIn

2.给出并描述三种不一样的核函数,及各自的应用条件。

3.描述一种机器学习中使用的方法。

4.如何处理稀疏数据?

IBM

1. 如何防止过拟合?

2. 如何处理数据中的离群值(outlier)?

3. 与分类模型相比,如何分析回归模型的预测性能?

4. 与简单的线性回归模型相比,如何评估逻辑回归模型?

5. 有监督学习和无监督学习的区别是什么?

6. 交叉验证(cross-validation)是什么?为何要使用交叉验证?

7. 用于评估预测模型的矩阵(matrix)名称是什么?

8. 逻辑回归系数和比值比(Odds Ratio)之间的关系是什么?

9. 主成分分析(Principal Component Analysis,PCA)和线性和二次判别分析(Linear & Quadratic Discriminant Analysis ,LDA & QDA)之间的关系是什么?

10. 若是你有一个分类变量(categorical dependent variable),以及一个混合分类和连续变量(a mixture of categorical and continuous independent variables),你会用什么算法、方法或工具来进行分析?

11. 商业分析:逻辑和线性回归的区别是什么?如何避免局部极小值(localminima)?

Salesforce

1. 你会使用什么数据和模型来测量损耗/流失?如何测量模型的性能?

2. 请尝试对非技术人员解释一种机器学习算法。

Capital One

1. 如何开发一个预测信用卡诈骗的模型?

2. 如何处理缺失或不良数据?

3. 如何从已有特征中得出新特征?

4. 在客户性别预测中,若是你只有 100 个数据点,你的预测可能会出现什么问题?

5. 假设已有两年的交易记录,你会用哪些特征来预测信用风险?

6. 请设计一个会下三连棋(Tic-tac-toe)的AI 程序。

Zilow

1. 请解释一下什么是过拟合,以及如何避免。

2. 为何 SVM 须要在支持向量间最大化margin?


Hadoop

Twitter

1. 如何用 Map/Reduce 将大图形分割成小块,并根据数据的快速/动态变化并行边缘计算?

2. 数据工程师:给定一个粉丝list,格式为:123, 345234, 678345, 123…其中第一列是粉丝 ID,第二列是被粉者 ID。目标是找到全部互粉组(如上例中的 123,345)。当 list 超出内存时,如何使用 Map / Reduce 解决问题?

Capital One

1. 数据工程师:Hadoop 序列化(serialization)是什么?

Explain a simple Map/Reduce problem.

2. 阐释一个简单的 Map / Reduce 问题。

统计和几率问题

谷歌

1. 请向非技术人员解释交叉验证(Cross-validation)。

Describe a non-normal probability distribution and how to applyit.

2. 请描述非正态几率分布(non-normal probability distribution)以及如何应用。

微软

数据挖掘:什么是异方差(heteroskedasticity),如何解决?

Twitter

已有 Twitter 用户数据,如何测量参与度(engagement)?

Uber

1. 时间序列(Time Series)预测技术是什么?

2. 阐释主成分分析(PCA)及其使用的方程。

3. 如何解决多重共线性(Multicollinearity)?

4. 请写出推特和Facebook 上优化广告费用支出的方程。

Facebook

从一副牌中抽取两张,同一花色的出现几率是多少?

IBM

p-value 和置信区间是什么?

Capital One

1. 数据分析师:假设你有 70 颗红色弹珠,绿色和红色弹珠的比例是 2 :7,请问绿色弹珠有多少颗?

2. 纽约市的平常上下班交通数据分布应该是什么样子的?

3. 一个骰子,扔 6 次出现 1 个 6 的概率,与扔 12 次至少出现两个 6 的概率,以及扔 600 次至少出现 100 次 6 的概率,哪一个最大?

PayPal

中心极限定理(Central Limit Theorem)是什么,如何证实?有何应用?


编程和算法

谷歌

数据分析师:请写一个断定任意二进制树height 的程序。

微软

请建立一个检查某个词是不是回文的函数。

Twitter

1. 请构建一个幂集(power set)。

How do you find the median of a very large dataset?

2. 如何在一个巨大的数据集中找到中位数?

Uber

数据工程师:编写一个计算给定数字平方根(精确到百分位)的函数。而后用缓存机制优化函数,避免冗余计算。

Facebook

1. 假设有两个二进制字符串,写一个将它们加在一块儿的函数,不使用任何内置的字符串到 int 的转换或解析工具。例如:若是给你的函数二进制字符串 100 和 111,它应该return 1011。你的解决方案的空间和时间复杂性是怎样的?

2. 写一个函数,输入两个已排序的 list,在一个排序 list 中输出其并集。

LinkedIn

1.数据工程师:编写代码,肯定一个字符串中的括号是否平衡?

2. 如何在一个二进制搜索树中找到第二大element?

3. 写一个函数,输入两个排序的向量,输出一个排序的向量。

4. 面对一个数字流输入,如何在运行中找到最频繁出现的数字?

5. 写一个函数,能够将一个数字加到另外一个数字上,就像 pow()函数同样。

6. 将一个大字符串拆分红有效字段,存储在字典中。若是字符串没法拆分,return “false”。你的解决方案的复杂性是怎样的?

Salesforce

1. 查找文档最经常使用的词的计算复杂性是什么?

2. 面对10 TBs 的非结构化客户数据,如何发现并提取有价值的信息?

Capital One

1.数据工程师:如何「拆散」两个数列(就像 SQL 中的 JOIN 同样,只不过是反过来)?

2. 建立一个能够作添加的函数,数字表示为两个linked list。

3. 建立一个计算矩阵和的函数。

4. 如何用 Python 读取一个很是大的制表符分隔的数字文件,以计算每一个数字出现的频率?

Paypal

1. 写一个函数,让它能在 O(n)时间内读取一个句子并逆向打印出来。

2. 写一个函数,输入一个数列,能够在O(n) 时间内将其按全部可能性分红两列数组,而后打印出这两个数组之间可能的最大差值。

3. 写一个执行合并排序的程序。


SQL问题

微软

1. 数据分析师:定义和解释汇集索引和非汇集索引之间的不一样。

2. 数据分析师:return 表的行计数有哪些不一样的方法?

Facebook

1. 数据工程师:给定一个原始数据表,如何用 SQL 执行 ETL(Extract,Transform,Load)以获取所需格式的数据?

2. 如何编写一个 SQL 查询,计算涉及两个链接的某个肯定属性的频率表?若是但愿 ORDER BY 或 GROUP BY 某些属性,须要作哪些变化?如何描述 NULL?

LinkedIn

数据工程师:如何提升 ETL(Extract, Transform, Load)的吞吐量(throughput)?


智力和文字游戏

谷歌

有 10 包弹珠,每包里有 10 个弹珠。其中一包和其余包重量不一样,若是只能进行一次称重,如何找出这一包?

Facebook

1. 你准备坐飞机去西雅图,想知道要不要带伞。你给西雅图的三位朋友分别打电话。每一个朋友都有 2/3 的概率说真话,1/3 的概率在骗你。若是他们都说「会下雨」,西雅图下雨的几率是多少?

2. 假设有一个等边三角形,三个角上都有一只蚂蚁,每只随机选择方向,沿着三角形的边走,那么这些蚂蚁不发生碰撞的概率是多少?若是有 n 只蚂蚁在一个有 n 个角的多边形中,几率又是多少?

3. 在 100 阶乘(即 100!)里有多少个零?

Uber

假设你在一家医院工做。患者就诊的频率符合泊松分布(Poisson Distribution),而医生照顾患者的频率符合均匀分布(Uniform Distribution)。请写一个函数或一段代码,可以给出患者的平均等待时间和医生在任意一天所照顾到的患者总数。

LinkedIn

你在爬一个有 n 阶台阶的楼梯,你能够用任何 k 数量的步骤。那么,到达楼梯顶部有多少不一样的方式?(这是楼梯问题的修改版)

文章:TinyMind

相关文章
相关标签/搜索