2. 西安建筑科技大学 理学院, 陕西 西安 710055
2. School of Science, Xi ’an University of Architecture and Technology, Xi’an 710055, China
集成学习是一种重要的机器学习方法,主要思路是多个分类器基于某种组合方式组合在一起,来取得比单个分类器更好的性能,从而可显著提高学习系统的预测精度和泛化能力[1]。
基分类器之间的多样性是影响集成系统泛化性能的重要因素[2],产生泛化能力强、差异性大的基学习器是集成算法的关键。但如何有效的度量并利用这些多样性还是一个悬而未决的问题。目前大多数多样性度量方法都是基于基分类器的0/1输出方式(Oracle输出),主要分为两大类:成对度量和非成对度量。成对度量方法主要有Q统计方法[3]、不一致度量方法[4]、双错度量方法[5]和相关系数法[6]等;非成对度量方法主要有KW差异度量方法[7]、
近年来国内学者们也提出了一些新的研究多样性度量方法。例如:邢红杰等[13]提出了一种关系熵多样性度量方法,结合相关熵和距离方差描述支持向量数据来实现选择性集成;李莉[14]提出了一种距离信息熵的多样性描述方法实现基分类器集成,该方法在UCI数据集上具有与成对差异性度量方法一致的效果;赵军阳等[15]针对多分类器系统差异性评价中无法处理模糊数据的问题,提出了一种采用互补性信息熵的分类器差异性度量方法,该方法省略了对分类器输出结果的正确性判别过程,直接处理分类器的输出结果,但是未考虑集成规模与精度之间的平衡问题,对系统的泛化性能有一定的影响;周刚等[16]提出了一种联合信息增益的过程多样性度量方法,该方法在西瓜数据集上拥有与传统方法相近的准确性。上述几种方法都是基于信息论角度来定义多样性的,基模型的训练和集成都采用机器学习方法得到,在应用卷积神经网络集成的多样性研究方面较少。
随着深度学习的快速发展,卷积神经网络(convolutional neural network,CNN)[17]因其独特的结构已成为当前图像识别领域的研究热点。卷积神经网络分类器的输出方式与Oracle输出方式不同,采用的是c维向量输出方式。在处理多分类(c>2)问题中,分类器输出单元都需用Softmax激活函数进行数值处理,将多分类的输出数值向量形式转化为类标签的相对概率向量方式,即c维向量形式
针对此问题,本文充分利用多分类卷积神经网络的输出特性信息,提出了一种基于卷积神经网络集成的多样性度量方法。采用概率向量输出方式来表示模型分类结果,引入两个向量的差异性,针对每一个训练样本计算模型输出结果之间的差异性来评估多样性。
1 3种传统多样性方法假设存在分类器
1)Q统计方法(Q)
$ {Q_{ij}} = \frac{{ad - bc}}{{ad + bc}} $ | (1) |
2)不一致性度量(Dis)
不一致性度量表示两个分类器之中一个判断正确一个判断错误的测试个数与总测试个数的比值。
$ {{D}}_{\rm{is}} = \dfrac{b + c}{m} $ | (2) |
3)双错度量方法(DF)
$ D_{\rm{F}} = d/m $ | (3) |
首先定义两个多类分类的分类器
$ {{\boldsymbol{D}}_{\rm{A}}}\left( z \right) = [ {d_{{{\rm{A}}_0}}}\; {d_{{{\rm{A}}_1}}}\; {d_{{{\rm{A}}_2}}}\; \cdots \;{d_{{{\rm{A}}_{c - 1}}}}] $ |
$ {{\boldsymbol{D}}_{\rm{B}}}\left( z \right) = \left[ {{d_{{{\rm{B}}_0}}}\;{d_{{{\rm{B}}_1}}}\;{d_{{{\rm{B}}_2}}}\; \cdots \;} {{d_{{B_{c - 1}}}}} \right]$ |
其中,向量中的各元素是模型预测概率值,索引
模型经过训练之后,输出层经过Softmax激活函数得到模型概率向量结果,定义卷积神经网络的多样性度量方法,基本思路如下:
1)将2个分类器概率向量中的元素从大到小进行排列,并返回其对应的index(类标签)值,得到分类器最大置信度概率由大到小排列对应的类标签向量
$ {{\boldsymbol{L}}_{\rm{A}}}\left[ i \right] = {\text{np}}{\text{.argsort}}\left( {{D_{\rm{A}}}\left( z \right)} \right)\left[ {:: - 1} \right] $ | (4) |
$ {{\boldsymbol{L}}_{\rm{B}}}\left[ i \right] = {\text{np}}{\text{.argsort}}\left( {{D_{\rm{B}}}\left( z \right)} \right)\left[ {:: - 1} \right] $ |
2)对于已标记单一样本
$ {f_{{\rm{AB}}}}{(i)} = \left\{ \begin{gathered} 1,{L_{\rm{A}}}\left[ i \right] \ne {L_{\rm{B}}}\left[ i \right] \hfill \\ 0,{L_{\rm{A}}}\left[ i \right] = {L_{\rm{B}}}\left[ i \right] \hfill \\ \end{gathered} \right.,\quad i = {\text{0}},1,2, \cdots ,c - 1 $ | (5) |
$ {D_{{\rm{AB}}}}\left( {{z_j}} \right) = \frac{1}{c}\sum\limits_{i = 0}^{c - 1} {{{\left( {{k_i}{f_{{\rm{AB}}}} }{(i)} \right)}^{\text{2}}}} $ | (6) |
式中:
式(4)返回两个分类器元素之间的差异性结果序列。分类器之间的多样性只是反映两个模型对于已标记样本差异性,与模型类标签值无关,与输出结果的位置无关。因此,为了保证度量的准确性和有效性,定义式(5)在分类器相同的索引值情况下,当两个分类器输出类标签是一致时,返回为0;当输出类标签不同时返回为1。将式(5)代入式(6),得到两个分类器对于单一样本多样性的定义。
假设对于样本
$ \begin{gathered} {{\boldsymbol{D}}_{{\rm{AB}}}}\left( {{z_j}} \right) = \frac{1}{5}{\sum\limits_{i = 0}^{4} {\left( {{k_i}{f_{{\rm{AB}}}}^{(i)}} \right)} ^{2}} = \\ \frac{1}{5} \left( {{{(8 \times 0)^2} + (4 \times {1})^2+ (2 \times 1)^2} + (1 \times 1)^2 + (0 \times 0)^2} \right)= 4.2 \\ \end{gathered} $ |
而如果采用基于Oracle输出的多样性度量方式,对于该样本两分类器输出结果相同,得到的多样性为0。
3)对于已标记样本集
$ {{\boldsymbol{D}}_{{\rm{AB}}}}\left( Z \right) = \frac{1}{m}\sum\limits_{j = 0}^{m - 1} {{{\boldsymbol{D}}_{{\rm{AB}}}}\left( z_j \right)} $ | (7) |
4)对于多分类器系统
$ {{\boldsymbol{D}}_{{\rm{PV}}}}\left( Z \right) = \frac{2}{{T\left( {T - 1} \right)}}\sum\limits_{i = 1}^{T - 1} {\sum\limits_{j = i + 1}^T {{{\boldsymbol{D}}_{{{ij}}}}\left( Z \right)} } $ | (8) |
为了验证新的多样性度量方法的有效性和先进性,采用4种方法计算基模型的多样性:Q统计、不一致性度量、双错度量和本文提出的基于概率向量方法DPV。在CIFAR-10与CIFAR-100数据集上分别进行了实证对比分析。
实验分析主要分为3部分内容:1)训练19个基学习器模型,并得到单个基模型以及预测结果;2)基于CIFAR-10、CIFAR-100数据集采用4种方法计算各基模型之间的多样性;3)在数据集上进行基模型的集成预测,采用简单平均集成策略集成基模型,并对比分析单个模型与集成模型之间的预测结果。
3.1 模型结构卷积神经网络是一种具有深度结构的前馈神经网络,对于大型图像处理具有十分出色的表现[19]。CNN的基本结构由输入层、卷积层、池化层、全连接层和输出层构成。本文构造了19种不同结构的CNN网络模型,网络结构都包括输入层、卷积层、池化层、Dropout层、Flatten层和全连接层,各模型结构不同之处在于卷积层、池化层和Dropout层的不同。表2、3为其中9个模型的具体结构。
本实验采用的是Windows10系统的GTX1660Ti 6 GB独立显卡实验平台。在Window10系统下,所有网络均基于深度学习框架Tensorflow2.0实现。
模型的性能评价指标包括训练集、验证集、测试集的准确性(Accuracy, 简称Acc),是衡量模型正确分类的标准。其中测试集的准确率直接反映了模型的预测能力,见式(9)所示:
$ {{A_{\rm{cc}}}} = \frac{1}{m}\sum\limits_{j = 1}^m {I\left( {{y_j} = f\left( {{x_j}} \right)} \right)} $ | (9) |
式中:m是已标记样本集
CIFAR-10和CIFAR-100数据集是用于普适物体识别的图像分类数据集,由Alex等[20-21]收集。CIFAR-10 和CIFAR-100数据集都包含60000张32像素×32像素的彩色图片,分别为训练集50000张和测试集10000张,训练集用于训练基学习器,并计算模型间多样性值;测试集则用于对各种基模型和集成模型的预测效果进行验证和对比。CIFAR-10数据集分为10个类,每个类有6000张图片;CIFAR-100数据集有20个超类,每个超类分为5个小类,总计100分类,每个分类包含600张图片。
3.4 实验结果分析 3.4.1 基模型预测结果基学习器模型分别在CIFAR-10和CIFAR-100数据集上进行训练,使用SGD优化器[22]更新权重,对训练数据集首先进行图像预处理,包括图像归一化和数据集打乱,批量规范化之后训练单批次大小为128。经过反复实验,卷积神经网络模型大概在200次迭代之后已经完全收敛,识别率达到了最高,故Epochs值设置为200;在卷积操作中使用ReLU[23]激活函数,添加L2正则化处理,参数设置λ为0.001;利用Dropout防止过拟合,设置为0.25;采用分段学习率训练方式,初始学习率设为0.01,动量系数均为0.9;权重初始化采用He正态分布初始化器,偏差初始化为零。单个基模型经过训练后的预测结果如表4所示。
由表4可知,基模型15~19的预测准确性较低,考虑到模型集成之后的效果,初步筛选出基模型1~14作为初筛选基模型。
3.4.2 基于CIFAR-10数据集的多样性分析表5是3种传统多样性方法和本文方法分别在CIFAR-10数据集上得到的多样性统计值最大的两分类器集成模型,表6是表5得到的两分类器集成模型在测试集上的预测结果。同理,表7是得到的多样性统计值最大的三分类器集成模型,表8是其预测结果;表9是得到的多样性统计值最大的四分类器集成模型结果,表10是其预测结果。其中,平均集成精度是指通过多样性方法筛选得到的三组集成模型组合采用简单平均集成策略得到的在测试集上的集成精度,并求取平均值的结果;基模型平均精度是指表6中筛选出的单个基模型在测试集上的分类精度的平均值。如表6中DF方法的平均集成精度就等于表5中对应的3个两分类器集成模型2-14、2-5和5-14分别在测试集上的集成精度的平均值,而相应的基模型平均精度是指单一基模型2、5和14测试精度的均值结果。
由表5、6可知,本文方法筛选出的二分类器集成模型是2-6、2-3和2-5,平均集成精度相比于基模型平均精度提升效果最优,提升了2.197%;由表7和表8可知,本文方法筛选出的三分类器集成模型为2-3-6、2-5-6和2-6-8,集成精度相比于基模型平均精度提升效果最优,提升了2.575%;由表9、10可知,本文方法筛选出的四分类器模型是2-3-5-6、2-3-6-8和2-3-6-10,集成精度相比于基模型精度提高了2.580%,比Q统计方法效果好,比不一致性方法相差0.397%,比双错度量方法相差0.074%。同时,本文方法筛选出的二分类器的平均集成精度是最高的,达到了92.067%,性能相比于其他3种方法是最优的,三分类器和四分类器的平均集成精度与双错度量得到的结果相近,且高于不一致性方法和Q统计方法,说明本文提出的基于概率向量的多样性度量方法是有效的。
为进一步验证本文所提方法的有效性,在CIFAR-100数据集上进行验证实验。表11是3种传统多样性方法和本文方法分别在CIFAR-100数据集上得到的多样性统计值最大的两分类器集成模型,表12是表11得到的两分类器集成模型的预测结果;表13是得到的多样性统计值最大的三分类器集成模型,表14是其预测结果;表15是得到的多样性统计值最大的四分类器集成模型,表16是其预测结果。
由表11、12可知,本文方法在CIFAR-100数据集上筛选出的二分类器集成模型是5-14、12-14和3-14,平均集成精度相比于基模型平均精度提升效果最优,提升了5.812%;由表13、14可知,本文方法筛选出的三分类器集成模型为5-12-14、5-8-14和3-8-14,平均集成精度相比于基模型平均精度提升效果最优,提升了7.421%;由表15、16可知,本文方法筛选出的四分类器模型是3-5-12-14、3-5-8-14和5-8-12-14,平均集成精度相比于基模型平均精度提高了7.846%,集成精度相比于基模型精度提升效果最优。同时,在CIFAR-100数据集上, 本文方法相比于其他3种方法, 筛选出的集成模型的平均集成精度无论是二分类器、三分类器还是四分类器都是最高的,集成性能优于双错度量方法、不一致性方法和Q统计方法,再次验证了本文方法的有效性。
在基模型准确性比较接近的情况下, 在CIFAR-10数据集上DPV方法和双错度量方法筛选出的集成模型的集成性能较接近,都优于不一致性和Q统计方法;在CIFAR-100数据集上,DPV方法筛选出的集成模型无论是平均集成性能还是相对于基模型提升的效果都是最佳的。由此说明,在基模型相对较弱,模型之间有更大的互补空间可以利用时,DPV方法更能够体现模型之间的互补性,可选择更好的模型组合进行集成。通过在CIFAR-10和CIFAR-100数据集上验证,本文提出的DPV方法可以充分利用卷积神经网络的概率向量的输出特性,深度挖掘模型内部互补信息,相较传统多样性度量方法更能够体现出模型之间的互补性和多样性。
4 结束语针对目前模型集成中多样性度量方法在基模型为卷积神经网络时未充分利用基模型输出的概率向量信息的问题,本文提出一种基于卷积神经网络概率向量的多样性度量方法。通过在CIFAR-10和CIFAR-100数据集上训练多个不同结构的卷积神经网络进行基于多样性方法的选择对比实验,结果表明,在CIFAR-10数据集上本文方法和双错度量方法相近,且优于不一致性和Q统计方法;在CIFAR-100数据集上,相比于双错度量、Q统计和不一致性方法,本文提出的方法是最优的。本文提出的方法能够充分利用卷积神经网络的概率向量输出特性,更好地体现模型之间的多样性,特别是在基模型整体较弱时,能够选出集成效果相对更好的模型组合,且集成模型的性能对比基模型平均性能的提升效果也更优。此方法为基于概率向量输出的卷积神经网络模型集成选择提供了一种新的多样性度量思路。
[1] | OPITZ D, MACLIN R. Popular ensemble methods: an empirical study[J]. Journal of artificial intelligence research, 1999, 11: 169-198. DOI:10.1613/jair.614 (0) |
[2] | ZHOU Zhuhui. Ensemble methods: foundations and algorithms[M]. New York: CRC Press, 2012: 236. (0) |
[3] | YULE G U. On the association of attributes in statistics: with illustrations from the material of the childhood society, &c[J]. Philosophical transactions of the royal society of London. Series A, 1900, 1900, 194: 257-319. (0) |
[4] | SKALAK D B. The sources of increased accuracy for two proposed boosting algorithms[C]//Proceedings of American Association for Artificial Intelligence, AAAI-96, Integrating Multiple Learned Models Workshop. Portland, USA, 1996: 1133. (0) |
[5] | GIACINTO G, ROLI F. Design of effective neural network ensembles for image classification purposes[J]. Image and vision computing, 2001, 19(9/10): 699-707. DOI:10.1016/S0262-8856(01)00045-2 (0) |
[6] | KUNCHEVA L I, WHITAKER C J. Measures of diversity in classifier ensembles and their relationship with the ensemble accuracy[J]. Machine learning, 2003, 51(2): 181-207. DOI:10.1023/A:1022859003006 (0) |
[7] | KOHAVI R, WOLPERT D H. Bias plus variance decomposition for zero-one loss functions[C]//Proceedings of the 13th International Conference on Machine Learning. San Francisco, USA, 1996: 275−283. (0) |
[8] | CONOVER W J. Statistical methods for rates and proportions[J]. Technometrics, 1974, 16(2): 326-327. (0) |
[9] | SHIPP C A, KUNCHEVA L I. Relationships between combination methods and measures of diversity in combining classifiers[J]. Information fusion, 2002, 3(2): 135-148. DOI:10.1016/S1566-2535(02)00051-9 (0) |
[10] | HANSEN L K, SALAMON P. Neural network ensembles[J]. IEEE transactions on pattern analysis and machine intelligence, 2002, 12(10): 993-1001. (0) |
[11] | CUNNINGHAM P, CARNEY J. Diversity versus quality in classification ensembles based on feature selection[C]//Proceedings of the 11th European Conference on Machine Learning. Catalonia, Spain, 2000: 109−116. (0) |
[12] | PARTRIDGE D, KRZANOWSKI W. Software diversity: practical statistics for its measurement and exploitation[J]. Information and software technology, 1997, 39(10): 707-717. DOI:10.1016/S0950-5849(97)00023-2 (0) |
[13] |
邢红杰, 魏勇乐. 基于相关熵和距离方差的支持向量数据描述选择性集成[J]. 计算机科学, 2016, 43(5): 252-256, 264. XING Hongjie, WEI Yongle. Selective ensemble of SVDDs based on correntropy and distance variance[J]. Computer science, 2016, 43(5): 252-256, 264. (0) |
[14] |
李莉. 基于差异性度量的分类器集成优化方法研究与应用[D]. 大连: 大连海事大学, 2017. LI Li. Optimization method research and application of multiple classifiers ensemble based on diversity measure[D]. Dalian: Dalian Maritime University, 2017. (0) |
[15] |
赵军阳, 韩崇昭, 韩德强, 等. 采用互补信息熵的分类器集成差异性度量方法[J]. 西安交通大学学报, 2016, 50(2): 13-19. ZHAO Junyang, Han Chongzhao, Han Deqiang, et al. A novel measure method for diversity of classifier integrations using complement informationentropy[J]. Journal of Xi’an Jiaotong University, 2016, 50(2): 13-19. (0) |
[16] |
周钢, 郭福亮. 基于信息熵的集成学习过程多样性度量研究[J]. 计算机工程与科学, 2019, 41(9): 1700-1707. ZHOU Gang, GUO Fuliang. Process diversity measurement of ensemble learning based on information entropy[J]. Computer engineering and science, 2019, 41(9): 1700-1707. DOI:10.3969/j.issn.1007-130X.2019.09.024 (0) |
[17] |
周飞燕, 金林鹏, 董军. 卷积神经网络研究综述[J]. 计算机学报, 2017, 40(6): 1229-1251. ZHOU Feiyan, JIN Linpeng, DONG Jun. DONG Jun. Review of convolutional neural network[J]. Chinese journal of computers, 2017, 40(6): 1229-1251. DOI:10.11897/SP.J.1016.2017.01229 (0) |
[18] | FAN Tiegang, ZHU Ying, CHEN Junmin. A new measure of classifier diversity in multiple classifier system[C]//Proceedings of 2008 International Conference on Machine Learning and Cybernetics. Kunming, China, 2008. (0) |
[19] |
常亮, 邓小明, 周明全, 等. 图像理解中的卷积神经网络[J]. 自动化学报, 2016, 42(9): 1300-1312. CHANG Liang, DENG Xiaoming, ZHOU Mingquan, et al. Convolutional neural networks in image understanding[J]. Acta Automatica Sinica, 2016, 42(9): 1300-1312. (0) |
[20] | KRIZHEVSKY A, HINTON G. Learning multiple layers of features from tiny images[J]. Handbook of systemic autoimmune diseases, 2009, 1(4): 7. (0) |
[21] | KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]//Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, USA, 2012. (0) |
[22] | SINHA N K, GRISCIK M P. A stochastic approximation method[J]. IEEE transactions on systems, man, and cybernetics, 2007, SMC-1(4): 338-344. (0) |
[23] | GLOROT X, BORDES A, BENGIO Y. Deep sparse rectifier neural networks[J]. Journal of machine learning research, 2011, 15: 315-323. (0) |