论文部分内容阅读
图像分类问题在计算机视觉领域占有重要地位,其实际应用也非常广泛。探究有效的图像分类算法是近些年的研究热点,主要包括图像特征编码与深度结构学习两个方向。针对这两个方向的研究热点与难点,本文的研究课题从两部分内容展开,一是基于特征编码的图像分类算法研究,二是基于Sum-Product Networks(SPNs)结构学习的图像分类算法研究。其中,特征编码的研究较为广泛,且取得了不错的成果,本文在局部约束线性编码(Locality-constrained linear coding,LLC)的基础上探究了更加有效的编码方式,并在常用图像数据集上进行图像分类来验证其有效性。而SPNs是刚提出的一种新型深度结构,本文基于SPNs的结构学习算法,探究了其特性及改进方法,然后在常用数据集上验证其分类性能的好坏。基于特征提取的图像分类算法的核心问题是如何对特征进行有效编码。局部约束线性编码LLC因其良好的特征重构性与局部平滑稀疏性,已取得了很好的分类性能。然而,LLC编码的分类性能对编码过程中的近邻数k的大小比较敏感,随着k的增大,编码中的某些负值元素与正值元素的差值绝对值也可能增大,这使得LLC越来越不稳定。本文通过在LLC优化模型的目标方程中引入非负约束,提出了一种新型编码方式,称为非负局部约束线性编码(Non-negative locality-constrained linear coding,NNLLC)。该模型一般采取迭代优化算法进行求解,但其计算复杂度较大。因此,本文提出两种近似非负编码算法,其编码速度与LLC一样快速。实验结果表明,在多个广泛使用的图像数据集上,相比于LLC,NNLLC编码方式不仅在分类精确率上提高了近1%~4%,而且对k的选取具有更强的鲁棒性。SPNs结构学习算法——Learn SPN的提出使得SPNs的学习更加快速灵活,但该学习系统只在离散二值变量生成的实例集上适用,且在常用于深度学习的图像数据集上,分类效果很不理想。为了扩展该算法在图像数据集上的适用性,本文对Learn SPN算法进行改进,生成新的NLearn SPN算法。该算法将其中的核心结构,即变量划分与实例划分使用新的算法实现,并对整个算法的流程进行了细微调整。在CIFAR-10数据集上的实验结果表明,改进后的NLearn SPN算法的分类效果也不太理想,可能是因为该算法中变量与实例的划分结构是人为设定而非自动学习到的,导致学到的SPNs对图像数据的表达偏差较大。若对NLearn SPN算法进行改进,使其自动学习SPNs的结构,在图像分类问题上也许能够提升其分类性能。