研究题目
动作识别—基于3D卷积网络特征输入的子空间方法
研究背景·研究目的
动作识别一直是机器视觉中的一项重要应用,其主要目标是判断一段视频中的行为类别,在实际运用中有不少应用场景,比如购物分析,比赛动作判定,行为分析,步态分析等等。近年来也有很多动作识别方面的研究结果被发表并且运用到实践中。在大四实习过程中有幸接触到机器学习方面的项目,涉及到了卷积网络与动作识别相关知识。在阅读文献的过程中我了解到了两种截然不同的解决问题的思路。第一种是构建卷积网络进行数据训练的机器学习方法,第二种是利用某种方法对数据进行特征提取之后直接对特征进行分类,也有部分文献是基于两种方法的融合。虽然上述方法都有比较优秀的表现,但是只有极少数的文献考虑到了数据的时间特征,并且在这些运用了时间特征的方法中基本都是以卷积网络的形式直接分析出结果,只对最终的数据特征值进行了简单的线性分类,而在上述的第二种思路中,则有不少文献提出了对特征值高效利用的方法,其中我最感兴趣的方法就是子空间方法。
我认为子空间方法或者其扩展方法在分类中更有优势,只是子空间方法需要一个优质的特征提取器,而卷积网络在特征提取方面表现相当优秀,并且已经有少数文献提出了能兼顾时间特征的3D卷积网络的概念并且给出了相当优秀的实验数据。所以本研究目的在于假设一种3D卷积网络与子空间方法结合的动作识别方法,并且验证其在专业动作以及视频数据中能达到怎么样的性能表现,是否能给动作识别这一问题带来一些新的研究思路。
先行研究
在[4]这篇文献中详细阐述了子空间方法,并且应用在了图片分类应用上,描述了不同类别之间的子空间相似度的计算方法。之后在[5]中阐述了子空间的扩展方法,例如差分子空间以及广义差分子空间方法,通过将每个类别的子空间投影到广义差分子空间,可以在明显提高不同类别之间差距的同时降低类内的方差影响,并且为了提高对非线性数据的分类性能,引入了kernel方法。在许多领域中子空间方法都有相关文献发表并且性能表现优秀,比如面部识别,步态识别,以及手写字符识别等,这表明子空间的确拥有良好的特征分类特性。不仅如此,已经有文献尝试将子空间方法运用在动作识别应用上了,例如在[9-11]三篇文献中均采用了子空间的扩展方法。前者使用TWARMA的方法提取出连续图片中与速度无关的特征,后两者运用RTW方法求其子空间并进行分类。但是两者均没有达到目前已有的动作识别方法的最优性能,作者在结尾的分析中提到有可能是特征提取阶段没有达到理想的程度。
但是,卷积网络在特征提取方面已经有大量的研究并且得到了肯定。在[3]中就采用了CNN特征结合锥形子空间的方法,给出了相当不错的分类结果。[12]以及[13]两篇文献中均采用了CNN特征进行图像分类并且与现有的方法进行比较,证明了其可行性,前者采用CNN特征作为输入的SVM方法进行图片分类,而后者则通过对不同的卷积网络的FACTORS进行调整,试图找到较好的应用到新任务中的特征提取网络。虽然以上文章都采用了CNN特征,但是我认为在动作识别中不仅要考虑空间上的特征,时间特征在分类中也有很大的比重,普通的卷积网络很难有效的提取时间特性,而且已经有文献对卷机网络进行改造尝试提取时间特征,例如[1,2]这两篇文章中,均采用3D卷积网络的形式提取在空间以及时间方向上的特征并应用在了分类任务上。而在[14]这篇文章中则采用了多种方法利用卷积网络尝试提取时间特征,其中Fast Fusion与Last Fusion分别在第一层与最后一层采用了类似于3D卷积的方法,而Slow Fusion则是每一层都采用了3D卷积网络的思想理念,而在最后的结果中Slow Fusion方法表现的较为优秀。
基于以上分析,我觉得3D卷积网络中对特征值处理的方法并不是最优的,所以我想结合3D卷积网络的特征提取特性与子空间方法的分类特性,针对动作识别提出一种可以实行的结合方案。
研究方法与步骤
在以上先行研究的基础上,本研究基于两个不同的3D卷积网络特征值,C3D特征与Slow Fusion卷积网络特征,数据集则采用SPORTS-1M与UCF101两个视频集的子集。子空间方法则参照[15]中提出的方法。总体的实验步骤预想大概有以下四个主要步骤。
第一步,卷积网络的训练,为了得到较好的3D网络特征值同时降低计算资源,对[2][14]已经训练好的网络进行Fine-tuning,并且只使用SPORTS-1M与UCF101的少量数据进行训练,在测试数据的LOSS值达到最低点时停止训练。
第二步,子空间的训练,将第一步训练好的卷积网络去掉分类层次,将不同类别的数据输入网络,并得到对应的特征矩阵,生成不同的子空间,此处可考虑运用不同的子空间方法处理样本的特征矩阵,比如广义差分子空间方法,锥形子空间方法等,试验阶段将会采用不同的方法进行结果对照。
第三步,测试集正确率的计算,将预留的测试数据输入到第一步的卷积网络中得到特征矩阵或者特征向量,经过与第二步相同的子空间生成方法,计算与训练数据子空间的相似度,并分类到最相似的类别,将所有的测试数据分类结束后,计算分类正确率。
第四步,将第三步不同组合方式得到的正确率与已经发表的不同动作识别的文献进行横向对比,评估方法的可行性,并且提出可以改进的地方。
本实验主要注重3D卷积网络方法与子空间分类方法的结合,并没有对其本身提出创新。在实际过程中会尝试多种不同的组合方法,而在实际的执行中也会发生无法预料的情况,实验具体操作也会随之改变,上文中的假设也会由实验的最终数据来给出结果。
研究意义与期待的成果
目前已经有许多动作识别的相关文献被发表,实验方法也是各有不同,单纯的机器学习方法与各种特征分类方法,在相应的领域均有不错的性能表现。本实验主要是受到了两种方法优势的激发,提出一种新的结合方式,为动作识别问题提出一种新的解决方法,在解决现实问题时可以多一种比较快速并且准确的方法。因为本实验中结合了以上两种方法的优势,所以期待会得到比以上两种方法任何一种都要优秀的性能。
学习计划
首先,作为本科专业为计算机科学的一名学生,已经在本科期间对基础知识有了相当程度的了解,而在大四的实习中,也对深度学习有了一定的理论基础,但是,在实际的学习与工作中,并没有真正的机器学习训练程序的研发经验,虽然在空闲时间会自己做一些小程序,但是苦于没有硬件资源,并没有很大的提升,所以在研究生阶段,我想在研究与学习理论知识的同时尽可能多的参与机器学习项目,积累经验。其次,我想在研究生期间参与修士的入学考试,得到更深一步接触相关知识的机会,扩展自己的视野,充实自己的相关技能以更好的完成研究项目。