基于人工神经网络的目标检测算法,例如VJ算法、HOG、DMP等,人为设计特征,分为区域选择、特征提取和分类器三步,使用滑动窗口遍历整张图片,鲁棒性较差,且计算过程冗杂。自2008年传统方法陷入瓶颈期之后,深度学习方法渐渐走入大家视野。例如像素等细粒度特征,在计算机视觉中能够提供的信息较少,而一些特征力度大的特征,如猫耳朵等,往往具有一定的结构性含义,根据这些特征能够很好区分猫与其他动物。深度学习正是这样的思路,通过提取样本数据的浅层特征并对其进行组合,提取出高层特征用于分类任务。 深度学习较传统神经网络的区别在于摒弃了反向传播的方式,由于其含有较多的隐藏层和中间节点,会出现“梯度弥散”或“梯度爆炸”现象,误差很难逆向传播到前面几层。由此,深度学习主要由两部分组成,分别为特征学习和网络调优。特征学习,从底层至顶层,采用无监督方法逐层训练,每层网络对数据本身结构进行学习,进而抽象出维度较低的特征。将降维后的特征与下一层网络通过通道的张量拼接方式传递,继续提取更深层次的特征,直到所有层的参数都训练完毕,得到接近全局最优解。网络调优的方式也是自顶向下,采用有监督的方法,网络输出与真值的误差信号对模型参数进行调整,针对特征学习得到的模型最优解进一步调优得到较为理想的网络模型。具体流程包括数据载入与数据预处理、网络构建、分类函数与损失函数、优化器定义、训练与验证过程、测试。
|