首页 > 搜索 > 算法工程师面试笔试,互联网公司最常见的面试算法题有哪些?

算法工程师面试笔试,互联网公司最常见的面试算法题有哪些?

互联网 2020-10-24 08:02:29
在线算命,八字测算命理

随着人工智能的大热,身边转型做算法工程师的朋友越来越多。其实算法工程师的细分领域也很多,今天我主要从图像算法/计算机视觉工程师类、机器学习工程师、数据挖掘算法工程师类这三类,根据大家的求职经验,来说说互联网公司常见的算法题,希望对大家求职面试有所帮助。(当然,总结的比较仓促,可能比较片面,欢迎大家随时补充)

(一)图像算法/计算机视觉工程师类

包括图像算法工程师,图像处理工程师,音/视频处理算法工程师,计算机视觉工程师等。

技术要求:

精通DirectX HLSL和OpenGL GLSL等shader语言,熟悉常见图像处理算法GPU实现及优化;语言:精通C/C++;工具:Matlab数学软件,CUDA运算平台,VTK图像图形开源软件熟悉OpenCV/OpenGL/Caffe等常用开源库; 有人脸识别,行人检测,视频分析,三维建模,动态跟踪,车识别,目标检测跟踪识别经历的人优先考虑; 熟悉基于GPU的算法设计与优化和并行优化经验者优先;【音/视频领域】熟悉H.264等视频编解码标准和FFMPEG,熟悉rtmp等流媒体传输协议,熟悉视频和音频解码算法,研究各种多媒体文件格式,GPU加速;

面试题汇总:

常用边缘检测有哪些算子,各有什么特性?简述BP神经网络,AdBoost的基本原理?关键字static的作用是什么?简述C,C++程序编译的内存分配情况?给定0-1矩阵,求连通域。写一个函数,求灰度图的直方图。 写一个均值滤波(中值滤波)。 写出高斯算子,Sobel算子,拉普拉斯算子等,以及它们梯度方向上的区别。 常用的特征提取方法。 常用的目标检测方法。 常用的边缘提取方法。 常用的插值方法。 常用的图像分割算法。 写一个图像resize函数(放大和缩小)。 彩色图像、灰度图像、二值图像和索引图像区别?(索引图像到底是啥?) 深度学习中目标检测的常用方法,异同。 给定摄像头范围和图像大小求分辨率。 如何检测图片中的汽车,并识别车型,如果有遮挡怎么办? 数字识别的流程。 介绍神经网络、SVM、AdaBoost、kNN…(每一个都可能深入问各种细节) 写梯度下降代码。 卷积神经网络与神经网络的区别。 卷积层的作用、pooling层的作用,全连接层的作用。 过拟合和欠拟合分别是什么,如何改善。 1x1卷积和的作用。 计算卷积神经网络某一层参数量。(二)机器学习工程师

技术要求:

熟悉Hadoop/Hive以及Map-Reduce计算模式,熟悉Spark、Shark等尤佳;大数据挖掘;高性能、高并发的机器学习、数据挖掘方法及架构的研发;

面试题汇总:

基础部分:

数据结构知识掌握一门编程语言,c/c++/Java/Python机器学习常用算法或者某一细分领域(推荐,自然语言处理,图像识别,语音识别等)的常用算法。

计算机知识部分:

主要是数据结构包括数组,增删链表,树,排序算法等。也可能会有数据库基本语句,操作系统进程和 线程相关的,计算机网络的TCP/IP协议部分)编程能力: 一到三道在线编程题目算法能力: 给出一个场景,回答使用什么算法去建模解决

机器学习常用算法:

决策树的ID3,C4.5,CART等,决策树的split原理和剪枝策略神经网络如何工作SVM的原理及公式推导朴素贝叶斯的公式Bagging 和 Boosting的区别GBDT的参数怎么调聚类过程偏差和方差是什么,高偏差和高方差说明了什么怎么理解损失函数,SVM的损失函数是什么,写出公式过拟合怎么解决,L1和L2正则化有什么区别为什么用最小二乘而不是最小四乘GB和牛顿法的区别,它们和泰勒公式的关系

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

java:static的作用,hashmap,arraylist和linklist的区别,多线程c/c++:实现strstr(判断一个字符串是否是另一个的子串)python:安装Python的命令是什么,用python读取一个文件,一行一行的输出(不能用库函数),python常用库。

其他面试内容:

数据结构算法知识(手写代码)特征工程PCA的原理大数据开发能力:Hadoop/Hive/Map Reduce开发深度学习知识

(三)数据挖掘算法工程师类

包括推荐算法工程师,数据挖掘算法工程师等。

技术要求:

熟悉常用机器学习和数据挖掘算法,包括但不限于决策树、Kmeans、SVM、线性回归、逻辑回归以及神经网络等算法;熟练使用SQL、Matlab、Python等工具优先;对Hadoop、Spark、Storm等大规模数据存储与运算平台有实践经验【均为分布式计算框架】数学基础要好,如高数,统计学,数据结构

面试题汇总:

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

觉得干货好吃,欢迎点赞以兹鼓励(#^.^#)

免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。

相关阅读

一周热门

查看更多