机器学习及大数据相关面试的职责和面试问题

标签: bigdata | 发表时间:2017-06-01 08:00 | 作者:
出处:http://itindex.net/admin/pagedetail

大数据

目录

· 机器学习、大数据相关岗位的职责

· 面试问题

· 答题思路

· 准备建议

· 总结

各个企业对这类岗位的命名可能有所不同,比如推荐算法/数据挖掘/自然语言处理/机器学习算法工程师,或简称算法工程师,还有的称为搜索/推荐算法工程师,甚至有的并入后台工程师的范畴,视岗位具体要求而定。

机器学习、大数据相关岗位的职责

根据业务的不同,岗位职责大概分为:

1 、平台搭建类

· 数据计算平台搭建,基础算法实现,当然,要求支持 大样本量、高维度数据,所以可能还需要底层开发、并行计算、分布式计算等方面的知识;

2 、算法研究类

· 文本挖掘,如领域知识图谱构建、垃圾短信过滤等;

· 推荐,广告推荐、APP 推荐、题目推荐、新闻推荐等;

· 排序,搜索结果排序、广告排序等;

· 其它,· 广告投放效果分析;· 互联网信用评价;· 图像识别、理解。

3 、数据挖掘类

· 商业智能,如统计报表;

· 用户体验分析,预测流失用户。

以下首先介绍面试中遇到的一些真实问题,然后谈一谈答题和面试准备上的建议。

面试问题

1、你在研究/项目/实习经历中主要用过哪些机器学习/数据挖掘的算法?

2、你熟悉的机器学习/数据挖掘算法主要有哪些?

3、你用过哪些机器学习/数据挖掘工具或框架?

4、基础知识· 无监督和有监督算法的区别?· SVM 的推导,特性?多分类怎么处理?· LR 的推导,特性?· 决策树的特性?· SVM、LR、决策树的对比?· GBDT 和 决策森林 的区别?· 如何判断函数凸或非凸?· 解释对偶的概念。· 如何进行特征选择?· 为什么会产生过拟合,有哪些方法可以预防或克服过拟合?· 介绍卷积神经网络,和 DBN 有什么区别?· 采用 EM 算法求解的模型有哪些,为什么不用牛顿法或梯度下降法?· 用 EM 算法推导解释 Kmeans。· 用过哪些聚类算法,解释密度聚类算法。· 聚类算法中的距离度量有哪些?· 如何进行实体识别?· 解释贝叶斯公式和朴素贝叶斯分类。· 写一个 Hadoop 版本的 wordcount· ……

5、开放问题

· 给你公司内部群组的聊天记录,怎样区分出主管和员工?

· 如何评估网站内容的真实性(针对代刷、作弊类)?

· 深度学习在推荐系统上可能有怎样的发挥?

· 路段平均车速反映了路况,在道路上布控采集车辆速度,如何对路况做出合理估计?采集数据中的异常值如何处理?

· 如何根据语料计算两个词词义的相似度?

· 在百度贴吧里发布 APP 广告,问推荐策略?

· 如何判断自己实现的 LR、Kmeans 算法是否正确?

· 100亿数字,怎么统计前100大的?

· ……

答题思路

1 、用过什么算法?

· 最好是在项目/实习的大数据场景里用过,比如推荐里用过 CF、LR,分类里用过 SVM、GBDT;

· 一般用法是什么,是不是自己实现的,有什么比较知名的实现,使用过程中踩过哪些坑;

· 优缺点分析。

2 、熟悉的算法有哪些?

· 基础算法要多说,其它算法要挑熟悉程度高的说,不光列举算法,也适当说说应用场合;

· 面试官和你的研究方向可能不匹配,不过在基础算法上你们还是有很多共同语言的,你说得太高大上可能效果并不好,一方面面试官还是要问基础的,另一方面一旦面试官突发奇想让你给他讲解高大上的内容,而你只是泛泛的了解,那就傻叉了。

3 、用过哪些框架 / 算法包?

· 主流的分布式框架如 Hadoop,Spark,Graphlab,Parameter Server 等择一或多使用了解;

· 通用算法包,如 mahout,scikit,weka 等;

· 专用算法包,如 opencv,theano,torch7,ICTCLAS 等。

4 、基础知识

· 个人感觉高频话题是 SVM、LR、决策树(决策森林)和聚类算法,要重点准备;

· 算法要从以下几个方面来掌握 产生背景,适用场合(数据规模,特征维度,是否有 Online 算法,离散/连续特征处理等角度);原理推导(最大间隔,软间隔,对偶);求解方法(随机梯度下降、拟牛顿法等优化算法);优缺点,相关改进;和其他基本方法的对比;

· 不能停留在能看懂的程度,还要对知识进行结构化整理,比如撰写自己的 cheet sheet,我觉得 面试是在有限时间内向面试官输出自己知识的过程,如果仅仅是在面试现场才开始调动知识、组织表达,总还是不如系统的梳理准备;从面试官的角度多问自己一些问题,通过查找资料总结出全面的解答,比如如何预防或克服过拟合。

5 、开放问题

· 由于问题具有综合性和开放性,所以不仅仅考察对算法的了解,还需要足够的实战经验作基础;

· 先不要考虑完善性或可实现性,调动你的一切知识储备和经验储备去设计,有多少说多少,想到什么说什么,方案都是在你和面试官讨论的过程里逐步完善的,不过面试官有两种风格:引导你思考考虑不周之处 or 指责你没有考虑到某些情况,遇到后者的话还请注意 灵活调整答题策略;

· 和同学朋友开展讨论,可以从上一节列出的问题开始。

准备建议

1、基础算法复习两条线

· 材料阅读包括经典教材(比如 PRML,模式分类)、网上系列博客,系统梳理基础算法知识;

· 面试反馈面试过程中会让你发现自己的薄弱环节和知识盲区,把这些问题记录下来,在下一次面试前搞懂搞透。

2、除算法知识,还应适当掌握一些系统架构方面的知识,可以从网上分享的阿里、京东、新浪微博等的架构介绍 PPT 入手,也可以从 Hadoop、Spark 等的设计实现切入。

3、如果真的是以就业为导向就要在平时注意实战经验的积累,在科研项目、实习、比赛(Kaggle,Netflix,天猫大数据竞赛等)中摸清算法特性、熟悉相关工具与模块的使用。

总结

如今,好多机器学习、数据挖掘的知识都逐渐成为常识,要想在竞争中脱颖而出,就必须做到· 保持学习热情,关心热点;· 深入学习,会用,也要理解;· 在实战中历练总结;· 积极参加学术界、业界的讲座分享,向牛人学习,与他人讨论。最后,希望自己的求职季经验总结能给大家带来有益的启发。

附:其它可能的题目-算法/架构/ETL等

  • MapReduce解决缺值问题?
  • 集群规模有限,但之前的那个文件足够大,如何解决?(不能调整集群的规模)
  • Spark的三种部署方式?
  • 如果Spark用的和Mapreduce的计算资源同是yarn,发现资源不够用了话,在Spark中的哪里进行配置,使之资源分配合理?
  • LVS的配置相关命令?
  • Hadoop的各角色的职能?
  • Hadoop的checkpoint的作用?
  • HBase的双主如何配置?
  • HBase即便拥有双主的高可靠配置,存在hdfs上的数据丢失怎么办?
  • HBase模糊查询,是什么?如何做到?
  • Hadoop的 高可靠性,如何保证?
  • 如何保证HBase的稳定性以及高可靠性?从部署、容灾、以及网络方面说说你的看法?
  • 你觉得Spark和Hadoop的区别是什么,请简要说一说?
  • 你觉得Python和Java在使用起来,有什么区别?
  • 给你两张表,表A和表B,其中表A有3条数据,表B有5条数据,问:表A left join 表B后有几条?
  • LVS和HAProxy相比,它的缺点是什么?
  • Sqoop用起来感觉怎样?
  • ZooKeeper的角色以及相应的Zookepper工作原理?
  • HBase的Insert与Update的区别?
  • 数组与链表的区别是什么?
  • Scala函数式编程的特点?
  • 今日头条的个性化推荐是如何实现的?
  • spark工作原理
  • spark运行原理
  • Spark Streaming
  • Storm的ack是干嘛的
  • kalfka干嘛的
  • job提交到yarn上的工作流程
  • 10x+5y+z = n,x+y+z的最小值
  • ArryList、LinkedList、vector的区别
  • hashMap HashTable的区别
  • 垃圾回收机制
  • JVM的工作原理
  • Hbase的垃圾回收工具
  • for循环LinkedList
  • 遍历HashMap的并且把某一个值删除
  • 线程 进程
  • Java中Runnable和Thread的区别Callable
  • Callable与Future的介绍
  • sleep wait区别
  • hadoop源码使用了什么JAVA技术
  • hadoop的通讯接口RPC协议
  • java的数据类型
  • mapreduce中的Text类型 LongWriteable 能不能用String 或者用long类型代替
  • JAVA如何实现序列化
  • 反序列化是什么?
  • 序列化是将(内存中的)结构化的数据数据,序列化成2进制
  • mapreduce常用的接口
  • mapreduce的工作流程
  • MR优化方式
  • 什么样的情况下不能用mapreduce
  • HDFS的架构
  • hdfs改那几个文件 分别改什么内容 内容代表什么意思(3次)
  • core是全局的 site是局部的
  • hdfs优化
  • mapreduce怎么实现join连接
  • yarn的ha搭建
  • zookeeper的工作原理和应用场景
  • 如何解决mapreduce的数据倾斜
  • mapreduce怎么实现把移动数据到移动计算的
  • hive 增加数据有几种方式
  • 怎么给hive的表里面增加一个字段
  • 增加的字段里面数据占不占内存
  • 给字段增加值怎么增加
  • 1g的小文件,1g的一个文件 ,为什么小文件占的空间更大
  • hive建表,什么情况下见内部表
  • impala 依赖
  • 怎么解决hive数据倾斜问题
  • hbase rowkey的设计原则
  • 唯一 简明有意义
  • hbase的应用场景
  • 你们平时PV有多少,数据量有多少
  • Hive是重点
  • hadoop工程师
  • zookeeper在hbase中作用
  • ZK中存的两张最重要的表
  • shall 数组的分隔符是什么
  • linux的copy

End.

转载请注明来自36大数据(36dsj.com): 36大数据» 机器学习及大数据相关面试的职责和面试问题

相关 [机器学习 大数据 相关] 推荐:

大数据/数据挖掘/推荐系统/机器学习相关资源

- - 互联网分析沙龙
Share my personal resources,本文贡献者为Zhe Yu. 各种书~各种ppt~更新中~ http://pan.baidu.com/s/1EaLnZ. 机器学习经典书籍小结 http://www.cnblogs.com/snake-hand/archive/2013/06/10/3131145.html.

机器学习及大数据相关面试的职责和面试问题

- - IT瘾-bigdata
· 机器学习、大数据相关岗位的职责. 各个企业对这类岗位的命名可能有所不同,比如推荐算法/数据挖掘/自然语言处理/机器学习算法工程师,或简称算法工程师,还有的称为搜索/推荐算法工程师,甚至有的并入后台工程师的范畴,视岗位具体要求而定. 机器学习、大数据相关岗位的职责. 根据业务的不同,岗位职责大概分为:.

LibRec 2.0.0 正式版发布: 基于机器学习的大数据推荐系统

- - 开源中国社区最新新闻
LibRec: 基于机器学习的大数据推荐系统. LibRec 是领先的推荐系统Java开源算法工具库,覆盖了70余个各类型推荐算法,有效解决评分预测和物品推荐两大关键的推荐问题. 推荐系统是机器学习和大数据技术的经典实际应用,旨在提供高效准确的个性化物品推荐,是现代Web应用的重要组件. 项目结构清晰,代码风格良好,测试充分,注释与手册完善.

大数据和AI策略–面向投资的机器学习和另类数据方法(附280页报告)

- - 互联网数据中心-199IT
J.P.摩根最新的280 页研究报告《大数据和 AI 策略——面向投资的机器学习和另类数据方法》,极为详尽地梳理、评述、预测了对冲基金和投资者使用机器学习技术利用、分析另类数据的现状与未来,对于一切关注这一新兴大趋势的人们、一切投资者都有重要的借鉴意义. 大数据,特别是另类数据集的构建和利用,已经极大地改变了投资领域的面貌.

如何使用机器学习解决实际问题-以关键词相关性模型为例

- - Dustinsea
本文以百度关键词搜索推荐工具字面相关性模型为基础,介绍一个机器学习任务的具体设计实现. 包括目标的设定,训练数据准备,特征选择及筛选, 以及模型的训练及优化. 该模型可扩展到语意相关性模型,搜索引擎相关性及LTR学习任务的设计实现. 目标设定:提升关键词搜索相关性. 作为一个搜索+推荐产品,百度关键词搜索推荐系统的产品形态是向凤巢用户推荐适合他业务的关键词.

大数据排序或取重或去重相关问题

- - 学着站在巨人的肩膀上
给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url. 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G. 所以不可能将其完全加载到内存中处理. s 遍历文件a,对每个url求取 ,然后根据所取得的值将url分别存储到1000个小文件(记为 )中.

机器学习五步走

- - 我爱机器学习
经常会有人问“我该如何在机器学习方面更进一步,我不知道我接下来要学什么了. 一般我都会给出继续钻研教科书的答案. 每当这时候我都会收到一种大惑不解的表情. 但是进步确实就是持续的练习,保持较强的求知欲,并尽你可能的完成具有挑战性的工作. 因为他是为数不多的几种可以让你真真让你获取坚实知识的媒介. 是的,你可以选择选一门课,注册MOOC,参加一些讨论班.

机器学习之路

- - 我爱机器学习
自从答应简二毛博士将自己的机器学习历程和心得分享给大家至今,转眼间半年已经过去了,感谢简博士分享和开源精神的鼓舞,这也正是本系列关于机器学习介绍博客的动力来源. 之前有些网友,师弟们问我,学习机器学习怎么入手,从看什么书开始. 如果你只愿意看一本书,那么推荐Bishop的PRML,全名Pattern Recognition and Machine Learning. 这本书是机器学习的圣经之作,尤其对于贝叶斯方法,介绍非常完善.

机器学习算法Boosting

- - 标点符
机器学习通常会被分为2大类:监督学习和非监督学习. 在监督学习中,训练数据由输入和期望的输出组成,然后对非训练数据进行预测输出,也就是找出输入x与输出y之间的函数关系F:y = F(x). 根据输出的精确特性又可以分为分类和回归. 分类和回归的区别在于输出变量的类型. 定量输出称为回归,或者说是连续变量预测.

Mahout实现的机器学习算法

- - ITeye博客
使用命令:mahout -h.   在Mahout实现的机器学习算法见下表:. EM聚类(期望最大化聚类). 并行FP Growth算法. 并行化了Watchmaker框架. 非Map-Reduce算法. 扩展了java的Collections类. Mahout最大的优点就是基于hadoop实现,把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能.