专利名称:基于病毒进化算法的选择性集成行人检测方法
技术领域:
本发明涉及智能交通领域,特别涉及一种集成式行人检测方法。
背景技术:
随着经济的快速发展,人们的交通方式在迅速转变,交通事故呈现增长趋势,交通安全面临着严重的挑战。因此,致力于行人安全的车载行人检测系统(Pedestrian Detection System,PDS)成为一项研究热点。
在PDS中,快速且准确的对样本进行分类是一项关键技术。神经网络、模拟退火、支持向量机(Support Vector Machine,SVM)等机器学习的方法都被应用于后端分类器的设计。除此之外,还引入了集成学习的方法,通过整合各个单分类器的结果达到更高的精度。
现有的集成技术可大致分为三种第一种采用类似Bagging的并行方式,这种方式检测精度比较高,但检测速度比较慢;第二种采用类似Boosting的级联方式,待检测目标需要通过一个分类器认可才会送至下一分类器检测,这种方式有利于提高精度和效率,但误报率仍然较高;第三种结合串联和并联的特征,优化组合分类器的性能。
现有集成技术的缺陷是,采用完全集成的方式,结合所有训练成型的单分类器结果,但没有充分考虑各个单分类器的性能差异,没有通过合理的分类器组合方式来达到最优的效果。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一,特别是解决由于没有充分利用单分类器的输出而没有获得理想的分类器组合方式的缺陷。
为了达到上述目的,本发明提出一种基于病毒进化遗传算法的选择性集成行人检测方法,包括以下步骤运用原始训练集训练彼此具有一定差异性的单分类器;对遗传算法的主体种群和额外的病毒种群进行初始化;进行遗传算法迭代过程;由所述遗传算法迭代过程得到的最优个体生成最终的组合分类器。
作为本发明的一个实施例,所述运用原始训练集训练彼此具有一定差异性的单分类器,包括以下步骤由所述原始训练集通过随机抽样得到多个特殊训练集和确认集,用于单分类器的训练和优选;在每一所述特殊训练集上运用特定方法训练,得到满足要求的单分类器,并对确认集中的样本进行检测。
作为本发明的一个实施例,所述对遗传算法的主体种群和额外的病毒种群进行初始化,包括以下步骤随机生成所述遗传算法的初始主体种群,所述初始主体种群中的每一个个体对应一种单分类器的组合;在所述主体种群的基础上利用复制操作得到病毒种群,并初始化病毒个体的参数。
作为本发明的一个实施例,所述遗传算法迭代过程包括以下步骤计算所述主体种群个体适应度;采用轮盘赌方式选择部分主体种群进行交叉变异,生成子代主体种群;所述病毒个体按一定几率对所述主体进行侵扰,并根据病毒个体适应度更新编码和参数;判断遗传算法终止条件是否满足,如果满足,则结束迭代过程;否则返回重新执行迭代过程。
作为本发明的一个实施例,所述由所述遗传算法迭代过程得到的最优个体生成最终的组合分类器,包括以下步骤选择末代种群中适应度最高的个体;选择所述适应度最高的个体的权重向量中系数大于预设阈值的学习机器,加入最终的组合分类器。
本发明通过选择性集成的方式,利用遗传算法的迭代选择最优的分类器组合,并引入额外的病毒种群,增强了遗传算法的搜索能力,避免了未成熟收敛等问题,提高了选择效果,同时提高了检测速度和精度。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中 图1为本发明实施例的基于病毒进化遗传算法的选择性集成分类方法流程图; 图2a-c分别为本发明实施例的病毒个体的侵扰、复制、剪切操作示意图。
具体实施例方式 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明主要在于对于已经训练好的单分类器使用遗传算法进行优化组合,并利用特别的病毒种群增强效果。
如图1所示,为本发明实施例的基于病毒进化遗传算法的选择性集成分类方法流程图,包括以下步骤 步骤S101,获得原始训练集。
步骤S102,由原始训练集通过随机抽样得到多个特殊训练集和确认集,用于单分类器的训练和优选。其中,每个训练集和确认集均采用Bootstrap抽样方式由原始训练集生成,这样的扰动可使单个学习机器获得一定的多样性。
步骤S103,在每一特殊训练集上运用特定方法训练,得到满足要求的单分类器,并对确认其中的样本进行检测。其中,单个学习机器的训练可采用Adaboost、SVM等机器学习方法。在本发明的实施例中,为了保证系统的效率,SVM只能采用线性核函数。精度方面,为了使各个单分类器的检测率和误报率达到所需的统一要求,只对检测率和误报率中的一项要求较高,对另一项适当放宽要求,得到满足要求的单分类器。
步骤S104,随机生成遗传算法的初始主体种群,种群中的每一个个体对应一种单分类器的组合。
在本发明实施例中,每一个个体的编码为一个权重向量w=(w1,w2,....,wT),其中wi为第i个单分类器的权重,每个权重为8-64位的二进制编码。如果某一学习机器的权重大于预设的阈值,则表示该个体对应的组合中包含该分类器,否则不包含。
步骤S105,在主体种群基础上利用复制操作得到病毒种群,并初始化其参数。
在本发明的实施例中,额外引入病毒种群优化遗传算法的性能,避免未成熟收敛等问题。其中,病毒个体的编码方式与主体对应,但仅在部分位有编码产生,其它部分是不确定的。每个病毒个体i有一个影响因子αi和生命值lifei,可进行感染、复制和剪切三种操作。
作为本发明的一个实施例,复制操作在一个主个体和一个病毒个体之间进行,由主个体中随机选定一些位组成子串,并将其内容写入病毒个体的对应位置上。如图2b所示为一个复制操作的例子,在图2b中,主个体的黑圆圈部分代表选中的子串,即2、5、8位,黑白圆圈的数值均可以是0或1。病毒个体中的黑圆圈是实际拥有的部分,即5、6、8位,叉号对应位不存在编码。执行复制操作后,主体2、5、8位的内容写入到病毒个体对应的位置,这样,病毒个体增加了第2位的编码,而第6位由于没有主体的覆盖,仍然保留原先的数值。
作为本发明的一个实施例,在生成病毒种群的初始时,是随机选择主个体对全空的病毒个体进行复制操作,病毒个体以此获得最初的编码,其参数初始化设置为αi=0,lifei=0。这些初始值可根据环境等因素进行设定,在此仅是示意性的描述。
步骤S106,主体种群进行选择、交叉和变异操作,生成新一代个体。
作为本发明的一个实施例,主体个体的选择采用轮盘赌方式进行,由单个个体适应度在全部个体适应度总和中的比重决定其被选中的概率,其中,每个个体适应度的评估需使用步骤S102中生成的确认集。具体地,在本实施例中,采用作为适应度函数,其中EWV为权重向量w对应的组合分类器在确认集V上的预测错误数,λN/nw用于平衡时间的开销和精度的关系,其中nw为权重向量w对应的组合分类器包含的单分类器数目,分类器数目越少,检测效率越高,适应度越高,N为全部可用单分类器数目,因子λ用于平衡N/nw与1/EWV的关系,当λ=0时,表示不考虑时间方面的影响。
作为本发明的一个实施例,子代个体的生成可包括两个部分,一部分由父代个体直接保留,另一部分由父代的两个个体通过交叉的方式得到。其中,选定的两个个体的交叉采用单点交叉的方式,在选定位置后交换个体的编码,如p1=[1011|1001],p2=[1010|0100],其中竖线表示随机断点的位置,则断点后的编码被交换得到的两个子代个体为p1′=[1011|0100],p2′=[1010|1001]。除此之外,生成的子代个体的每一位还可有一定几率发生变异,产生变异的位将改变该位的代码,如生成的子代个体p1′=[1011|0100]第三位被随机选定,则产生变异后的个体为p1″=[10010100]。
步骤S107,病毒个体按一定几率对主体进行侵扰,并根据计算获得的病毒适应度进行复制或剪切操作,更新生命周期,直至生命周期结束生成新病毒个体取而代之。
作为本发明的一个实施例,进行完主个体的交叉变异后,进行病毒个体的侵扰。一个病毒个体对一个选定的主个体进行侵扰操作,即用病毒个体拥有编码的部分替换主个体的对应位,得到一个对应的侵扰个体。如图2a所示为一个侵扰操作的例子,在图2a中,病毒个体在5、6、8位拥有编码,则主个体的5、6、8位被替换,其他位不受影响。
作为本发明的一个实施例,每一个病毒个体按概率Pinf ect=min(Pinit inf ect(1+αi),Pmax inf ect)对选定的主个体进行侵扰操作,其中,Pinit inf ect和Pmax inf ect分别为预设的初始侵扰率和最大侵扰率,均为固定值,而影响因子αi为可变的。
作为本发明的一个实施例,侵扰得到的新个体并不立即取代原主个体,而是先统计该病毒个体的适应度。病毒个体的适应度使用每个被侵扰主个体前后适应度的变化进行衡量,即其中,S是被病毒个体i侵扰的主个体集合。如果最终适应度fitvirusi>0,则用侵扰个体代替对应的主个体,并随机选择一个主个体对病毒个体i进行复制操作;否则,原主个体不被替换,并且对病毒个体i进行剪切操作。
作为本发明的一个实施例,对病毒个体i的复制操作与步骤S105所述的复制操作相同。
作为本发明的一个实施例,病毒个体的剪切操作与复制操作作用相反。剪切操作在一个病毒个体中单独进行,具体地,病毒个体按一定概率在已有编码位中选择一个子集,去掉被选定位的编码,编码减少,因此被称为剪切。如图2c所示为剪切操作的一个例子,在图2c中,病毒个体原本在5、6、8位拥有编码,通过随机选择过程第6位被选定删除,最终只有5、8位保留编码。
作为本发明的一个实施例,在病毒个体对主个体进行侵扰之后,调整病毒个体的参数 lifei=lifei×γ+fitvirusi 其中,γ为预设的生命衰减率。如果lifei<0,则病毒个体宣告死亡,此时需生成一个新的病毒个体,即随机选择一个主个体,对空串采用复制操作,并初始化参数。
步骤S108,判断是否达到遗传算法迭代的终止条件。未满足,则返回步骤S106继续;否则,根据最优个体编码,得到优化的分类器组合。
作为本发明的一个实施例,可限定遗传算法的迭代次数,在某一代种群终止。应理解,上述终止条件仅是示意性的实施例,并不是限制本发明仅能够通过上述实施例实现,还可通过其他方式限定迭代的终止。
作为本发明的一个实施例,选择末代种群中适应度最高的个体作为最优个体,其中权重向量系数大于预设阈值的学习机器被选中加入最终的分类器组合。组合分类器的输出为所有成员学习机器多数投票的结果,即其中,w*为最优个体的权重向量,Nt(x)为单分类器t的预测结果,λ为预设阈值,及Nt(x)=y为学习机器t可加入组合分类器参与多数投票的条件。
本发明通过选择性集成的方式,利用遗传算法的迭代选择最优的分类器组合,并引入额外的病毒种群,增强了遗传算法的搜索能力,避免了未成熟收敛等问题,提高了选择效果,同时提高了检测速度和精度。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。
权利要求
1、一种基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,包括以下步骤
运用原始训练集训练彼此具有一定差异性的单分类器;
对遗传算法的主体种群和额外的病毒种群进行初始化;
进行遗传算法迭代过程;
由所述遗传算法迭代过程得到的最优个体生成最终的组合分类器。
2、如权利要求1所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述运用原始训练集训练彼此具有一定差异性的单分类器,包括以下步骤
由所述原始训练集通过随机抽样得到多个特殊训练集和确认集,用于单分类器的训练和优选;
在每一所述特殊训练集上运用特定方法训练,得到满足要求的单分类器,并对确认其中的样本进行检测。
3、如权利要求2所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述随机抽样为bootstrap抽样。
4、如权利要求2所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述特定训练方法包括AdaBoost和SVM机器学习方法。
5、如权利要求2所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述SVM机器学习方法采用线性核函数。
6、如权利要求1所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述对遗传算法的主体种群和额外的病毒种群进行初始化,包括以下步骤
随机生成所述遗传算法的初始主体种群,所述初始主体种群中的每一个个体对应一种单分类器的组合;
在所述主体种群的基础上利用复制操作得到病毒种群,并初始化病毒个体的参数。
7、如权利要求6所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述初始主体种群中每一个个体的编码为所述个体中各个单分类器权重的连接,其中所述权重为8-64位的二进制编码。
8、如权利要求6所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述复制操作在主个体和病毒个体之间进行,由所述主个体中随机选定一些位组成子串,然后将其内容写入所述病毒个体的对应位置上。
9、如权利要求6所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述病毒个体的编码方式与所述主体对应,但仅在部分位有编码产生,其它部分是不确定的。
10、如权利要求6所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述病毒个体的参数包括影响因子αi和生命值lifei,初始化设置为αi=0,lifei=0。
11、如权利要求1所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述遗传算法迭代过程包括以下步骤
计算所述主体种群个体适应度;
采用轮盘赌方式选择部分主体进行交叉变异,生成子代主体种群;
所述病毒种群个体按一定几率对所述主体进行侵扰,并根据病毒个体适应度和生命值更新编码和参数;
判断遗传算法终止条件是否满足,如果满足,则结束迭代过程;否则返回重新执行迭代过程。
12、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述主体种群个体适应度函数为其中EWV为所述权重向量w对应的组合分类器在所述确认集V上的预测错误数,λN/nw用于平衡时间的开销和精度的关系,其中nw为所述权重向量w对应的组合分类器包含的单分类器数目,N为所述全部单分类器数目,因子λ用于平衡与1/EWV项的关系。
13、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述轮盘赌方式为由单个个体适应度在全部个体适应度总和中的比重决定所述单个个体被选中的概率。
14、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述侵扰操作由病毒个体对随机选定的主个体进行,用所述病毒个体拥有编码的部分替换主个体的对应位,得到一个对应的侵扰个体。
15、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述病毒个体的侵扰概率为Pinf ect=min(Pinit inf ect(1+αi),Pmax inf ect),其中,Pinit inf ect和Pmax inf ect分别为预设的初始侵扰率和最大侵扰率,均为固定值,影响因子αi为可变的。
16、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述病毒个体适应度使用每个被侵扰主个体前后适应度的变化进行衡量,即其中,S是被病毒个体i侵扰的主个体集合。
17、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述根据病毒个体适应度更新编码包括以下步骤
如果所述适应度fitvirusi>0,则用侵扰个体替代对应的主个体,并随机选择一个主个体对所述病毒个体i进行复制操作;
如果所述适应度fitvirusi≤0,则侵扰个体对应的原主个体不被替换,并对所述病毒个体i进行剪切操作。
18、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述剪切操作由一个病毒个体单独进行,即病毒个体按一定概率在已有编码位中选择一个子集,去掉被选定位的编码。
19、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述根据病毒个体适应度更新参数,包括
lifei=lifei×γ+fitvirusi
其中,γ为预设的生命衰减率。
20、如权利要求11所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述终止条件为是否达到遗传算法的限定迭代次数。
21、如权利要求1所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述由所述遗传算法迭代过程得到的最优个体生成最终的组合分类器,包括以下步骤
选择末代种群中适应度最高的个体;
选择所述适应度最高的个体的权重向量中系数大于预设阈值的学习机器,加入最终的组合分类器。
22、如权利要求1所述的基于病毒进化遗传算法的选择性集成行人检测方法,其特征在于,所述最终组合分类器的输出为所有成员学习机器多数投票的结果,即其中,w*为所述最优个体的权重向量,Nt(x)为单分类器t的预测结果,λ为预设阈值,及Nt(x)=y为学习机器t可加入所述组合分类器参与所述多数投票的条件。
全文摘要
本发明提出一种基于病毒进化遗传算法的选择性集成行人检测方法,包括以下步骤运用原始训练集训练彼此具有一定差异性的单分类器;对遗传算法的主体种群和额外的病毒种群进行初始化;进行遗传算法迭代过程;由所述遗传算法迭代过程得到的最优个体生成最终的组合分类器。本发明通过选择性集成的方式,利用遗传算法的迭代选择最优的分类器组合,并引入额外的病毒种群,增强了遗传算法的搜索能力,避免了未成熟收敛等问题,提高了选择效果,同时提高了检测速度和精度。
文档编号G08G1/01GK101571998SQ200910202908
公开日2009年11月4日 申请日期2009年5月18日 优先权日2009年5月18日
发明者曹先彬, 博 宁, 许言午, 彤 李, 中 汪, 林人俊, 吴长侠 申请人:中国科学技术大学