Last updated on 2021年9月8日
趁我还记得写一下面试经过
一进去先笔试,纯英文笔试
笔试内容是C++基础
多继承(多个函数互相继承如何互相强转换,问你哪个地方开始报错)
C++ 11,类的构造(问你一个空类在构造的时候,有什么函数是已经默认在里面的)
机器学习算法
激活函数,反向传播(给定一张模型图,手写出它的激活函数坐标图,手算梯度下降f(x)的导数)
设计机器学习模型,线性模型(给定一个数据集,问你怎么设计一个用于推断的线性模型)
mAP计算公式(mAP的计算公式是什么)
数组回型展开(一个二维数组,按照 00 01 02 03 13 23 33 32 31 30 20 10 11 12 22 21方式回型展开的leetcode题)
面试部分
问项目,问做过什么东西
深度学习,各个算子的功能,框架了解程度(你了解的模型里,每个算子各自是发挥了什么功能,说说你了解的模型的算子结构)
模型优化方法,包括,压缩,剪枝,量化(如何优化一个模型,压缩、剪枝、量化这些的具体原理是怎么样的)
手写一个量化函数
C++11,线程池(线程池用过吗)
左值引用(左值引用与右值引用的区别)
手写一个线程池
share指针和unique指针(智能指针)
unique指针如何包装使其可以被其他函数调用
share指针的计数方法具体是怎么实现的
debug方法,如何debug
几十万行的C++代码发生内存泄漏,如何快速定位发生内存泄漏的代码位置
设计模式,了解过设计模式吗
手写算子(有手写过深度学习算子吗,例如用openBLES写个卷积函数?)
了解框架加速的原理
ncnn为什么在arm平台上跑得快,原理是什么
排序算法,有哪些排序算法
单论时间复杂度,谁的时间复杂度最低
快排是怎么实现的,什么情况下快排最慢,什么情况下最快
写过cmake吗,如何在cmake中引用其他cmake,如何在cmake中使用shell命令
用过Linux吗,列举一下命令,一些非常用命令了解多少
算法题:给定一个数组,求这个数组的所有子串里最小的数字的和(例如[1 2 3],子串有[1] [2] [3] [1 2] [1 3] [2 3],最小的是1+2+3+1+1+2)
开放问题:最近看了什么书
Be First to Comment