实习季到了,大家又浮躁了起来

实习季堪比就业季,今年的形势尤其严峻。伴随着忐忑的心情,我迎来了这个不得不面对的时期。

阿里巴巴视觉算法工程师

算法与视觉部分

  • BF,NN的区别
  • 激活函数的种类
  • 怎么防止过拟合
  • CUDA的内存模型
  • HMM是什么
  • SVM的优缺点
  • SVD分解的过程
  • PCA过程
  • 光流法
  • 模版匹配SSD与NCC的优缺点
  • 有哪些形态学操作
  • 相机畸变的参数到底有哪些
  • 交叉熵的概念
  • Sift与Surf的区别
  • 由前序遍历与中序遍历求后序遍历
  • 深度优先遍历可能的顺序


腾讯基础研究实习生

上机考试包括很多数学方面的知识,比考研数学简单多了,但是范围很广,我想过了这么久大家都忘记了吧。概率论部分占了不少题目,尤其要注意后验概率以及假设检验的题目。基础研究没有编程题目!

数学部分

  • 特征值与特征向量:Ax=λx
  • 假设检验,第一类错误与第二类错误
  • 求解偏导数
  • 切比雪夫不等式
  • F分布的性质

简答部分

  • 假设检验来确定零件是否符合标准(可以查看概率论的部分例题)
  • 神经网络以及SVM的对比,优缺点介绍
  • 根据某项调查研究,来确定某结论的正确性;

现场面试部分

一面

主要包括以下部分:

  • 自我介绍(1分钟内)
  • 项目经历(占了60%时间)
  • 编程题目(反转链表,可参考《剑指offer》
  • 意向,做工程还是做算法
    (ps: 被腾讯挂掉了,惨啊)

一面(数据挖掘)

猝不及防地又来了一波电话面试,我一脸懵逼的节奏,完全没有准备。我是小白有没有,面试官主要问了以下几个问题:

  • 解释方差,协方差以及样本方差的概念
  • 解释过拟合以及过拟合的概念以及预防措施
  • 解释TCP滑动窗口的概念(这是啥?)
  • 求超级长数组的中位数
  • 析构函数是否可以为虚函数(我是C++小白)
  • 项目介绍


商汤算法实习生

在线笔试

本人申请的岗位是见习算法研究员,笔试1个小时,20道选择填空题,3道编程题。时间略紧。涉及面也非常广,数学,智力,概率统计,线代矩阵,图形学,机器学习,神经网络,C++,均有涉及。

一、选择填空题(部分):

  1. S市A,B共有两个区,人口比例为3:5,据历史统计A的犯罪率为0.01%,B区为0.015%,现有一起新案件发生在S市,那么案件发生在A区的可能性有多大? (概率题,考查贝叶斯公式,牛客网有)

  2. A = [1, 2 ; 2, 1],求A的k次方。(线代,对A进行对角化,求特征值以及特征方程)

  3. git常用命令,克隆到本地是(),提交到仓库区(),取回远程仓库的变化,并与本地分支合并(), 推送所有分支到远程仓库(),显示有变更的文件()(答:clone, commit, pull, push, status)

  4. 表示矩阵需要多少个数字,表示矩阵的投影需要多少个数字?

  5. 给出先序序列,中序序列,求后序序列。

  6. 一个关于继承和虚函数问题。

  7. 掷两个骰子,得到两个数字A,B,设 C = A+B,那么设 C 除以4 的余数为0,1,2,3的概率分别为p0, p1, p2, p3,求它们的大小关系。

  8. 图片分辨率为512x512,pad = 2, stride = 3, kernel_size = 9, group = 4, 求卷积后输出分辨率大小。

  9. 一个关于图形自由度的问题。(本人完全没概念,所以题目具体记不清了)

  10. 以下哪个不能使用迭代器?a) map, b) set, c) queue, d) vector. (c)

  11. 有两个样本点,第一个点为正样本,它的特征向量是(0,-1);第二个点为负样本,它的特征向量是(2,3),从这两个样本点组成的训练集构建一个线性SVM分类器的分类面方程是() (答案猛击这里

  12. 在一个无序数组中,求前k个最小数字,复杂度最小为?

  13. 根据以下程序:求func(500)的值。(经典问题,相当于求500的二进制中1的个数,《剑指offer》)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    int func(x)
    {
    int countx = 0;
    while(x)
    {
    countx ++;
    x = x&(x-1);
    }
    return countx;
    }
  14. 在其他条件不变的前提下,以下哪种做法容易引起机器学习中的过拟合问题()
    a) 增加训练集量
    b) 减少神经网络隐藏层节点数
    c) 删除稀疏的特征
    d) SVM算法中使用高斯核/RBF核代替线性核

  15. 关于vector初始化的一个问题。

  16. 有4个车站连通情况如下,每辆车每天都会等概率随机从一个车站出发,然后在某个车站呆一夜,第二天再出发。求稳定之后,每个车站的车辆比例。

( 根据马尔科夫链 平稳分布,π=πP( P为转移概率矩阵),和π1+π2+π3+π4=1,同时π1=π4, π2 = π3。可以求得2:3:3:2 )

二、编程题:

  1. 连续子数组的最大和。(leetcode或剑指offer原题)

  2. Minimum Window Substring .(leetcode 原题)

特别鸣谢smallpum123的商汤回忆版!

现场面试

4月25日,从学校匆匆到了商汤科技进行面试,幸亏提前到了1个小时,要不然就被淋成落汤鸡了。

一共有两个面试官依次面了我,这两名面试官的侧重点不同,第一位是大体了解面试对象,第二位面试官更加具体深入了解面试者。

  1. 第一个面试官简单地聊了一段时间,首先是自我介绍,然后是项目经历,最常用的编程语言(我说的是Matlab),然后又问了我有没有用过Matlab的高级函数(bsxfun、ismember等),其他的没有很深入地讨论项目细节。(20 min)
  2. 接下来就是第二个面试官,还是重复前面的问题,自我介绍,项目经历,不过这次更加具体了。因为我的方向是做一些基于光场相机的深度图像估计研究的,面试官就问了我关于光场相机原理以及深度估计算法细节方面的东西;然后又问了我第二个基于GPU加速的项目,具体是如何加速代码的(该项目偏工程,没有具体展开)。项目的最后又问了我这些工程的代码量有多大,多少行的样子(我说最少得两、三千行吧)。
  3. 最后就是编程题目,面试官问我关于商汤在线评测代码书写的问题,我的回答是:对于连续子数组的最大和问题仅仅写了思路,没有写全代码。然后就是让我现场手写代码了,大概修改了4遍的样子,终于“调试”(所谓调试就是,现场测试代码一步一步写出结果)成功。(60 min)
  4. 当然,面试的最后通常面试官都会问面试者想要了解公司的事情,我就如实将我想要知道的事情想他请假了一下下,然后就没有然后了…

经过大概一个半小时,面试结束。无论结果如何,我的心情瞬间轻松许多。还是静候佳音吧~

电话面试

由香港那边的负责人对我进行了远程电话面试,主要包括自我介绍以及项目介绍,重点在项目介绍上面。Ps:当时电话那头是两位面试官听着我的陈述,我竟然浑然不知。就这样过了40分钟,结束。等待的时间最为忐忑,我觉得自己表现平平,不知道给面试官留下了什么印象。

顺利通过

经过一个漫长的劳动节并时逢校庆的假期,5月6号的下午收到了HR打来的电话,成功通过面试,现在心情还是特别激动。


搜狐图像处理实习生

初选简历过关之后进行面试。

笔试(60min)

根据应聘的实习岗做不同的题目,因为我面的是千帆直播下的图像处理岗位,所以我的题目中有很多关于这方面的相关知识。以下是我的会议版本:

  1. do while 和while do 的区别
  2. char const *p 与char * const p 的区别(答:p都是指向const char类型的指针, 不可以赋值给*p, 就是不可通过这个指针改变它指向的值; 第二个: char * const p是指向char的常指针, 指针需在声明时就初始化, 之后不可以改变它的指向)
  3. 创建并且初始化一个双向链表
  4. 代码实现二分查找
  5. 对一个WAV格式的文件头用适当的数据结构进行表示
  6. 队列与栈的区别,分别以什么数据结构表示
  7. 常见的视频压缩方法,视频格式,音频格式
  8. 汇编语言和C/C++混合编程有哪些方法
  9. 如何引用一个已经定义好的全局变量,并比较异同
  10. gdb如何调试线程,多线程呢(ps:我根本不会这个题目)
  11. 解释“熵”的概念(答:熵,热力学中表征物质状态的参量之一,用符号S表示,其物理意义是体系混乱程度的度量。信息熵表示信息的丰富程度,定义为E=-plog(p))
  12. 请解释1080p的含义(答:1080指的是分辨率1920*1080,p为扫描方式:逐行扫描)
  13. 请解释FPS的全称以及含义(答:Frames Per Second,帧率的意思)
  14. 解释“码率”的概念(答:即比特率,一秒钟处理的数据量大小,影响到视频的质量以及帧率)
  15. MPEG标准中有哪些帧类型
  16. 有以下数据结构,请问最后输出结果的是?(注意共用体的大小)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    typedef union{
    long i;
    int j[3];
    char k;
    }DATA;

    struct data{
    int m;
    DATA n;
    double q;
    };
    data max;
    printf("%d/n",&(sizeof(DATA)+sizeof(max));

还有其他的题目,记不太清了,但是主要就是以上的。难度适中,即有涉及到程序也有图像以及视频处理的相关知识。因为当时没有好好准备,猝不及防的给我了这些题目,感觉一脸懵逼。

现场面试

面试小哥很nice,人很好。首先是自我介绍,然后就是项目经历。基本上简历上的内容问了一遍,感觉还不错。问了我如果调试正在进行中的程序,如何用markdown语言引用代码,对Latex的了解等等。小哥面试结束后,以为女面试官姐姐再次对我的一些基本情况进行了询问,最后还送了一个可爱的小狐狸。
无论结果如何等结果吧,祝我好运!
ps:很幸运地被录为实习生,但是还是选择了商汤。