0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

算法工程师的笔试和面试总结

工程师人生 来源:工程师吴畏 2019-03-22 14:29 次阅读

从16年九月份开始,参加了一些公司算法工程师/机器学习工程师岗位的校园招聘,做一些总结,希望可以给大家准备这个职位提供些信息

一、需要的基本技能

数据结构知识

掌握一门编程语言,c/c++/Java/Python

机器学习常用算法或者某一细分领域(推荐,自然语言处理,图像识别,语音识别等)的常用算法

二、笔试和面试内容

大多是技术笔试然后二到三轮的技术面试

技术笔试都是考察基本的计算机知识,概率统计相关题目,智力题,linux常用命令和编程/算法能力等

计算机知识包括:

主要是数据结构包括数组,增删链表,树,排序算法等。也可能会有数据库基本语句,操作系统进程和 线程相关的,计算机网络的TCP/IP协议部分)

编程能力:

一到三道在线编程题目

算法能力:

给出一个场景,回答使用什么算法去建模解决

面试问题

机器学习常用算法,例如:

决策树的ID3,C4.5,CART等,决策树的split原理和剪枝策略

神经网络如何工作

SVM的原理及公式推导

朴素贝叶斯的公式

Bagging 和 Boosting的区别

GBDT的参数怎么调

聚类过程

偏差和方差是什么,高偏差和高方差说明了什么

怎么理解损失函数,SVM的损失函数是什么,写出公式

过拟合怎么解决,L1和L2正则化有什么区别

为什么用最小二乘而不是最小四乘

GB和牛顿法的区别,它们和泰勒公式的关系

数据结构算法知识,手写代码,例如:

最大子数组和

快速排序

字典排序

特征工程

PCA的原理

数据结构算法知识,手写代码,例如:

最大子数组和

快速排序

字典排序

编程能力,考察熟悉的编程语言的相关知识,编程语言掌握一门即可,例如:

java:static的作用,hashmap,arraylist和linklist的区别,多线程

c/c++:实现strstr(判断一个字符串是否是另一个的子串)

编程能力,考察熟悉的编程语言的相关知识,编程语言掌握一门即可,例如:

java:static的作用,hashmap,arraylist和linklist的区别,多线程

c/c++:实现strstr(判断一个字符串是否是另一个的子串)

python:安装Python的命令是什么,用python读取一个文件,一行一行的输出(不能用库函数)

python:安装Python的命令是什么,用python读取一个文件,一行一行的输出(不能用库函数),python常用库

大数据开发能力:Hadoop/Hive/Map Reduce开发,例如Map Reduce 写 word count

深度学习知识:

深度学习框架

CNN:什么是卷积,为什么要padding(根据简历的具体项目问

Udacity的机器学习项目P0和P1,如果写,请想好如下问题:

P0(泰坦尼克号项目):预测这个有啥用?召回率是多少?(题目中并没有算)

P1(预测波士顿房价):特征都是离散的,为什么用决策树?

(虽然是用的决策回归树,但我也没想 到更好的回答的方式)。。。

这些面试题目仅供大家参考,各个公司问每个人的也不一样,会根据公司的需求,个人简历上的项目问

三、总结:

各个公司的侧重点不太一样,有的公司侧重数据分析/数据挖掘(京东,笔试题好多spass),有的公司偏向推荐算法(协同过滤,CTR点击率预估)(美团,汽车之家也很注重思维能力),用户画像(百度的百家号),有的公司侧重大数据开发(要求里写了Hadoop/Hive)(中国移动),有的公司更侧重算法层面,建模能力(滴滴)

如果是面试自然语言处理(NLP),图像识别,语音识别之类的公司,基本是要求深度学习知识的。创业公司的话,要求关注最新会议,跟paper,关注领域内最新进展

四、推荐网站和书目

推荐编程刷题网站:牛客网,Leecode

推荐书目《剑指offer》(c++),《程序员代码面试指南》(java编写),

《机器学习(周志华著)》(西瓜书),《统计学习方法(李航著)》

五:一些建议:

掌握基本知识后要确定好自己的目标,机器学习是一个大的方向,还有很多细分,究竟是要做文本,推荐,图像还是语音识别,差别都很大,人不可能面面俱到,掌握好一个领域的内容就很厉害啦~~

六:数据分析与机器学习的区别

个人的一点理解,具体还是看岗位要求怎么写的

数据分析偏向统计一些,要会SQL/Spass/SAS等数据分析软件等,更适合数学和统计专业

* 大数据开发能力:Hadoop/Hive/Map Reduce开发,例如Map Reduce 写 word count

深度学习知识:

* 深度学习框架

* CNN:什么是卷积,为什么要padding(根据简历的具体项目问

1

2

Udacity的机器学习项目P0和P1,如果写,请想好如下问题:

P0(泰坦尼克号项目):预测这个有啥用?召回率是多少?(题目中并没有算)

P1(预测波士顿房价):特征都是离散的,为什么用决策树?

(虽然是用的决策回归树,但我也没想 到更好的回答的方式)。。。

这些面试题目仅供大家参考,各个公司问每个人的也不一样,会根据公司的需求,个人简历上的项目问

三、总结:

各个公司的侧重点不太一样,有的公司侧重数据分析/数据挖掘(京东,笔试题好多spass),有的公司偏向推荐算法(协同过滤,CTR点击率预估)(美团,汽车之家也很注重思维能力),用户画像(百度的百家号),有的公司侧重大数据开发(要求里写了Hadoop/Hive)(中国移动),有的公司更侧重算法层面,建模能力(滴滴)

如果是面试自然语言处理(NLP),图像识别,语音识别之类的公司,基本是要求深度学习知识的。创业公司的话,要求关注最新会议,跟paper,关注领域内最新进展

四、推荐网站和书目

推荐编程刷题网站:牛客网,Leecode

推荐书目《剑指offer》(c++),《程序员代码面试指南》(java编写),

《机器学习(周志华著)》(西瓜书),《统计学习方法(李航著)》

五:一些建议:

掌握基本知识后要确定好自己的目标,机器学习是一个大的方向,还有很多细分,究竟是要做文本,推荐,图像还是语音识别,差别都很大,人不可能面面俱到,掌握好一个领域的内容就很厉害啦~~

六:数据分析与机器学习的区别

个人的一点理解,具体还是看岗位要求怎么写的

数据分析偏向统计一些,要会SQL/Spass/SAS等数据分析软件等,更适合数学和统计专业

机器学习要求编程能力较强,即算法实现能力,更适合数学和计算机专业

七:感受到的现状

机器学习是一个相对开发来说较新的职位,一些公司也开始增加这些职位,需求还是有的,要求也较高

机器学习要求编程能力较强,即算法实现能力,更适合数学和计算机专业

以上是一些笔试面试总结,仅供大家参考,欢迎大家补充交流和批评指正

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1571

    浏览量

    68569
  • 算法
    +关注

    关注

    23

    文章

    4622

    浏览量

    93092
收藏 人收藏

    评论

    相关推荐

    面试题】人工智能工程师高频面试题汇总:机器学习深化篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如机器学习的那些
    的头像 发表于 12-16 13:42 2012次阅读
    【<b class='flag-5'>面试</b>题】人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总:机器学习深化篇(题目+答案)

    面试题】人工智能工程师高频面试题汇总:Transformer篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如机器学习的那些
    的头像 发表于 12-13 15:06 557次阅读
    【<b class='flag-5'>面试</b>题】人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总:Transformer篇(题目+答案)

    人工智能工程师高频面试题汇总——机器学习篇

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如机器学习的那些
    的头像 发表于 12-04 17:00 919次阅读
    人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总——机器学习篇

    图像算法工程师的利器——SpeedDP深度学习算法开发平台

    随着人工智能的兴起,AI工程师特别是基于图像的算法工程师日益成为炙手可热的香饽饽。特别是在一些行业市场例如工业领域等行业领域,需要根据具体场景对检测识别算法进行不断地优化完善,以达到更
    的头像 发表于 11-08 01:06 340次阅读
    图像<b class='flag-5'>算法</b><b class='flag-5'>工程师</b>的利器——SpeedDP深度学习<b class='flag-5'>算法</b>开发平台

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    ,共同进步。 欢迎加入FPGA技术微信交流群14群! 交流问题(一) Q:FPGA中的FPGA算法工程师、FPGA逻辑工程师、FPGA原型验证工程师三者有什么区别? A:FPGA
    发表于 09-23 18:26

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师,他们主要负责设计和开发嵌入式软件,
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00