这个面试是四个月之前面试的了,投简历的时候比较晚,CVTE当时已经招过一批实习生,这算是招过之后再进行补招。投的是CVTE中央研究院——视觉计算方向。
我们致力于图像处理、图像检测与跟踪、图像识别和理解、三维视觉等计算机视觉问题的算法研究,并借助公司在多个行业的深厚积累,将研究成果应用于各种垂直领域场景。该岗位的应用领域包括但不限于:
当时我主要研究的是立体视觉、结构光三维重建方向,图像的超分辨重建略有涉及,深度学习略懂皮毛。于是就投了这个岗位。几天之后接到电话面试,谁知道全是问机器学习的问题。。。难受。。。不管怎样,在这里记录一下面试问题,方便以后如果还要投类似岗位有复习方向。
接到电话之后面试官问的第一个问题是:
这个问题比较简单,但是当时没答好。神经网络里用的比较多的就是随机梯度下降法。
随机梯度下降是求一阶导数,牛顿法是求二阶导数。牛顿法包含的信息更多,但是收敛速度比较慢。
(1)在神经网络的模型中,可以使用权值衰减的方法,即每次迭代过程中以某个小因子降低每个权重。
(2)选取合适的停止训练标准,使对机器的训练在合适的程度;
(3)保留验证数据集,对训练成果进行验证;
(4)选取额外数据进行交叉验证;
(5)正则化;
(6)drop out;
(7)data augmentation
。。。
(1)以多组不同的参数值初始化多个神经网络,按标准化方法训练后,取其中误差最小的解作为最终的参数。这相当于从多个不同的初始点开始搜索,这样就可能陷入不同的局部极小值,从而有可能获得全局最小值。
(2)使用“模拟退火”技术。“模拟退火”在每一步都会以一定的概率接受比当前更差的结果,从而有助于跳出局部最小。
(3)使用随机梯度下降。
不一定,随机梯度下降只是能缓解批量梯度下降陷入局部最小的缺点。(答案我也不确定= =)