技术电面感受&请教# DataSciences - 数据科学
g*u
1 楼
骑驴找马今天面了一个感觉牛逼哄哄的startup, 已挂,满满的挫败感。最大的感受是
平时做项目的时候machine learning的算法都是抓来用用,那个好用用哪个,但对算法
的理解都很肤浅,没有深入思考过。大牛们看看下面几个问题怎么回答才好?
1)第一个问题是我有一个项目用mape来evaluate模型,面试官问我为什么不能用rmse
,我说mape是客户要求的,所以我就没多想,我实在不好意思讲我当时瞎扯了点啥,
太打脸了
2)面试官问我favorite的算法是什么,我说没有,平时logistic regression和random
forest用的比较多,然后面试官就问我什么时候用lg什么时候用rf。虽然我理论上知
道一点各自的特点比如lg对outlier比较敏感,模型interpretability比较高, rf是non
-parametric的所以对outlier不敏感,不用担心colinearity的问题之类的,但用到具
体问题的时候,我就说不上来了,因为其实我是抓来都用用,如果两个算法
performance差的比较大,我就直接用好的那个。我临时就凭感觉说如果feature space
比较sparse的话rf一般不好,因为sparse feature很多0,然后RF做split的时候不能做
有效的区分,我们希望rf的feature是reasonably diversed。。。感觉自己也太能扯淡了
。。。
3)然后面试官接着问我用rf的时候参数都是怎么调的,我就抓瞎了,其实我做过的严
肃认真的项目都是用lg或svm的,rf还真没认真调过参数,我说我一般调number of
trees和feature subset的大小,feature subset我知道一般是feature dim的平方根,
然后number of trees我就做个grid search看看多少个tree最好,面试官又问是不是
tree越多越好,我说一般是的,但improvements会越来越小,时间越来越多,一般差不
多我就停了。感觉面试官很不满意,大牛们调number of trees有什么可以作为依据吗?
还有一些杂七杂八的小问题我就不罗嗦了,其实一面完我就知道没戏了,因为面试官最
后只说了thanks for your time,后面会怎样连提都没提,哭。。。。现在对career好
迷茫,感觉项目也做了不少,但技术并没有进步,在一个小破公司算是技术lead,没人
会question我,但这样就没有动力提高自己,做项目其实大部分时间都在清理数据,建
feature matrix上面,最后建模那一步反而是最轻松愉快的,算法也没认真研究过。。
。感觉这样继续混日子也不是办法,想换工作,leetcode也刷了200多道,但感觉这种
编程算法在实际工作中根本用不到啊,最近也开始刷统计,但面试的时候又发现其实还
是要有实际经验的积累,照本宣科好像也不管什么用,大牛们,请问我这种情况怎么办
才好呢?跪谢!!!
平时做项目的时候machine learning的算法都是抓来用用,那个好用用哪个,但对算法
的理解都很肤浅,没有深入思考过。大牛们看看下面几个问题怎么回答才好?
1)第一个问题是我有一个项目用mape来evaluate模型,面试官问我为什么不能用rmse
,我说mape是客户要求的,所以我就没多想,我实在不好意思讲我当时瞎扯了点啥,
太打脸了
2)面试官问我favorite的算法是什么,我说没有,平时logistic regression和random
forest用的比较多,然后面试官就问我什么时候用lg什么时候用rf。虽然我理论上知
道一点各自的特点比如lg对outlier比较敏感,模型interpretability比较高, rf是non
-parametric的所以对outlier不敏感,不用担心colinearity的问题之类的,但用到具
体问题的时候,我就说不上来了,因为其实我是抓来都用用,如果两个算法
performance差的比较大,我就直接用好的那个。我临时就凭感觉说如果feature space
比较sparse的话rf一般不好,因为sparse feature很多0,然后RF做split的时候不能做
有效的区分,我们希望rf的feature是reasonably diversed。。。感觉自己也太能扯淡了
。。。
3)然后面试官接着问我用rf的时候参数都是怎么调的,我就抓瞎了,其实我做过的严
肃认真的项目都是用lg或svm的,rf还真没认真调过参数,我说我一般调number of
trees和feature subset的大小,feature subset我知道一般是feature dim的平方根,
然后number of trees我就做个grid search看看多少个tree最好,面试官又问是不是
tree越多越好,我说一般是的,但improvements会越来越小,时间越来越多,一般差不
多我就停了。感觉面试官很不满意,大牛们调number of trees有什么可以作为依据吗?
还有一些杂七杂八的小问题我就不罗嗦了,其实一面完我就知道没戏了,因为面试官最
后只说了thanks for your time,后面会怎样连提都没提,哭。。。。现在对career好
迷茫,感觉项目也做了不少,但技术并没有进步,在一个小破公司算是技术lead,没人
会question我,但这样就没有动力提高自己,做项目其实大部分时间都在清理数据,建
feature matrix上面,最后建模那一步反而是最轻松愉快的,算法也没认真研究过。。
。感觉这样继续混日子也不是办法,想换工作,leetcode也刷了200多道,但感觉这种
编程算法在实际工作中根本用不到啊,最近也开始刷统计,但面试的时候又发现其实还
是要有实际经验的积累,照本宣科好像也不管什么用,大牛们,请问我这种情况怎么办
才好呢?跪谢!!!