一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1442|回复: 8
收起左侧

LinkedIn 实习电面 ml track 二面

[复制链接] |试试Instant~ |关注本帖
zj00377 发表于 2015-12-8 06:32:01 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 博士 实习@Linkedin - 内推 - 技术电面 |Otherfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
今天面了二面,只能用两个字形容,MD。。。。
之前HR联系我,今天面试官是两个中国人,主面试官还是女的,然后安排到了中午12:00-1:00,我以为会轻松加写意。谁知道接起电话,一个阿三的口音。。。。。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
聊了两句,三哥直接贴题:

Update a set of (upto) K elements, when you see a new element from an incoming stream, to ensure that every element seen so far, has an equal chance of making it into the set of K elements that we are maintaining.

// newElem is the N+1th element. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

stream = [1, 2, 3, 4, 5, 6, 7]
K = 1. from: 1point3acres.com/bbs
. 1point3acres.com/bbs
currentK = Any of the 7C1 possible combinations, e.g., 1 or 2 or 3 ...

newElem = 8
currentK = Any of the 8C1 possible combinations
. 1point 3acres 璁哄潧
public elem[] updateK( int K, int N, elem newElem, elem[] currentK) {. 鍥磋鎴戜滑@1point 3 acres
}
. Waral 鍗氬鏈夋洿澶氭枃绔,
Example:. more info on 1point3acres.com

K = 2;
elem = [1,2,3,4,5,....]
. from: 1point3acres.com/bbs
for (int i = 0; i < N; i++)
    currentK = updateK(K, i, elem[i], currentK);


这题太confused了, 楼主读题和理解题意用了二十分钟。。。。。。
然后开始code, 我新建了一个 数组等于 stream, 然后加入新的newElem, 组成新的要操作的stream。然后用DFS,产生新的combination序列。
然后三哥说  stream could not be accessed。我心想,我去。。。。
我说可以用从 currentK 里边不断读取元素,recover 这个 stream 里边的元素。用一个Hashtable 存元素,如果Hashtable size 等于N,就停止。然后做DFS产生新序列。. 1point 3acres 璁哄潧
三哥说,make sense. 但是 我忘了说一个前提,N个元素是内存存不下的。。。。。。  我心想,我日了狗了。。。。
最后三哥告诉了我答案,这个可以用 reservoir sampling. 具体的可以Google 维基百科,就是通过有概率证明,N 足够大的话,随机选 N-k 就能实现了。这是coding 题么。。。。。.鏈枃鍘熷垱鑷1point3acres璁哄潧

然后三哥开始问ML的问题,说你的简历做过Recommendation System,那我们来聊一下 Collaborative Filtering 吧。
他让我把 Objective function 和 优化方法写上去, 我说 我用的 Alternative Least Squares 做的, 就是 把 rating matrix  decompose 两个矩阵, R≈U*V, 然后U和V 分别加 regularization term. . visit 1point3acres.com for more.
然后他问 如果 U 已知怎么办,我说那就变成 regression 问题了,可以把U当成 sample, 对应的 R 中的值当 label。可以用regression 一列一列地解R中的 missing value。
然后他说  know the country and age of users, can we use that information, 就是 U的 dimension 变成了 nx2(n is sample number). 我说 这种情况下 解出来的V的 rank 来低了,最后预测出来的结果不会太好。
他说: can you improve it?  我说 可以让 U =[U1, U2].  U1 是已知的, U2 是要求的,然后 objective function 中 加 U2 的 regularization term, U1 是已知的就不加了。然后同样用 Alternative Least Squares 求解。
Objective function 就变成了 ||R-(U1+U2)*V||F+ lambda1*||U2||F+lambda2*||V||F, 让后解出来 U2和 V, 然后U2 和U1 recover 原来的U, 就可以通过 U*V 来预测 R中的 missing value.
然后就到点了,Q&A


总体感觉第二问勉强答上来了,但是第一题答的太屎了,randomized 的算法知道的太少,估计这次要挂。。。。. 鍥磋鎴戜滑@1point 3 acres
楼主RP真的太爆发了,面的两次地里的面经一个题都没碰到。。。。

评分

1

查看全部评分

不再记起 发表于 2015-12-8 06:56:54 | 显示全部楼层
LZ终于二面了哈 加油加油 肯定不会挂的!
回复 支持 反对

使用道具 举报

chuck1212 发表于 2015-12-8 13:55:54 | 显示全部楼层
Reservoir sampling 算是data science比较常见的面试题之一,楼主可以练习写一下
回复 支持 反对

使用道具 举报

 楼主| zj00377 发表于 2015-12-9 12:27:17 | 显示全部楼层
chuck1212 发表于 2015-12-8 13:55
Reservoir sampling 算是data science比较常见的面试题之一,楼主可以练习写一下
. visit 1point3acres.com for more.
还有什么常见的么?
回复 支持 反对

使用道具 举报

nuanuan1208 发表于 2015-12-9 12:55:06 | 显示全部楼层
zj00377 发表于 2015-12-9 12:27
还有什么常见的么?
. from: 1point3acres.com/bbs
bless楼长!!同问。。。
回复 支持 反对

使用道具 举报

chuck1212 发表于 2015-12-9 21:44:50 | 显示全部楼层
zj00377 发表于 2015-12-9 12:27
还有什么常见的么?

不是搞CS的,所以不是特别清楚。.1point3acres缃

(1) CSDN上有一篇Blog讲big data processing 的一些常见题目和思路,可以参考一下
http://blog.csdn.net/v_july_v/article/details/7382693
.鏈枃鍘熷垱鑷1point3acres璁哄潧
(2) Mitbbs 上有各种面经,比如这个
http://www.mitbbs.com/article_t/JobHunting/32808273.html
回复 支持 反对

使用道具 举报

echofreshman 发表于 2016-1-13 12:39:07 | 显示全部楼层
求问lz电面的三哥叫什么名字啊?多谢多谢!!
回复 支持 反对

使用道具 举报

披着马甲的菠菜 发表于 2016-1-14 10:35:19 | 显示全部楼层
请问一下楼主二面过了么?二面结束大概多久出结果?
回复 支持 反对

使用道具 举报

huoshankou 发表于 2016-1-15 08:59:17 | 显示全部楼层
楼主最后有消息了吗?
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-11 05:04

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表