书 书 书
第44卷 第3期
2021年3月 计 算 机 学 报
CHINESEJOURNALOFCOMPUTERS Vol.4M4Nar.2o0.231
收稿日期:20191010;在线发布日期:20200915.本课题得到国家自然科学基金项目(61722211,61872338,61902381)、北京智源人工智 能研究院(BAAI2019ZD0306)、中国科学院青年创新促进会(20144310)、国家重点研发计划(2016QY02D0405)、联想中科院联合实验室 青年科学家项目、王宽诚教育基金会、重庆市基础科学与前沿技术研究专项项目(重点)(cstc2017jcjyBX0059)和泰山学者工程专项经费
(ts201511082)资助.于思皓,博士研究生,主要研究方向为强化学习、集成学习、自适应网络.Email:yusihao@ict.ac.cn.郭嘉丰,博士, 研究员,中国计算机学会(CCF)会员,主要研究领域为信息检索、数据挖掘.范意兴,博士,助理研究员,主要研究方向为信息检索、自然语 言处理.兰艳艳,博士,研究员,中国计算机学会(CCF)会员,主要研究领域为机器学习、排序学习、信息检索.程学旗,博士,研究员,中国 计算机学会(CCF)会员,主要研究领域为网络科学、网络与信息安全、互联网搜索与数据挖掘.
基于知识线记忆的多分类器集成算法
于思皓
1),2) 郭嘉丰1),2) 范意兴1) 兰艳艳1),2) 程学旗3)
兰艳艳1),2) 程学旗3)
1)(中国科学院计算技术研究所网络数据科学与技术重点实验室 北京 100190)
2)(中国科学院大学 北京 100190)
3)(烟台中科网络技术研究所 山东烟台 264005)
摘 要 多分类器系统作为混合智能系统的分支,集成了具有多样性的分类器集合,使整体得到更优的分类性能.
结果融合是该领域中的一个重要问题,在相同分类器成员下,好的融合策略可以有效提升系统整体的分类正确率.
随着模型安全性得到重视,传统融合策略可解释性差的问题凸显.本文基于心理学中的知识线记忆理论进行建模, 参考人类决策过程,提出了一种拥有较好可解释性的启发式多分类器集成算法,称为知识线集成算法.该算法模拟 人类学习与推断的行为,组织多分类器结果的融合.在训练中,模型收集给定分类器集合的不同子集,构建不同特 征空间到解空间的映射,构成知识线.在推断时,模型启发式地激活知识线,进行选择性结果集成,得到推断结果.
知识线集成使用样本驱动的模式,易于进行中间过程与最终结果的分析.以决策树作为分类器的实验表明,在相同 的决策树集合下,知识线集成算法分类正确率与随机森林相仿.在此基础之上,知识线集成算法可量化问题不同粒 度下的难易程度,且在推断时能提供相关训练样本作为依据.
关键词 多分类器;知识线记忆理论;启发式;样本驱动;可解释性 中图法分类号TP393 犇犗犐号10.11897/SP.J.1016.2021.00462
犕 狌 犾 狋 犻 犆 犾 犪 狊 狊 犻 犳 犻 犲 狉 犈 狀 狊 犲 犿 犫 犾 犲 犃 犾 犵 狅 狉 犻 狋 犺 犿犅 犪 狊 犲 犱 狅 狀 犓 狀 狅 狑 犾 犲 犱 犵 犲 犔 犻 狀 犲 犕 犲 犿 狅 狉 狔
YUSiHao1),2) GUOJiaFeng1),2) FANYiXing1) LANYanYan1),2) CHENGXueQi3)
1)(犓犲狔犔犪犫狅犳犖犲狋狑狅狉犽犇犪狋犪犛犮犻犲狀犮犲犪狀犱犜犲犮犺狀狅犾狅犵狔,犐狀狊狋犻狋狌狋犲狅犳犆狅犿狆狌狋犻狀犵犜犲犮犺狀狅犾狅犵狔,犆犺犻狀犲狊犲犃犮犪犱犲犿狔狅犳犛犮犻犲狀犮犲狊,犅犲犻犼犻狀犵 100190)
2)(犝狀犻狏犲狉狊犻狋狔狅犳犆犺犻狀犲狊犲犃犮犪犱犲犿狔狅犳犛犮犻犲狀犮犲狊,犅犲犻犼犻狀犵 100190)
3)(犐狀狊狋犻狋狌狋犲狅犳犖犲狋狑狅狉犽犜犲犮犺狀狅犾狅犵狔犐犆犜(犢犃犖犜犃犐)犆犃犛,犢犪狀狋犪犻,犛犺犪狀犱狅狀犵 264005)
犃犫狊狋狉犪犮狋 MulticlassifierSystem,abranchtechnologyofHybridIntelligentSystem,integrates manyclassifierstoapproachhigheraccuracy.Becauseofthelimitationofcomputingresourceand thequalityofclassifiers,classifiersfusionisanimportantprobleminMulticlassifierSystem.
BetterfusionstrategycanreachhigherperformanceofwholeMulticlassifierSystemunderthe samewelltrainedclassifiermembers.Thetraditionalmethodshadtriedmanyfusionstrategies suchasnormalvoting,weightedvotingandfusionfunction.Asthemodelsdeveloped,the classificationaccuracywenthigher.Butthesemodelsonlypaidattentiontoclassificationaccuracy andpaidlittleattentiontointerpretabilitywhichisaninevitableproblemwhensafetyofmodel wasconcerned.Thispapertakesaviewofhumandecisionmakingandpresentsanewmulti classifierensemblealgorithmnamedknowledgelineensemblewhichbasedonknowledgeline memorytheorydescribingtheprocessofhumandecisionmakingwithmemory.Inordertogetthe
《 计
算 机
学 报
》
interpretabilitylikehumandecisionmaking,knowledgelineensemblealgorithmimitatesthe learningandinferenceprocessesofhumanaccordingtothepsychologicaltheorydescription.In training,themodeltriestocreatememorycalledknowledgelinelikehumantostorememory aboutsolvingdifferentproblemsandforgetmemorylikehumaninordertoavoidsinkingintospecial badcases.Knowledgelineandtrainingsampleareonetoonecorrespondence.Knowledgeline isasubsetofgivenwelltrainedclassifierswhichcanresultinrightclassificationonthe correspondingsample.Differentsamplesresultincreatingdifferentknowledgelines,soafter training,themodelstoresvariedknowledgelines.Theseknowledgelinescreateasetof mappingswhichareusedtomapfeaturespacetoanswerspace.Ininference,themodelchoosesa subsetofexistingknowledgelinestoactivatedependingonheuristicsrules.Theseactive knowledgelineswillwork,andvotetogetaresult.Knowledgelineensemblealgorithmisa kindofsampledrivenmethod,wheninferringanewcase,onlytheknowledgelinesbornwith familiarsampleswillbeactivated.Itseemsthathumanbeingsthinkofsolutioninmemorywhen sufferingfromtroubles.Soknowledgelineensemblealgorithmisusingsampleddatatomake decisions.Specially,becausetheprocessthattheknowledgelinememorytheoryusescomputing unitstoconstructknowledgelinesissimilartoaddingelementstosets,inordertodescribethe calculationprocessofthealgorithmbetter,thispaperusesmatricestomodelthisprocess.The connectionrelationshipbetweentheknowledgelinesandthecomputingunitscanberepresented byanadjacencymatrix,theresultsofdifferentclassifierscanbestoredbyaclassificationmatrix, andtheactivationoftheknowledgelinescanbecompletedintheformoftheinnerproductofthe resultsofallknowledgelinesandtheactivationvectors.Sothefinalclassificationresultcanbe expressedintheformofmatrixmultiplication.Onthisbasis,thegoalandconvergenceofthe algorithmareexplained.Intheexperiments,thispaperuseddecisiontreesasthegivenclassifiers.
Underthesamegivenclassifiers,experimentsshowedthatknowledgelineensemblealgorithm hadcomparableaccuracywithrandomforestwhichusesnormalvotingasitscoordinatingstrategy.
Moreimportantly,knowledgelineensemblealgorithmcandiscriminatethedifficultyofinference casesaccordingtotheactivesituationofknowledgelinesandgivespecifictrainingcasesto supporttheinferencewhichmakesitsresultsmoreconvinced.
犓犲狔狑狅狉犱狊 multiclassifier;knowledgelinememorytheory;heuristics;sampledriven;interpretability
1 引 言
随着大数据时代的推进,数据所蕴含的模式多 元化,机器学习算法需要解决的任务愈发困难.在多 变的任务中,模型结构趋于复杂,参数量愈发庞大. 但是“没有免费的午餐”原理[1]是一个无法打破的枷 锁,它论证了单个模型能力的局限性.若要有所突 破,多个模型的合作势在必行.
正如在多个器官的共同作用下,人类得以生存. 擅长不同任务的智能体合理地组成一个系统,就可 以解决更多样化的问题.混合智能系统[2]也是在这 样的构想下被提出的.在机器学习任务中,分类问题 与回归问题是重要的基础问题.针对分类问题,多分
类器系统作为混合智能系统的分支在文献[3]中被 提出.多分类器系统重点在于采用“分而治之”的理 念.它将复杂的分类问题分解成多个简单的子问题, 分别使用单模型逐个击破后,再合理地将这些模型 组合以得到原问题的解决方案.
如今,多分类器集成算法在各种任务中扮演着 重要角色,也是机器学习竞赛中提升成绩的重要手 段.但是在金融、安全等任务上,仅有分类正确率是 不够的,即使模型在测试集上的正确率达到100%, 模型也依旧具有极大的可能在新的样本上给出荒谬 的结果.原因是,仅靠类似正确率的一个指标,只能 做出现实世界中大多数任务的不完整描述[4].模型 做出决策的原因是不能忽略的.
现有的多分类器系统所使用的集成策略,在推
3 6 3期 于思皓等:基于知识线记忆的多分类器集成算法 4
《 计
算 机
学 报
》
断时无法给出做决策的具体原因,无法像犓近 邻[5]、协同过滤[6]等模型一样显式的给出推断时起 作用的训练样本.事实上,在心理学的研究中,知识 线记忆理论[7]说明了人在决策时会激活过往数据产 生的记忆,用旧例子作为依据来推测新问题的答案. 本文的贡献主要有以下几点:
(1)本文用矩阵对知识线记忆理论的计算框架 进行了数学建模.
(2)本文结合心理学中的知识线记忆理论提出 了一种新的多分类器集成策略,称为知识线集成算 法.该算法具有良好可解释性,且分类正确率与现有 集成分类算法保持在同一水平.
(3)该算法为使用者提供了丰富、简单的模型 分析手段.可以量化类别推断难度,估计类别、样本 之间产生混淆的概率.
2 背景介绍与相关工作
本文根据心理学中的知识线记忆理论,设计了 一套启发式多分类器集成算法,本节将介绍多分类 器系统的相关工作(参考文献[89])与知识线记忆 理论的背景知识.
2.1 多分类器系统
多分类器系统是混合智能系统中的一个重要分 支,旨在集成多个模型解决分类问题.它的拓扑结构 有两种:链式结构与分布式结构.
链式结构如图1所示,所有分类器成员有序排 列,数据从前到后逐个经过每个分类器.分类器成员 在训练中逐个产生,每个新成员是在给定已有分类 器与当前集成结果的条件下得到的.链式结构主要 有两种运行模式.第一种为数据传递型[1016].前置分 类器接收到数据时,计算得到推断的结果并评估此 结果的可信程度.若可信度不足,则把数据发送给后 续的分类器,直到有分类器给出可信结果.这种方式 有着明显的弊端:分类器成员的数量难以控制、可信 度难以评估,被拒绝的结果对后续分类器作用有限. 因此,第二种模式,合作型,也就是Boosting[1720]应 运而生.每个分类器不再讨论难以评估的结果可信 度,而是直接使用监督学习的方式找出推断错误的 训练样本;分类器不再逐条数据进行训练,而是面向 整个数据集,根据前置分类器的表现调整数据分布; 推断结果由所有分类器的加权和得到,而不是完全 由最后的分类器决定.链式结构下,分类器之间必然 会产生较大相关性,而本文主要研究独立的分类器
集成方法,所以此处不再对链式结构相关方法的发 展进行更深入地讨论.
图1 链式结构多分类器系统
分布式的结构如图2所示,它要求分类器成员输 入的数据相同,结果独立,且分类器群体具有多样性. 文献[21]从统计学出发,论证了无穷个无偏、独立分 类器的结果均值与最佳贝叶斯分类器效果一致.它 说明了独立的多个分类器,使用“少数服从多数”的 投票策略进行决策是一种多分类器结果融合的有效 思路.它对分布式多分类器系统的发展有着指导意 义.分布式多分类器系统的设计主要是解决两个问 题:其一,如何得到具有多样性且独立性较高的分类 器集合;其二,如何将多个分类器的结果融合成一个 结果.
图2 分布式结构多分类器系统
针对第一个问题,解决方案可以分为两类,数据 采样与模型多样化.数据采样包括样本的随机采样, 比如Bagging[22];特征的随机采样,比如随机森 林[23]在决策树上的尝试,文献[24]在线性分类器上 的尝试,文献[25]在最小距离分类器上的尝试;数据 特征空间分割,比如文献[26]中所提出的模型;数据 特征子集的随机投影,比如AttributeBagging[27]; 数据标签的形式修改,比如文献[28]将标签改成多 次一对多的二分类形式.模型多样化指模型在训练 过程中,模型受到干预导致的多样化,比如使用不同 初始化的神经网络,部分节点随机分裂的决策树等.
针对第二个问题,主要有三种解决方案:标签融 合、函数融合和训练融合.标签融合是指多个分类器 结果按照一定的规则合成一个结果.在文献[21]的 基础上,可以证明若每个分类器成员的正确率大于
4 6
4 计 算 机 学 报 2021年
《 计
算 机
学 报
》
随机分类的正确率,则整体投票结果的正确率将比 分类器成员正确率均值高.可见,“少数服从多数”的 结果投票是简单有效的方法,除此之外,文献[29] 认为不同的分类器应有不同的重要性,所以提出了 带权重的投票来组合分类器结果.文献[3032]利用 特征信息来辅助完成结果融合.而函数融合是把每 个分类器得到的分数融合成最终结果,比如文献
[3335]使用SoftMax函数把多个分类器的结果重 构成最终结果的后验概率,文献[36]构建结果的最 优投影得到统一的结果.以上方法都基于人为设定 的规则,其实融合结果的函数也可以通过机器学习得 到,即训练融合.它可以使用决策树[37]、感知机[38]、 进化算法[39]、数据包围分析[40]学习权重;使用强化 学习[41]、启发式搜索[42]剪枝;使用Stacking[43]把结 果作为输入再次训练,或者将所有分类器的结果作 为特征输入到一个融合分类器中进行训练,比如神 经网络[44]、贝叶斯分类器[45],来得到一个组合多分 类器结果的模型.而本文提出的方法是一种更具有 可解释性的启发式剪枝方法.
多分类器系统是重要、前沿的方法,它的应用十 分广泛,比如在遥感上的土地覆盖制图[46]、变化检 测[47]、计算机安全上的手机通讯[48]、网络安全[49], 银行中的欺诈检测[50]、经济风险评估[51],医药中的 蛋白质折叠检测[52]、神经科学[53]以及推荐系 统[5455]等.在众多机器学习竞赛中,集成学习、模型 融合也是提高指标的重要手段.目前的集成方法虽 然能提供良好的分类性能,但同样重要的模型可解 释性却都有所欠缺.而在上述提到的众多应用中,尤 其是与安全和风险有关的应用,模型的可解释性往 往是更重要的需求.因此本文从心理学中的知识线 记忆理论出发,设计了一个具有良好可解释性的启 发式分类器集成算法.
2.2 知识线记忆理论
知识是如何表述、存储、提取、使用的?心理学 中的知识线记忆理论尝试回答了这个问题.每当你
“有一个好主意”,解决了一个问题时,你就会创建知 识线来记忆它.知识线会与被激活的思维智能体相 联结,之后当你再次激活此知识线时,与这个知识线 联结的智能体就会被激活,使得你进入之前解决问 题时相似的“思维状态”.这就让你在解决新的、相 似的问题时,感到容易一些.这就是知识线的基本 理论.
此处引用《心智社会》[56]中提到的一个例子:当
你想要维修一辆自行车,在你开始之前,先将红色油 漆抹在手上.这样你所用过的所有工具都会有红色 的记号.当你修好之后,只要记住红色标记表示“有 助于修车”,下次你再修自行车的时候就可以节约时 间,只需要把涂了红色标记的工具拿出来就可以了. 这里的红色就是知识线,工具就是思维智能体.如果 你用不同的颜色标记不同的工作,有些工具最后可 能会有不止一种颜色.每个智能体可以和多个知识 线相联结.当问题来临,只要激活问题相关的知识线 即可.
知识线理论阐述了人类构建记忆和使用记忆的 过程,是心理学中对人类行为的一种基于经验的解 释,是目前比较被认同的一种猜想.本文算法受到此 理论的启发,对其计算框架进行数学建模,将知识线 抽象成线性算子,构造出新的多模型集成算法.正如 知识线记忆理论可以对人类行为进行解释,类知识 线的构造也赋予了本文算法较好的可解释性.
3 知识线集成算法
本节将详细介绍本文提出的知识线集成算法, 首先3.1节用矩阵建模了知识线集成算法并给出计 算框架;3.2节针对知识线理论中未知的复杂函数, 给出了知识线集成算法中的定义;3.3节、3.4节中 具体说明了知识线训练与推断的过程,并给出了算 法流程以及相关的描述与分析.最后3.5节中对算 法的可解释性进行了说明.
3.1 一般投票与知识线集成计算框架
给定狏个独立的ω类分类器算子,构成向量: 犆=(犮1,犮2,…,犮狏),对于给定数据特征狓有
犆(狓)=
犮1(狓) 犮2(狓) 犮狏(狓 烄 烆
烌
)烎
=
犮11犮12 …犮1ω 犮21犮22 …犮2ω
犮狏1犮狏2 …犮狏 烄
烆
烌 烎
ω
(1) 其中,犮犻犼=犮犻(狓)犼∈{0,1}表示第犻类分类器结果是 否为犼,且有
∑
犼犮犻犼=1,则分类器结果狔犻∈{1,2,…,ω}有
狔犻=arg狕max犮犻狕,狕=1,2,…,ω (2) 按照“少数服从多数”的一般投票方式,对每个 分类器的结果进行公平的计数,最终票数最多的类 别作为最终的结果:
狔=arg狕max犻
∑
狏=1犐(狔犻=狕),狕=1,2,…,ω(3)5 6 3期 于思皓等:基于知识线记忆的多分类器集成算法 4
《 计
算 机
学 报
》
其中,犐(·)为示性函数,当自变量逻辑为真时结果 为1,假时为0.在式(3)中,若第犻个分类器结果狔犻 等于狕,则结果为1,否则为0.
以上是Bagging中采用的做法.根据Bagging 方法的结论,当每个分类器的结果错误率低于随机 分类错误率时,Bagging得到结果的错误率低于单一 分类器的错误率均值,且在狀趋于无穷时Bagging结 果的错误率趋于理论最小错误率.
从统计学的角度来看,上述方法有很好的理论 保证,后续的众多研究也都是在其基础上改进的,但 是这些方法都只注重最终结果的正确率,却忽视了 算法的可解释性.
根据心理学中的记忆理论,人脑会根据需要, 唤醒一部分智能体进行决策,而具体应该唤醒哪些 智能体,由人脑之前的记忆决定.而本文受到此理论 的启发,将多分类集成的过程嵌入到知识线记忆理 论的框架下,得到知识线集成算法计算框架如图3 所示.
图3 知识线集成算法计算框架
计算层中的分类器算子犮犻扮演着知识线记忆理 论中的计算单元,它可以提供最基础的决策.知识层 中的犽犻代表知识线理论中的知识线,它与计算层中 的计算单元相联结,若当前存在μ个知识线,则它的 形式为
犓= 犽1 犽2 犽 烄 烆
烌 烎
μ
=
犽11犽12 …犽1狏 犽21犽22 …犽2狏
犽μ1犽μ2 …犽μ
烄 烆
烌 烎
狏
(4) 其中,犽犻犼∈{0,1}表示第犻个知识线是否激活第犼个 分类器,若犽犻犼=1,则表示激活.
当接收到数据特征狓时,根据知识线理论中的 表述,只有与问题相关的知识线应该被激活.因此激 活层犃的目标是对知识线进行激活.它的形式表达 如下:
犃= 犪1 犪2 犪 烄 烆
烌 烎
μ T
,犪犻∈{0,1},犻=1,…,μ (5) 若犪犻=1则表示第犻个知识线犽犻被激活.最终 不同分类结果的分值犛=(狊1,狊2,…,狊ω)=犃犓犆(狓) 即
犛= 犪1 犪2 犪 烄 烆
烌 烎
μ
T犽11犽12 …犽1狏 犽21犽22 …犽2狏
犽μ1犽μ2 …犽μ
烄 烆
烌 烎
狏
犮1(狓) 犮2(狓) 犮狏(狓 烄 烆
烌
)烎
(6) 其中,犓为犓每行经过标准化后的结果,且有犽犻犼= 犽犻犼
∑
犼犽犻犼.最终分类结果为狔=arg狕max犛狕,狕=1,2,…,ω (7) 从式(6)可以看出,知识线集成算法本质上是一 种加权集成的做法,但与传统加权集成算法不同的 是,本算法中的权重矩阵犓是通过模拟知识线记忆 理论中记忆更新迭代的方法得到的,这使得它可以 进行更丰富的可解释性方面的分析.具体将在后文 进行讨论.
3.2 知识线的计算
知识线集成算法的计算框架已经在3.1节中详 细说明,但是如何计算知识线矩阵犓中的元素犽犻犼以 及激活向量犃中的元素犪犻还未定义.实际上知识线 理论对于知识线的激活以及计算单元的激活问题也 只给出了逻辑表述而缺乏具体算法,本文本着计算 简单有效且符合知识线理论中相关表述的原则,对 知识线这部分的具体内容与计算方法进行了设计. 3.2.1 计算层激活
计算层中计算单元的激活由与其联结的知识 线控制,若第犻个知识线与第犼个分类器联结则有 犽犻犼=1,否则犽犻犼=0.根据记忆理论,当遇到无法解决 的问题时,大脑不断尝试激活不同的计算单元子集, 直到找到解决该问题的子集后,使用一个智能体与 本次激活的计算单元相联结,从而构建一个知识线. 即找到一个集合犆′!{犮1,犮2,…,犮狏}使得以下条件 成立:
狔=arg狕max犮犻
∑
∈犆′犐(狕=arg狕m′ax犮犻(狓)狕′)(8) 其中,狕,狕′=1,2,…,ω,狔为正确的类别.因为所有 分类器的集合较大,且随机采样得到的犆′不能保证 结果正确性,所以此处令犆′=犆,且对于犮∈犆, 狔=argm狕ax犮(狓)狕.这样即可保证结果的正确性,从6 6
4 计 算 机 学 报 2021年
《 计
算 机
学 报
》
而避免低效的重复采样. 3.2.2 知识层激活
当使用知识线集成算法进行推断时,激活层将 选取部分知识层中的知识线进行激活,即计算犪犻.根 据知识线理论的描述,知识线是根据某个特定问题 产生的,之后若遇到类似问题,此知识线将被激活. 在本文算法中,当知识线犽犻为了记忆样本狓犽犻而 产生时,此样本的类别狔犽犻也同时被记忆.当对新的 样本狓′进行推断时有:
犪犻=犐(狔犽犻=arg狕max(犽犻犆(狓′))狕) (9) 其中,犐(·)为示性函数,当自变量逻辑为真时结果 为1,假时为0.在式(9)中,若知识线犽犻判定狓′与狓犽犻
有相同的标签则被激活.知识线犽犻所联结的分类器 构成了类别狔犽犻的印象,若在同样的映射下,狓′得到 相同的结果,说明狓′与狓犽犻具有相似性.因此,式(9) 的是符合知识线激活描述的一种激活方法.
3.3 记忆的产生
知识线集成算法主要包含三部分,激活矩阵犃, 知识线矩阵犓,分类算子向量犆,其中犆如式(1)的 形式,是提前训练完成的;犃是基于犓得到的,而犓 中参数需要通过学习获得.记忆的产生即知识线的 更新,也就是犓的训练,其具体算法如下:
算法1. 知识线矩阵参数学习.
输入:分类算子向量犆;数据集Data 输出:知识线矩阵犓
1.初始化犓=(0,0,…,0),狔犓=(0) 2.FOR(狓,狔)inDataDO
3. 狔′=犐狀犳犲狉犲狀犮犲(犆,犓,狔犓,狓) 4. IF狔′≠狔THEN
5. 犽′=(犐(犮1(狓)→狔),…,犐(犮狏(狓)→狔))T 6. 犓=(犓T|犽′)T,狔犓=(狔犓|狔)
7. IFneedforgetTHEN 8. 犽犻=argmin
犽∈犓Δ犘狉犲犮犻狊犻狅狀(犽) 9. 犓=(犽1,…,犽犻-1,犽犻+1,…,犽犓row)T 10. 狔犓=(狔犽1,…,狔犽犻-1,狔犽犻+1,…,狔犽犓row) 11. ENDIF
12. ENDIF 13.ENDFOR 14.RETURN犓
训练伊始,模型不存在记忆,此时犓中不包含 有效信息,当遇到问题时,若此时依靠知识线无法推 断出正确答案,则需要参考正确答案.算法1第5行 中的犐(·)为示性函数,犐(犮犻(狓)→狔)=1则表示第犻 个分类器结果正确.这样得到的犽′即可满足式(8)
的要求.将犽′添加到犓的最后一行并记录知识线犽′ 所对应的类型狔,即完成了一次知识线的更新.经过 一段时间的迭代后,知识线矩阵中已经储存了一定 信息,此时若推断错误有两个原因:其一,现有知识 线尚未覆盖当前问题,所以依旧需要执行上述更新 记忆的操作;其二,现有知识线中存在精准率较低的 特例知识线,它严重影响了整体集成的效果,这个问 题则需要通过遗忘来解决.
在遗忘过程中,模型会按照给定概率狆删除一 条知识线如下:
犽′=argmin
犽∈犓Δ
∑
犖犻=1犐(狔犻=狔犽,狔犽,犻=狔犽)
∑
犖犻=1犐(狔犽,犻=狔犽) (10) 其中,犖为样本总数,犐(·)为示性函数,犓Δ表示被错 误激活的知识线集合即集合内元素被激活但所对应 的类别是错误的,狔犽表示知识线犽对应的标签,狔犽,犻 表示知识线犽对第犻个数据判断的结果,狔犻表示第犻 个数据的真实标签.式(10)可以更直观的表述为
犽′=argmin
犽∈犓Δ犘狉犲犮犻狊犻狅狀(犽) (11) 即在犯错的知识线中找到精准率最低的知识线进行 删除.不妨设犽′在知识线矩阵犓的第犻行.所以经过 遗忘之后的知识线矩阵为
犓=(犽1,…,犽犻-1,犽犻+1,…,犽|犓|)T (12) 由于激活操作的存在,本算法实际上使用了二 分类器集合来判断样本是否属于某特定类别,并通 过投票解决多分类问题,因此当解决ω分类问题 时,目标函数可设置为最大化犚:
犚=犻
∑
ω=1狆狉犲犮犻狊犻狅狀犻+狉犲犮犪犾犾犻 (13) 对于类别为犼的单个知识线,它只对所属类别 的精准率即狆狉犲犮犻狊犻狅狀犻=犼以及其他类别的召回率即 狉犲犮犪犾犾犻≠犼起作用.此知识线精准率越高则本身所属 类别精准率越高,且对其他类别的召回率负面影响 越小.特别地,当精准率为100%时,此知识线仅对 自身类别样本的推断提供正确信息且完全不影响其 他类别.单个知识线的高召回率可以有效减少知识 线的必要数量,但并不是单个知识线的必要目标.精 准率是单个知识线唯一需要考虑的目标,且精准率 越高效果越好,所以在遗忘知识线时采用贪心算法, 留下精准率更高的知识线.在保证高精准率的情况 下,增加知识线的过程则可近似成用贪心法解决集 合覆盖问题的过程.无法正确推断的样本相当于未7 6 3期 于思皓等:基于知识线记忆的多分类器集成算法 4