(12)发明专利申请
(10)申请公布号 CN 106778795 A (43)申请公布日 2017.05.31
(21)申请号 201510824421.0(22)申请日 2015.11.24
(71)申请人华为技术有限公司
地址518129 广东省深圳市龙岗区坂田华为
总部办公楼申请人南京邮电大学(72)发明人王堃 杨丽 王元钢
(74)专利代理机构广州三环专利代理有限公司
44202
代理人郝传鑫 熊永强(51)Int.Cl.
G06K 9/62(2006.01)G06F 17/30(2006.01)
权利要求书3页 说明书11页 附图3页
(54)发明名称
一种基于增量学习的分类方法及装置(57)摘要
本发明实施例公开了一种基于增量学习的分类方法,所述方法包括:构建分类器并确定分类特征向量;根据所述分类器和所述分类特征向量,对新增的数据样本进行训练;根据训练所得到的相关参数,对所述数据样本进行删除和保留。相应的,本发明实施例还公开了一种基于增量学习的分类装置。采用本发明,可以实现在增量学习中,主动删除无用的数据以及保留有用的数据,从而提高认知计算模型的适应性和准确率。
C N 1 0 6 7 7 8 7 9 5 ACN 106778795 A
权 利 要 求 书
1/3页
1.一种基于增量学习的分类方法,其特征在于,所述方法包括:构建分类器并确定分类特征向量;
对新增的数据样本进行训练;根据所述分类器和所述分类特征向量,
根据训练所得到的相关参数,对所述数据样本进行删除和保留。2.如权利要求1所述的方法,其特征在于,所述构建分类器并确定分类特征向量,包括:确定待构建的分类器的数量;构建各个所述分类器;
确定各个所述分类器的分类特征向量。3.如权利要求1所述的方法,其特征在于,所述根据所述分类器和所述分类特征向量,对新增的数据样本进行训练,包括:
①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;
③判断所述测试错误集Berr是否为空集,若是,则通过所述SGD算法抽取新一批数据样本进行训练,
若否,则将原始的数据样本中支持向量SV的集合新的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以得到
的数据样本外的剩余
中除所述集合
数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B′1;重复执行上述①、②和③三个步骤。4.如权利要求3所述的方法,其特征在于,所述根据训练所得到的相关参数,对所述数据样本进行删除和保留,包括:
根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1;
根据基于所述遗忘因子α对所述数据样本进行删除和保留。i的预测增量学习机制,5.如权利要求4所述的方法,其特征在于,所述根据基于所述遗忘因子αi的预测增量学习机制,对所述数据样本进行删除和保留,包括:
设置β、γ和δ三个阈值;比较所述遗忘因子αβ、γ和δ的大小关系;i与根据比较的结果,对所述数据样本进行删除和保留。6.如权利要求5所述的方法,其特征在于,所述设置β、γ和δ三个阈值之后,还包括:
2
CN 106778795 A
权 利 要 求 书
2/3页
每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值,其中,ei表示误差权值,P表示所设阈值;
ei=P-αi(1≤i≤10) (4)
选择所述误差权值最大的遗忘因子αi作为新的阈值;根据所述遗忘因子α适应调整β、γ和δ的取值。i,
7.如权利要求5所述的方法,其特征在于,所述根据比较的结果,对所述数据样本进行删除和保留,包括:
当所述遗忘因子α保留所述遗忘因子αi=0时,i对应数据样本;当所述遗忘因子0<αβ时,删除所述遗忘因子αi<i对应数据样本;当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进行测i<试;
当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。
8.一种基于增量学习的分类装置,其特征在于,所述装置包括:初始化模块,用于构建分类器并确定分类特征向量;数据训练模块,用于根据所述分类器和所述分类特征向量,对新增的数据样本进行训练;
数据处理模块,用于根据训练所得到的相关参数,对所述数据样本进行删除和保留。9.如权利要求8所述的装置,其特征在于,所述初始化模块,具体用于:确定待构建的分类器的数量;构建各个所述分类器;
确定各个所述分类器的分类特征向量。10.如权利要求8所述的装置,其特征在于,所述数据训练模块,具体用于:①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;
③判断所述测试错误集Berr是否为空集,若是,则通过所述SGD算法抽取新一批数据样本进行训练,
若否,则将原始的数据样本中支持向量SV的集合新的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以得到
的数据样本外的剩余
中除所述集合
数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B′1;重复执行上述①、②和③三个步骤。11.如权利要求10所述的装置,其特征在于,所述数据处理模块包括:参数计算单元,用于根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1;
3
CN 106778795 A
权 利 要 求 书
3/3页
数据处理单元,用于根据基于所述遗忘因子α对所述数据样本进i的预测增量学习机制,行删除和保留。
12.如权利要求11所述的装置,其特征在于,所述数据处理单元,具体用于:设置β、γ和δ三个阈值;比较所述遗忘因子αβ、γ和δ的大小关系;i与根据比较的结果,对所述数据样本进行删除和保留。13.如权利要求12所述的装置,其特征在于,所述数据处理模块还包括阈值调整单元,用于:
每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值,其中,ei表示误差权值,P表示所设阈值;
ei=P-αi(1≤i≤10) (4)选择所述误差权值最大的遗忘因子αi作为新的阈值;根据所述遗忘因子α适应调整β、γ和δ的取值。i,
14.如权利要求12所述的装置,其特征在于,所述数据处理单元,还具体用于:当所述遗忘因子α保留所述遗忘因子αi=0时,i对应数据样本;当所述遗忘因子0<αβ时,删除所述遗忘因子αi<i对应数据样本;当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进行测i<试;
当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。
4
CN 106778795 A
说 明 书
一种基于增量学习的分类方法及装置
1/11页
技术领域
[0001]本发明涉及数据处理技术领域,尤其涉及一种基于增量学习的分类方法及装置。背景技术
[0002]云计算、物联网等新兴技术的快速发展促使数据的规模正以前所未有的速度增长,大数据时代已经到来。如何在海量的复杂数据中及时有效地获取有价值的信息,依赖于一种能够主动学习,并且根据需求自行分析数据中的有价值信息,主动进行数据计算处理的模型——认知计算模型。应理解的,认知计算模型能够快速、准确的发现有价值的信息,提取有效信息并将这些有价值的信息组织起来,给出一个有效的解决方案。[0003]作为一种应用较为普遍的认知计算模型,支持向量机(Support Vector Machine,SVM)分类算法采用的是批量处理算法,由于批量处理算法需要将整个数据集加载到内存之中,而内存的存储量有限,使得该算法不适合于大数据的运算,无法应用于实时性较高的场合。同时,还会使得在构建分类器时需要耗费大量的时间,导致后面到达的数据可能会由于处理不及时导致丢失,造成严重的后果。发明内容
[0004]本发明实施例提供了一种基于增量学习的分类方法及装置,可以实现在增量学习中,主动删除无用的数据以及保留有用的数据,从而提高认知计算模型的适应性和准确率。[0005]本发明实施例第一方面提供了一种基于增量学习的分类方法,包括:[0006]构建分类器并确定分类特征向量;[0007]根据所述分类器和所述分类特征向量,对新增的数据样本进行训练;[0008]根据训练所得到的相关参数,对所述数据样本进行删除和保留。[0009]在第一方面的第一种可能实现方式中,所述构建分类器并确定分类特征向量,包括:
[0010]确定待构建的分类器的数量;[0011]构建各个所述分类器;
[0012]确定各个所述分类器的分类特征向量。[0013]在第一方面的第二种可能实现方式中,所述根据所述分类器和所述分类特征向量,对新增的数据样本进行训练,包括:[0014]①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;[0015]②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;[0016]③判断所述测试错误集Berr是否为空集,[0017]若是,则通过所述SGD算法抽取新一批数据样本进行训练,
[0018]
若否,则将原始的数据样本中支持向量SV的集合
和新的分类器Γ2,以及将所述集合
5
与所述样本子集B1进行合并以
的数据样本外的
得到新的集合中除所述集合
CN 106778795 A
说 明 书
2/11页
剩余数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B1′;[0019]重复执行上述①、②和③三个步骤。[0020]结合第一方面的第二种可能实现方式,在第三种可能实现方式中,所述根据训练所得到的相关参数,对所述数据样本进行删除和保留,包括:[0021]根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1;
[0022][0023][0024][0025]
根据基于所述遗忘因子α对所述数据样本进行删除和保i的预测增量学习机制,
留。
[0026]
结合第一方面的第三种可能实现方式,在第四种可能实现方式中,所述根据基于
所述遗忘因子α对所述数据样本进行删除和保留,包括:i的预测增量学习机制,[0027]设置β、γ和δ三个阈值;[0028]比较所述遗忘因子αβ、γ和δ的大小关系;i与[0029]根据比较的结果,对所述数据样本进行删除和保留。[0030]结合第一方面的第四种可能实现方式,在第五种可能实现方式中,所述设置β、γ和δ三个阈值之后,还包括:[0031]每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值,其中,ei表示误差权值,P表示所设阈值;[0032]ei=P-αi(1≤i≤10) (4)
[0033]选择所述误差权值最大的遗忘因子αi作为新的阈值;[0034]根据所述遗忘因子α适应调整β、γ和δ的取值。i,
[0035]结合第一方面的第四种可能实现方式,在第六种可能实现方式中,所述根据比较的结果,对所述数据样本进行删除和保留,包括:[0036]当所述遗忘因子α保留所述遗忘因子αi=0时,i对应数据样本;[0037]当所述遗忘因子0<αβ时,删除所述遗忘因子αi<i对应数据样本;[0038]当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进i<行测试;
[0039]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。
[0040]本发明实施例第二方面提供了一种基于增量学习的分类装置,包括:[0041]初始化模块,用于构建分类器并确定分类特征向量;[0042]数据训练模块,用于根据所述分类器和所述分类特征向量,对新增的数据样本进
6
CN 106778795 A
说 明 书
3/11页
行训练;
[0043]数据处理模块,用于根据训练所得到的相关参数,对所述数据样本进行删除和保留。
[0044]在第二方面的第一种可能实现方式中,所述初始化模块,具体用于:[0045]确定待构建的分类器的数量;[0046]构建各个所述分类器;
[0047]确定各个所述分类器的分类特征向量。[0048]在第二方面的第二种可能实现方式中,所述数据训练模块,具体用于:[0049]①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;[0050]②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;[0051]③判断所述测试错误集Berr是否为空集,[0052]若是,则通过所述SGD算法抽取新一批数据样本进行训练,
[0053]
若否,则将原始的数据样本中支持向量SV的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以
的数据样本外的
得到新的集合中除所述集合
剩余数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B1′;[0054]重复执行上述①、②和③三个步骤。[0055]结合第二方面的第二种可能实现方式,在第三种可能实现方式中,所述数据处理模块包括:
[0056]参数计算单元,用于根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1;
[0057][0058][0059]
数据处理单元,用于根据基于所述遗忘因子α对所述数据i的预测增量学习机制,
样本进行删除和保留。
[0061]结合第二方面的第三种可能实现方式,在第四种可能实现方式中,所述数据处理单元,具体用于:[0062]设置β、γ和δ三个阈值;[0063]比较所述遗忘因子αβ、γ和δ的大小关系;i与[0064]根据比较的结果,对所述数据样本进行删除和保留。[0065]结合第二方面的第四种可能实现方式,在第五种可能实现方式中,所述数据处理模块还包括阈值调整单元,用于:[0066]每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值,其中,
7
[0060]
CN 106778795 A
说 明 书
4/11页
ei表示误差权值,P表示所设阈值;[0067]ei=P-αi(1≤i≤10) (4)
[0068]选择所述误差权值最大的遗忘因子αi作为新的阈值;[0069]根据所述遗忘因子α适应调整β、γ和δ的取值。i,
[0070]结合第二方面的第四种可能实现方式,在第六种可能实现方式中,所述数据处理单元,还具体用于:
[0071]当所述遗忘因子α保留所述遗忘因子αi=0时,i对应数据样本;[0072]当所述遗忘因子0<αβ时,删除所述遗忘因子αi<i对应数据样本;[0073]当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进i<行测试;
[0074]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。[0075]由上可见,本发明实施例先构建分类器并确定分类特征向量,再根据分类器和分类特征向量对新增的数据样本进行训练,进而根据训练所得到的相关参数对数据样本进行删除和保留,可以实现在增量学习中,主动删除无用的数据以及保留有用的数据,从而提高认知计算模型的适应性和准确率。
附图说明
[0076]为了更清楚地说明本发明实施例,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0077]图1是本发明实施例提供的一种基于增量学习的分类方法的流程示意图;[0078]图2是本发明实施例提供的另一种基于增量学习的分类方法的流程示意图;[0079]图3是本发明实施例提供的一种基于增量学习的分类装置的结构示意图;[0080]图4是本发明实施例提供的一种数据处理模块的结构示意图;
[0081]图5是本发明实施例提供的另一种基于增量学习的分类装置的结构示意图。具体实施方式
[0082]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0083]本发明实施例提供的基于增量学习的分类方法,应用于大数据的学习训练算法,除了可以应用于批量数据处理领域,例如生物识别、信号识别和检测、图像识别等多个领域,还可以应用于海量实时数据流的分类、回归、聚类,例如实时证券交易和电子商务中的经济数据分类分析、物联网系统中移动医疗的实时医疗诊断,智慧交通的实时交通流量预测等实时数据流的分析。
[0084]图1是本发明实施例中一种基于增量学习的分类方法的流程示意图。如图所示本
8
CN 106778795 A
说 明 书
5/11页
实施例中的基于增量学习的分类方法的流程可以包括:[0085]S101,构建分类器并确定分类特征向量。[0086]具体的,根据需要处理的数据样本量,确定待构建的分类器的数量,进而构建相应数量的分类器,并确定各个分类器的分类特征向量。其中,训练步骤如下:[0087]①用分类器将所有数据样本集的特征分类;
[0088]②根据预先选定的核函数分别计算各个分类器中每个特征向量的有关值;[0089]③根据得到的有关值计算协方差矩阵空间进行Householder变换;[0090]④计算分类特征系数;[0091]⑤获得分类器的模型参数。[0092]S102,根据所述分类器和所述分类特征向量,对新增的数据样本进行训练。[0093]具体的,根据分类器和分类特征向量,对新增的数据样本进行训练的步骤包括:[0094]①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;[0095]②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;[0096]③判断所述测试错误集Berr是否为空集,[0097]若是,则通过所述SGD算法抽取新一批数据样本进行训练,
[0098]
若否,则将原始的数据样本中支持向量SV的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以
的数据样本外的
得到新的集合中除所述集合
剩余数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B1′;[0099]重复执行上述①、②和③三个步骤。[0100]S103,根据训练所得到的相关参数,对所述数据样本进行删除和保留。[0101]具体的,首先,根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,即该数据样本为正常数据,所述测试正确集Bok内每个数据样本的ri=1,即该数据样本为异常数据。需要指出的是,由改进的KKT(Karush Kuhn Tucker)定理可知,公式(1)和公式(2)是满足最优超平面的条件。
[0102][0103][0104][0105]
接着,根据基于所述遗忘因子α对所述数据样本进行删除i的预测增量学习机制,
和保留。具体实现过程中,先设置β、γ和δ三个阈值,例如β=0.3,γ=0.4,δ=0.7,再比较遗忘因子αβ、γ和δ的大小关系,进而根据比较的结果,按预设规则对数据样本进行删除i与和保留。其中,预设规则如下:[0106]当所述遗忘因子α保留所述遗忘因子α原因在于,新增的数i=0时,i对应数据样本,据样本是错误样本,这些样本不影响原有分类器,但可能会是新的分类,所以保留作为下次
9
CN 106778795 A
说 明 书
6/11页
训练的测试样本的一个子集;[0107]当所述遗忘因子0<αβ时,删除所述遗忘因子α原因在于,经过i<i对应数据样本,多次训练后数据样本SV的比率很低,将该数据样本不是一种新的分类,所以将其删除,减少原始数据的存储的同时提高了入侵检测的训练速度;[0108]当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进i<行测试,可加速SV搜索的收敛速度;[0109]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。
[0110]进一步可选的,每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值,选择误差权值最大的遗忘因子α并根据遗忘因子α适应调整β、γi作为新的阈值,i,和δ的取值。其中,ei表示误差权值,P表示所设阈值[0111]ei=P-αi(1≤i≤10) (4)
[0112]由上可见,本发明实施例先构建分类器并确定分类特征向量,再根据分类器和分类特征向量对新增的数据样本进行训练,进而根据训练所得到的相关参数对数据样本进行删除和保留,可以实现在增量学习中,主动删除无用的数据以及保留有用的数据,从而提高认知计算模型的适应性和准确率。
[0113]图2是本发明实施例中一种基于增量学习的分类方法的流程示意图,该方法应用于网络信息的入侵检测场景,可以针对海量的网络流量数据进行入侵检测。如图所示本实施例中的基于增量学习的分类方法的流程可以包括:[0114]S201,构建攻击分类器并确定分类特征向量。[0115]具体的,根据需要处理的网络流量数据样本量,确定待构建的攻击分类器的数量,进而构建相应数量的攻击分类器,并确定各个攻击分类器的分类特征向量。其中,训练步骤如下:
[0116]①用攻击分类器将所有网络流量数据样本集的特征分类;
[0117]②根据预先选定的核函数分别计算各个攻击分类器中每个特征向量的有关值;[0118]③根据得到的有关值计算协方差矩阵空间进行Householder变换;[0119]④计算分类特征系数;
[0120]⑤获得攻击分类器的模型参数。[0121]S202,设置β、γ和δ三个阈值。[0122]例如β=0.3,γ=0.4,δ=0.7。[0123]S203,根据所述攻击分类器和所述分类特征向量,对新增的网络流量数据样本进行训练,同时求取遗忘因子。[0124]具体的,根据攻击分类器和分类特征向量,对新增的网络流量数据样本进行训练的步骤包括:
[0125]①通过随机梯度下降SGD算法,随机抽取新增的网络流量数据样本子集B1进行训练;
[0126]②通过初始攻击分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;[0127]③判断所述测试错误集Berr是否为空集,
10
CN 106778795 A[0128][0129]
说 明 书
7/11页
若是,则通过所述SGD算法抽取新一批网络流量数据样本进行训练,若否,则将原始的网络流量数据样本中支持向量SV的集合
和新的攻击分类器Γ2,以及将所述集合
与所述样本子集B1进中除所述集合
的
行合并以得到新的集合
网络流量数据样本外的剩余网络流量数据样本与所述测试正确集Bok进行合并以得到所述
攻击分类器Γ2的增量数据样本集B1′;[0130]重复执行上述①、②和③三个步骤。[0131]进一步的,求得遗忘因子α其中,α根据公式(1)、公式(2)和公式(3),i,i表示网络流量数据样本经T次训练后第i个网络流量数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个网络流量数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个网络流量数据样本的ri=0,即该网络流量数据样本为正常网络流量数据,所述测试正确集Bok内每个网络流量数据样本的ri=1,即该网络流量数据样本为攻击型网络流量数据。需要指出的是,由改进的KKT(Karush Kuhn Tucker)定理可知,公式(1)和公式(2)是满足最优超平面的条件。
[0132][0133][0134]
S204,求取各个网络流量数据样本与所设阈值的误差权值。
[0136]具体的,根据公式(4)求得各个网络流量数据样本与所设阈值的误差权值,其中,ei表示误差权值,P表示所设阈值。[0137]ei=P-αi(1≤i≤10) (4)
[0138]S205,选择所述误差权值最大的遗忘因子作为新的阈值。[0139]S206,根据所述遗忘因子,适应调整β、γ和δ的取值。[0140]S207,比较所述遗忘因子与β、γ和δ的大小关系。[0141]S208,根据比较的结果,对所述网络流量数据样本进行删除和保留。[0142]具体的,根据比较的结果,按预设规则对网络流量数据样本进行删除和保留。其中,预设规则如下:
[0143]当所述遗忘因子α保留所述遗忘因子α原因在于,i=0时,i对应网络流量数据样本,新增的网络流量数据样本是错误样本,这些样本不影响原有攻击分类器,但可能会是新的分类,即可能是一种新的攻击分类,所以保留作为下次训练的测试样本的一个子集;[0144]当所述遗忘因子0<αβ时,删除所述遗忘因子α原因在i<i对应网络流量数据样本,于,经过多次训练后网络流量数据样本SV的比率很低,将该网络流量数据样本不是一种新的攻击分类,所以将其删除,减少原始网络流量数据的存储的同时提高了入侵检测的训练速度;
[0145]当所述遗忘因子β≤αδ时,选择大于γ的网络流量数据样本作为下一次的网络i<流量数据样本集进行测试,可加速SV搜索的收敛速度;[0146]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应网络流量数据样本作为下一
11
[0135]
CN 106778795 A
说 明 书
8/11页
次的网络流量数据样本集进行测试,原因在于,该网络流量数据样本为攻击数据样本。[0147]由上可见,本发明实施例先构建攻击分类器并确定分类特征向量,再根据攻击分类器和分类特征向量对新增的网络流量数据样本进行训练,进而根据训练所得到的相关参数对网络流量数据样本进行删除和保留,可以实现在增量学习中,主动删除无用的网络流量数据以及保留有用的网络流量数据,从而提高认知计算模型的适应性和准确率。[0148]图3是本发明实施例中一种基于增量学习的分类装置的结构示意图。如图所示本发明实施例中的基于增量学习的分类装置至少可以包括初始化模块310、数据训练模块320以及数据处理模块330,其中:[0149]初始化模块310,用于构建分类器并确定分类特征向量。[0150]具体的,根据需要处理的数据样本量,确定待构建的分类器的数量,进而构建相应数量的分类器,并确定各个分类器的分类特征向量。其中,训练步骤如下:[0151]①用分类器将所有数据样本集的特征分类;
[0152]②根据预先选定的核函数分别计算各个分类器中每个特征向量的有关值;[0153]③根据得到的有关值计算协方差矩阵空间进行Householder变换;[0154]④计算分类特征系数;[0155]⑤获得分类器的模型参数。[0156]数据训练模块320,用于根据所述分类器和所述分类特征向量,对新增的数据样本进行训练。
[0157]具体的,根据分类器和分类特征向量,对新增的数据样本进行训练的步骤包括:[0158]①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;[0159]②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述样本子集B1划分为测试错误集Berr和测试正确集Bok;[0160]③判断所述测试错误集Berr是否为空集,[0161]若是,则通过所述SGD算法抽取新一批数据样本进行训练,
[0162]
若否,则将原始的数据样本中支持向量SV的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以
的数据样本外的
得到新的集合中除所述集合
剩余数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B1′;[0163]重复执行上述①、②和③三个步骤。[0164]数据处理模块330,用于根据训练所得到的相关参数,对所述数据样本进行删除和保留。具体实现中,数据处理模块330可以如图4所示进一步包括参数计算单元331和数据处理单元332,其中:
[0165]参数计算单元331,用于根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,i,αTi表示总训练次数,ri表示i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1。
[0166][0167]
12
CN 106778795 A[0168]
说 明 书
9/11页
数据处理单元332,用于根据基于所述遗忘因子α对所述数i的预测增量学习机制,
据样本进行删除和保留。具体实现过程中,先设置β、γ和δ三个阈值,例如β=0.3,γ=0.4,δ=0.7,再比较遗忘因子αβ、γ和δ的大小关系,进而根据比较的结果,按预设规则对数i与据样本进行删除和保留。其中,预设规则如下:[0170]当所述遗忘因子α保留所述遗忘因子α原因在于,新增的数i=0时,i对应数据样本,据样本是错误样本,这些样本不影响原有分类器,但可能会是新的分类,所以保留作为下次训练的测试样本的一个子集;[0171]当所述遗忘因子0<αβ时,删除所述遗忘因子α原因在于,经过i<i对应数据样本,
将该数据样本不是一种新的分类,所以将其删除,减少多次训练后数据样本SV的比率很低,
原始数据的存储的同时提高了入侵检测的训练速度;[0172]当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进i<行测试,可加速SV搜索的收敛速度;[0173]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。[0174]请参阅图4,用于:如图所示数据处理模块330还可以包括阈值调整单元333,[0175]每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值;[0176]ei=P-αi(1≤i≤10) (4)
[0177]选择所述误差权值最大的遗忘因子αi作为新的阈值;[0178]根据所述遗忘因子α适应调整β、γ和δ的取值。i,
[0179]图5是本发明实施例中的另一种基于增量学习的分类装置的结构示意图,如图5所示,该基于增量学习的分类装置可以包括:至少一个处理器501,例如CPU,至少一个通信总线502,至少一个网络接口503,存储器504。其中,通信总线502用于实现这些组件之间的连接通信;存储器504可以是高速RAM存储器,也可以是非易失的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器504还可以是至少一个位于远离前述处理器501的存储装置。存储器504中存储一组程序代码,处理器501用于调用存储器x04中存储的程序代码,执行以下操作:
[0180]构建分类器并确定分类特征向量;[0181]根据所述分类器和所述分类特征向量,对新增的数据样本进行训练;[0182]根据训练所得到的相关参数,对所述数据样本进行删除和保留。[0183]可选的,处理器501构建分类器并确定分类特征向量的具体操作为:[0184]确定待构建的分类器的数量;[0185]构建各个所述分类器;
[0186]确定各个所述分类器的分类特征向量。[0187]又可选的,处理器501根据所述分类器和所述分类特征向量,对新增的数据样本进行训练的具体操作为:
[0188]①通过随机梯度下降SGD算法,随机抽取新增的数据样本子集B1进行训练;[0189]②通过初始分类器Γ1判断所述样本子集B1分类的正确性,并根据判断结果将所述
13
[0169]
CN 106778795 A
说 明 书
10/11页
样本子集B1划分为测试错误集Berr和测试正确集Bok;[0190]③判断所述测试错误集Berr是否为空集,[0191]若是,则通过所述SGD算法抽取新一批数据样本进行训练,
[0192]
若否,则将原始的数据样本中支持向量SV的集合
和新的分类器Γ2,以及将所述集合
与所述样本子集B1进行合并以
的数据样本外的
得到新的集合中除所述集合
剩余数据样本与所述测试正确集Bok进行合并以得到所述分类器Γ2的增量数据样本集B1′;[0193]重复执行上述①、②和③三个步骤。[0194]进一步的,处理器501根据训练所得到的相关参数,对所述数据样本进行删除和保留的具体操作为:
[0195]根据公式(1)、公式(2)和公式(3),求得遗忘因子α其中,αi,i表示数据样本经T次训练后第i个数据样本支持向量SV的比率,Ti表示总训练次数,ri表示第i个数据样本经训练后支持向量SV的次数,所述测试错误集Berr内每个数据样本的ri=0,所述测试正确集Bok内每个数据样本的ri=1;
[0196][0197][0198][0199]
根据基于所述遗忘因子α对所述数据样本进行删除和保i的预测增量学习机制,
留。
[0200]
更进一步的,处理器501根据基于所述遗忘因子α对所述数i的预测增量学习机制,
据样本进行删除和保留的具体操作为:[0201]设置β、γ和δ三个阈值;[0202]比较所述遗忘因子αβ、γ和δ的大小关系;i与[0203]根据比较的结果,对所述数据样本进行删除和保留。[0204]可选的,处理器501设置β、γ和δ三个阈值之后,还执行:[0205]每经10次训练后,根据公式(4)求得各个数据样本与所设阈值的误差权值;[0206]ei=P-αi(1≤i≤10) (4)
[0207]选择所述误差权值最大的遗忘因子αi作为新的阈值;[0208]根据所述遗忘因子α适应调整β、γ和δ的取值。i,[0209]又可选的,处理器501根据比较的结果,对所述数据样本进行删除和保留的具体操作为:
[0210]当所述遗忘因子α保留所述遗忘因子αi=0时,i对应数据样本;[0211]当所述遗忘因子0<αβ时,删除所述遗忘因子αi<i对应数据样本;[0212]当所述遗忘因子β≤αδ时,选择大于γ的数据样本作为下一次的数据样本集进i<行测试;
[0213]当所述遗忘因子δ<α将所述遗忘因子αi<1时,i对应数据样本作为下一次的数据样本集进行测试。
14
CN 106778795 A[0214]
说 明 书
11/11页
由上可见,本发明实施例先构建分类器并确定分类特征向量,再根据分类器和分
类特征向量对新增的数据样本进行训练,进而根据训练所得到的相关参数对数据样本进行删除和保留,可以实现在增量学习中,主动删除无用的数据以及保留有用的数据,从而提高认知计算模型的适应性和准确率。
[0215]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0216]以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
15
CN 106778795 A
说 明 书 附 图
1/3页
图1
16
CN 106778795 A
说 明 书 附 图
2/3页
图2
17
CN 106778795 A
说 明 书 附 图
3/3页
图3
图4
图5
18
因篇幅问题不能全部显示,请点此查看更多更全内容