CN108288074A - 一种数据特征的选择方法及系统 - Google Patents
一种数据特征的选择方法及系统 Download PDFInfo
- Publication number
- CN108288074A CN108288074A CN201810092412.0A CN201810092412A CN108288074A CN 108288074 A CN108288074 A CN 108288074A CN 201810092412 A CN201810092412 A CN 201810092412A CN 108288074 A CN108288074 A CN 108288074A
- Authority
- CN
- China
- Prior art keywords
- moth
- feature
- individual
- population
- data characteristics
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2111—Selection of the most significant subset of features by using evolutionary computational techniques, e.g. genetic algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Physiology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种数据特征的选择方法及系统,数据特征的选择方法包括:首先获取数据集,数据集包括若干个数据,数据包括若干个数据特征;对各数据特征进行0‑1标准化处理;设置阈值;获取飞蛾种群,飞蛾种群包括若干飞蛾个体,飞蛾个体包括若干飞蛾特征;筛选飞蛾特征;根据筛选出的飞蛾特征选择数据特征;通过分类器计算选择出的数据特征的正确率;计算获取飞蛾种群的次数,判断获取飞蛾种群的次数是否小于所述阈值,若是,更新飞蛾种群,然后返回步骤“筛选飞蛾特征”;否则,输出所述选择出的数据特征的正确率最高的数据特征。本发明提出的数据特征的选择方法及系统大大提高了数据特征选择的精确度,缩短了获取数据特征的时间。
Description
技术领域
本发明涉及数据挖掘领域,特别是涉及一种数据特征的选择方法及系统。
背景技术
特征选择也称特征子集选择或属性选择,是指从已有的M个特征中选择N个特征使得系统的特定指标最优化,是从原始特征中选择出一些最有效特征以降低数据集维度的过程,是提高学习算法性能的一个重要手段,也是模式识别中关键的数据预处理步骤。
对数据特征优化就是找到数据中贡献度大的特征,去掉一些冗余特征甚至噪声特征,目前特征优化的主要算法有二进制粒子群优化算法、遗传算法、二进制灰狼优化算法、二进制布谷鸟优化算法等,但它们应用于数据特征选择时都存在一些问题,例如数据特征选择的精确度不高,获取数据特征的时间长。
因此,如何提高数据特征选择的精确度,缩短获取数据特征的时间,成为本领域技术人员亟需解决的技术问题。
发明内容
基于此,有必要提供一种数据特征的选择方法及系统,提高数据特征选择的精确度,缩短获取数据特征的时间。
为实现上述目的,本发明提供了如下方案:
一种数据特征的选择方法,包括:
获取数据集,所述数据集包括若干个数据,所述数据包括若干个数据特征;
对各所述数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;
设置阈值;
获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;
将选择出的数据特征放到分类器中,计算选择出的数据特征的正确率;
计算获取飞蛾种群的次数,比较获取飞蛾种群的次数与所述阈值的大小,若获取飞蛾种群的次数小于所述阈值,则更新飞蛾种群,更新飞蛾种群后返回步骤“筛选飞蛾特征”;否则,从所述选择出的各数据特征的正确率中确定正确率最高的数据特征。
可选的,所述数据特征包括数值型数据特征和字符串数据特征;将所述字符串数据特征对应成数值型数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值;
可选的,所述获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数;
所述飞蛾个体的每一飞蛾特征为0或1,1表示选择飞蛾特征,0表示不选择飞蛾特征;
所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
可选的,所述更新飞蛾种群具体包括:
根据所述数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;
获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征;
获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同;
更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;
获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;
根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;
根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;
根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;
将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群。
可选的,所述根据所述数据特征的正确率计算飞蛾个体的适应度值的具体计算公式如下:
其中,fitness(i)为第i个飞蛾个体的正确率,λ为数据特征的数量;
所述更新飞蛾个体数量的具体计算公式如下:
其中,no为更新后的飞蛾个体数量,N为当前飞蛾个体数量,k为当前获取飞蛾种群的次数,T为阈值。
可选的,所述更新每个飞蛾特征的速度的具体计算公式如下:
其中,ω、c1、c2为自定义参数,k表示当前获取飞蛾种群的次数,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的更新后的速度,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的速度,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征的每个飞蛾个体的最优个体的飞蛾特征,为到第k次获取飞蛾种群为止的所有飞蛾个体第j个飞蛾特征的所有飞蛾的最优个体的飞蛾特征,为第i个飞蛾个体的第j个飞蛾特征;
所述计算每个飞蛾个体更新后的飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体更新后的第j个飞蛾特征,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征;
所述计算飞蛾特征与火焰特征之间的距离的具体计算公式如下:
D=F-M
其中,所述F为火焰特征,M为飞蛾特征;
所述根据飞蛾特征与火焰特征之间的距离更新飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体根据飞蛾特征与火焰特征之间的距离更新后的第j个飞蛾特征,b为自定义参数,t为随机数,-1<t<1;
所述将更新后的飞蛾特征做二进制转化处理的具体计算公式如下:
本发明还提供一种数据特征的选择系统,包括:
数据集获取模块,用于获取数据集;
数据特征处理模块,所述数据特征处理模块与所述数据集获取模块相连,用于数据集获取模块获取的数据集的各数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;
阈值设置模块,用于设置阈值;
飞蛾特征获取模块,用于获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;
数据特征正确率输出模块,所述数据特征正确率输出模块与所述飞蛾特征获取模块相连,用于将所述飞蛾特征获取选择出的数据特征放到分类器中,计算选择出的数据特征的正确率;
获取飞蛾种群的次数计算模块,所述获取飞蛾种群的次数计算模块与所述飞蛾特征获取模块相连,用于获取飞蛾特征获取模块中获取飞蛾种群的次数;
判断模块,所述判断模块与所述获取飞蛾种群的次数计算模块、所述阈值设置模块相连,用于判断获取飞蛾种群的次数与阈值设置模块设置的阈值的大小;若判断出获取飞蛾种群的次数小于所述阈值,则将指令发送至更新飞蛾种群模块;否则,则将指令发送至数据特征生成模块;
数据特征生成模块,所述数据特征生成模块与所述判断模块、所述数据特征正确率输出模块相连,用于接收判断模块传送的指令,从选择出的各数据特征的正确率中确定正确率最高的数据特征;
更新飞蛾种群模块,所述更新飞蛾种群模块与所述判断模块相连,用于接收判断模块传送的指令,并更新飞蛾种群模块。
可选的,所述数据特征处理模块用于处理数值型数据特征和字符串数据特征,将所述字符串数据特征对应成数值型数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值。
可选的,所述飞蛾特征获取模块,用于获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数;
根据飞蛾个体的每一飞蛾特征为0或1进行选择,1表示选择飞蛾特征,0表示不选择飞蛾特征;
所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
可选的,所述更新飞蛾种群模块具体包括:
适应度值处理单元,用于根据数据特征处理模块生成的数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;
当前速度获取单元,用于获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征;
火焰单元,所述火焰单元与所述适应度值处理单元相连,用于获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同;
第一飞蛾种群生成单元,所述第一飞蛾种群生成单元与所述适应度值处理单元相连,用于更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;
所有飞蛾的最优个体生成单元,所述所有飞蛾的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
每个飞蛾个体的最优个体生成单元,所述每个飞蛾个体的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与当前速度获取单元、所述所有飞蛾的最优个体生成单元、每个飞蛾个体的最优个体生成单元相连,用于根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与所述更新每个飞蛾特征的速度单元、所述飞蛾特征获取模块相连,用于根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;
飞蛾特征与火焰特征之间的距离计算单元,所述飞蛾特征与火焰特征之间的距离计算单元与所述更新每个飞蛾特征的速度单元、所述火焰单元相连,用于根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;
更新飞蛾特征单元,所述更新飞蛾特征单元与所述飞蛾特征与火焰特征之间的距离计算单元、更新每个飞蛾特征的速度单元相连,用于根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;
第二飞蛾种群生成单元,所述第二飞蛾种群生成单元与所述更新飞蛾特征单元、所述飞蛾特征获取模块相连,用于将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群,并将生成的第二种群发送至飞蛾特征获取模块。
与现有技术相比,本发明的有益效果是:
本发明提出了一种数据特征的选择方法及系统,在进行数据特征选择时,首先获取数据集,所述数据集包括若干个数据,所述数据包括若干个数据特征;对各所述数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;设置阈值;获取飞蛾种群,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;筛选飞蛾特征;根据筛选出的飞蛾特征选择数据特征;将选择出的数据特征放到分类器中,计算选择出的数据特征的正确率;计算获取飞蛾种群的次数,判断获取飞蛾种群的次数与所述阈值的大小,若获取飞蛾种群的次数小于所述阈值,则更新飞蛾种群,更新飞蛾种群后返回步骤“筛选飞蛾特征”;否则,输出所述选择出的数据特征的正确率最高的数据特征。与传统的优化算法相比,本发明提出的数据特征的选择方法及系统大大提高了数据特征选择的精确度,缩短了获取数据特征的时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中数据特征的选择方法流程图;
图2为本发明实施例2中数据特征的选择系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种数据特征的选择方法及系统,提高数据特征选择的精确度,缩短获取数据特征的时间。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
图1为本发明实施例1提供的一种数据特征的选择方法流程图。如图1所示,一种数据特征的选择方法,包括:
步骤101:获取数据集,所述数据集包括若干个数据,所述数据包括若干个数据特征;所述数据特征包括数值型数据特征和字符串数据特征;将所述字符串数据特征对应成数值型数据特征。
步骤102:对各所述数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值。
步骤103:设置阈值。
步骤104:获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;所述获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数。
所述飞蛾个体的每一飞蛾特征为0或1,1表示选择飞蛾特征,0表示不选择飞蛾特征。
所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
步骤105:将选择出的数据特征放到分类器中,计算选择出的数据特征的正确率。
步骤106:计算获取飞蛾种群的次数。
步骤107:判断所述获取飞蛾种群的次数是否小于所述阈值,若否,则执行步骤108;若是,则执行步骤109。
步骤108:输出所述选择出的数据特征的正确率最高的数据特征。
步骤109:更新飞蛾种群,更新飞蛾种群后返回步骤104。
所述更新飞蛾种群具体包括:
根据所述数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;所述根据所述数据特征的正确率计算飞蛾个体的适应度值的具体计算公式如下:
其中,fitness(i)为第i个飞蛾个体的正确率,λ为数据特征的数量;
所述更新飞蛾个体数量的具体计算公式如下:
其中,no为更新后的飞蛾个体数量,N为当前飞蛾个体数量,k为当前获取飞蛾种群的次数,T为阈值。
获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征。
获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同;
更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;
获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;所述更新每个飞蛾特征的速度的具体计算公式如下:
其中,ω、c1、c2为自定义参数,k表示当前获取飞蛾种群的次数,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的更新后的速度,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的速度,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征的每个飞蛾个体的最优个体的飞蛾特征,为到第k次获取飞蛾种群为止的所有飞蛾个体第j个飞蛾特征的所有飞蛾的最优个体的飞蛾特征,为第i个飞蛾个体的第j个飞蛾特征;
所述计算每个飞蛾个体更新后的飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体更新后的第j个飞蛾特征,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征。
根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;所述计算每个飞蛾个体更新后的飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体更新后的第j个飞蛾特征,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征。
根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;所述计算飞蛾特征与火焰特征之间的距离的具体计算公式如下:
D=F-M
其中,所述F为火焰特征,M为飞蛾特征。
根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;所述根据飞蛾特征与火焰特征之间的距离更新飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体根据飞蛾特征与火焰特征之间的距离更新后的第j个飞蛾特征,b为自定义参数,t为随机数,-1<t<1。
将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群。所述将更新后的飞蛾特征做二进制转化处理的具体计算公式如下:
实施例2:
图2为本发明实施例2提供的一种数据特征的选择系统结构图。如图2所述,一种数据特征的选择系统,包括:
数据集获取模块201,用于获取数据集。
数据特征处理模块202,所述数据特征处理模块202与所述数据集获取模块201相连,用于数据集获取模块获取的数据集的各数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;所述数据特征处理模块用于处理数值型数据特征和字符串数据特征,将所述字符串数据特征对应成数值型数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值。
阈值设置模块203,用于设置阈值。
飞蛾种群特征模块204,所述飞蛾种群特征模块204与所述数据特征处理模块202相连,用于获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数。
所述飞蛾特征处理模块筛选飞蛾特征时,根据飞蛾个体的每一飞蛾特征为0或1进行选择,1表示选择飞蛾特征,0表示不选择飞蛾特征;所述飞蛾特征处理模块根据筛选出的飞蛾特征选择数据特征时,具体包括:所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
数据特征正确率输出模块205,所述数据特征正确率输出模块205与所述飞蛾特征获取模块204相连,用于将所述飞蛾特征获取模块选择出的数据特征放到分类器中,计算选择出的数据特征的正确率。
获取飞蛾种群的次数计算模块206,所述获取飞蛾种群的次数计算模块206与所述飞蛾特征获取模块204相连,用于获取飞蛾特征获取模块中获取飞蛾种群的次数。
判断模块207,所述判断模块204与所述获取飞蛾种群的次数计算模块206、所述阈值设置模块203相连,用于判断获取飞蛾种群的次数与阈值设置模块设置的阈值的大小;若判断出获取飞蛾种群的次数小于所述阈值,则将指令发送至更新飞蛾种群模块;否则,则将指令发送至数据特征生成模块。
数据特征生成模块208,所述数据特征生成模块208与所述判断模块207、所述数据特征正确率输出模块205相连,用于接收判断模块传送的指令,从选择出的各数据特征的正确率中确定正确率最高的数据特征。
更新飞蛾种群模块209,所述更新飞蛾种群模块209与所述判断模块207相连,用于接收判断模块传送的指令,并更新飞蛾种群模块。
所述更新飞蛾种群模块209具体包括:
适应度值处理单元,用于根据数据特征正确率输出模块205生成的数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;所述适应度值处理单元用于根据所述数据特征的正确率计算飞蛾个体的适应度值的具体计算公式如下:
其中,fitness(i)为第i个飞蛾个体的正确率,λ为数据特征的数量。
当前速度获取单元,用于获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征。
火焰单元,所述火焰单元与所述适应度值处理单元相连,用于获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同。
第一飞蛾种群生成单元,所述第一飞蛾种群生成单元与所述适应度值处理单元相连,用于更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;所述第一飞蛾种群生成单元用于更新飞蛾个体数量的具体计算公式如下:
其中,no为更新后的飞蛾个体数量,N为当前飞蛾个体数量,k为当前获取飞蛾种群的次数,T为阈值。
所有飞蛾的最优个体生成单元,所述所有飞蛾的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
每个飞蛾个体的最优个体生成单元,所述每个飞蛾个体的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与当前速度获取单元、所述所有飞蛾的最优个体生成单元、每个飞蛾个体的最优个体生成单元相连,用于根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;所述更新每个飞蛾特征的速度单元用于更新每个飞蛾特征的速度的具体计算公式如下:
其中,ω、c1、c2为自定义参数,k表示当前获取飞蛾种群的次数,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的更新后的速度,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的速度,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征的每个飞蛾个体的最优个体的飞蛾特征,为到第k次获取飞蛾种群为止的所有飞蛾个体第j个飞蛾特征的所有飞蛾的最优个体的飞蛾特征,为第i个飞蛾个体的第j个飞蛾特征。
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与所述更新每个飞蛾特征的速度单元、所述飞蛾特征获取模块204相连,用于根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;所述更新每个飞蛾特征的速度单元用于计算每个飞蛾个体更新后的飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体更新后的第j个飞蛾特征,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征。
飞蛾特征与火焰特征之间的距离计算单元,所述飞蛾特征与火焰特征之间的距离计算单元与所述更新每个飞蛾特征的速度单元、所述火焰单元相连,用于根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;所述飞蛾特征与火焰特征之间的距离计算单元用于计算飞蛾特征与火焰特征之间的距离的具体计算公式如下:
D=F-M
其中,所述F为火焰特征,M为飞蛾特征。
更新飞蛾特征单元,所述更新飞蛾特征单元与所述飞蛾特征与火焰特征之间的距离计算单元、更新每个飞蛾特征的速度单元相连,用于根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;所述更新飞蛾特征单元用于根据飞蛾特征与火焰特征之间的距离更新飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体根据飞蛾特征与火焰特征之间的距离更新后的第j个飞蛾特征,b为自定义参数,t为随机数,-1<t<1。
第二飞蛾种群生成单元,所述第二飞蛾种群生成单元与所述更新飞蛾特征单元、所述飞蛾特征获取模块204相连,用于将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群,并将生成的第二种群发送至飞蛾特征获取模块204;所述第二飞蛾种群生成单元用于将更新后的飞蛾特征做二进制转化处理的具体计算公式如下:
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种数据特征的选择方法,其特征在于,包括:
获取数据集,所述数据集包括若干个数据,所述数据包括若干个数据特征;
对各所述数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;
设置阈值;
获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;
将选择出的数据特征放到分类器中,计算选择出的数据特征的正确率;
计算获取飞蛾种群的次数,比较获取飞蛾种群的次数与所述阈值的大小,若获取飞蛾种群的次数小于所述阈值,则更新飞蛾种群,更新飞蛾种群后返回步骤“筛选飞蛾特征”;否则,从所述选择出的各数据特征的正确率中确定正确率最高的数据特征。
2.根据权利要求1所述的数据特征的选择方法,其特征在于,所述数据特征包括数值型数据特征和字符串数据特征;将所述字符串数据特征对应成数值型数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值。
3.根据权利要求1所述的数据特征的选择方法,其特征在于,所述获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数。
所述飞蛾个体的每一飞蛾特征为0或1,1表示选择飞蛾特征,0表示不选择飞蛾特征;
所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
4.根据权利要求1所述的数据特征的选择方法,其特征在于,所述更新飞蛾种群具体包括:
根据所述数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;
获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征;
获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同;
更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;
获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;
根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;
根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;
根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;
将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群。
5.根据权利要求4所述的数据特征的选择方法,其特征在于,所述根据所述数据特征的正确率计算飞蛾个体的适应度值的具体计算公式如下:
其中,fitness(i)为第i个飞蛾个体的正确率,λ为数据特征的数量;
所述更新飞蛾个体数量的具体计算公式如下:
其中,no为更新后的飞蛾个体数量,N为当前飞蛾个体数量,k为当前获取飞蛾种群的次数,T为阈值。
6.根据权利要求4所述的数据特征的选择方法,其特征在于,
所述更新每个飞蛾特征的速度的具体计算公式如下:
其中,ω、c1、c2为自定义参数,k表示当前获取飞蛾种群的次数,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的更新后的速度,表示在第k次获取飞蛾种群时第i个飞蛾个体第j维分量的速度,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征的每个飞蛾个体的最优个体的飞蛾特征,为到第k次获取飞蛾种群为止的所有飞蛾个体第j个飞蛾特征的所有飞蛾的最优个体的飞蛾特征,为第i个飞蛾个体的第j个飞蛾特征;
所述计算每个飞蛾个体更新后的飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体更新后的第j个飞蛾特征,为在第k次获取飞蛾种群时第i个飞蛾个体第j个飞蛾特征;
所述计算飞蛾特征与火焰特征之间的距离的具体计算公式如下:
D=F-M
其中,所述F为火焰特征,M为飞蛾特征;
所述根据飞蛾特征与火焰特征之间的距离更新飞蛾特征的具体计算公式如下:
其中,为在第k次获取飞蛾种群时第i个飞蛾个体根据飞蛾特征与火焰特征之间的距离更新后的第j个飞蛾特征,b为自定义参数,t为随机数,-1<t<1;
所述将更新后的飞蛾特征做二进制转化处理的具体计算公式如下:
7.一种数据特征的选择系统,其特征在于,包括:
数据集获取模块,用于获取数据集;
数据特征处理模块,所述数据特征处理模块与所述数据集获取模块相连,用于数据集获取模块获取的数据集的各数据特征进行0-1标准化处理,得到在0到1范围内标准化数据特征;
阈值设置模块,用于设置阈值;
飞蛾特征获取模块,用于获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,所述飞蛾种群包括若干个飞蛾个体,所述飞蛾个体包括若干个飞蛾特征;
数据特征正确率输出模块,所述数据特征正确率输出模块与所述飞蛾特征获取模块相连,用于将所述飞蛾特征获取模块选择出的数据特征放到分类器中,计算选择出的数据特征的正确率;
获取飞蛾种群的次数计算模块,所述获取飞蛾种群的次数计算模块与所述飞蛾特征获取模块相连,用于获取飞蛾特征获取模块中获取飞蛾种群的次数;
判断模块,所述判断模块与所述获取飞蛾种群的次数计算模块、所述阈值设置模块相连,用于判断获取飞蛾种群的次数与阈值设置模块设置的阈值的大小;若判断出获取飞蛾种群的次数小于所述阈值,则将指令发送至更新飞蛾种群模块;否则,则将指令发送至数据特征生成模块;
数据特征生成模块,所述数据特征生成模块与所述判断模块、所述数据特征正确率输出模块相连,用于接收判断模块传送的指令,从选择出的各数据特征的正确率中确定正确率最高的数据特征;
更新飞蛾种群模块,所述更新飞蛾种群模块与所述判断模块相连,用于接收判断模块传送的指令,并更新飞蛾种群模块。
8.根据权利要求7所述的数据特征的选择系统,其特征在于,所述数据特征处理模块用于处理数值型数据特征和字符串数据特征,将所述字符串数据特征对应成数值型数据特征;对各所述数据特征进行0-1标准化处理的具体公式如下:
其中,p为当前数值,qA为数值型数据中的最小数值,QA为数值型数据中的最大数值,p'为0-1标准化处理后的数值。
9.根据权利要求7所述的数据特征的选择系统,其特征在于,所述飞蛾特征获取模块,用于获取飞蛾种群,并从所述飞蛾种群中筛选飞蛾特征,根据筛选出的飞蛾特征选择数据特征,具体包括:
根据以下公式对所述飞蛾种群进行初始化,确定飞蛾种群:
其中,xi为第i个飞蛾个体的飞蛾特征,rand()为随机数;
根据飞蛾个体的每一飞蛾特征为0或1进行选择,1表示选择飞蛾特征,0表示不选择飞蛾特征;
所述每个飞蛾个体的飞蛾特征与数据特征一一对应,选择飞蛾特征表示选择与飞蛾特征对应的数据特征,不选择飞蛾特征表示不选择与飞蛾特征对应的数据特征。
10.根据权利要求7所述的数据特征的选择系统,其特征在于,所述更新飞蛾种群模块具体包括:
适应度值处理单元,用于根据数据特征正确率输出模块生成的数据特征的正确率计算飞蛾个体的适应度值,将飞蛾个体的适应度值按照由大到小的顺序排序;
当前速度获取单元,用于获取每个飞蛾特征的当前速度,所述每个飞蛾特征的速度用于更新飞蛾特征;
火焰单元,所述火焰单元与所述适应度值处理单元相连,用于获取火焰,所述火焰有若干个火焰个体,所述火焰个体有若干个火焰特征,所述火焰个体数量与所述飞蛾个体数量相同,所述火焰个体与所述飞蛾个体一一对应,所述每个火焰个体的适应度值与其对应的飞蛾个体的适应度值相等,所述每个火焰个体的火焰特征与其对应的飞蛾个体的飞蛾特征相同;
第一飞蛾种群生成单元,所述第一飞蛾种群生成单元与所述适应度值处理单元相连,用于更新飞蛾个体数量,根据计算出的飞蛾个体的适应度值生成第一飞蛾种群;
所有飞蛾的最优个体生成单元,所述所有飞蛾的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中适应度值最大的飞蛾个体,将其作为所有飞蛾的最优个体;
每个飞蛾个体的最优个体生成单元,所述每个飞蛾个体的最优个体生成单元与所述适应度值处理单元、所述第一飞蛾种群生成单元相连,用于获取并保存所述第一飞蛾种群中每个飞蛾个体自身的适应度值最大的飞蛾个体,将其作为每个飞蛾个体的最优个体;
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与当前速度获取单元、所述所有飞蛾的最优个体生成单元、每个飞蛾个体的最优个体生成单元相连,用于根据所有飞蛾的最优个体的飞蛾特征、每个飞蛾个体的最优个体的飞蛾特征和每个飞蛾特征的当前速度更新每个飞蛾特征的速度;
更新每个飞蛾特征的速度单元,所述更新每个飞蛾特征的速度单元与所述更新每个飞蛾特征的速度单元、所述飞蛾特征获取模块相连,用于根据更新后的每个飞蛾特征的速度和所述每个飞蛾个体的当前特征,计算每个飞蛾个体更新后的飞蛾特征;
飞蛾特征与火焰特征之间的距离计算单元,所述飞蛾特征与火焰特征之间的距离计算单元与所述更新每个飞蛾特征的速度单元、所述火焰单元相连,用于根据每个飞蛾个体更新后的飞蛾特征和所述火焰特征计算飞蛾特征与火焰特征之间的距离;
更新飞蛾特征单元,所述更新飞蛾特征单元与所述飞蛾特征与火焰特征之间的距离计算单元、更新每个飞蛾特征的速度单元相连,用于根据更新后的飞蛾特征与火焰特征之间的距离更新飞蛾特征;
第二飞蛾种群生成单元,所述第二飞蛾种群生成单元与所述更新飞蛾特征单元、所述飞蛾特征获取模块相连,用于将更新后的飞蛾特征做二进制转化处理,生成第二飞蛾种群,并将生成的第二种群发送至飞蛾特征获取模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810092412.0A CN108288074A (zh) | 2018-01-31 | 2018-01-31 | 一种数据特征的选择方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810092412.0A CN108288074A (zh) | 2018-01-31 | 2018-01-31 | 一种数据特征的选择方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108288074A true CN108288074A (zh) | 2018-07-17 |
Family
ID=62836046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810092412.0A Pending CN108288074A (zh) | 2018-01-31 | 2018-01-31 | 一种数据特征的选择方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108288074A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871934A (zh) * | 2019-01-16 | 2019-06-11 | 湖北工业大学 | 基于Spark分布式的并行二进制飞蛾扑火算法的特征选择方法 |
WO2020118743A1 (zh) * | 2018-12-14 | 2020-06-18 | 深圳先进技术研究院 | 数据特征提取方法、装置及电子设备 |
CN112085712A (zh) * | 2020-08-25 | 2020-12-15 | 山东科技大学 | 一种乳腺肿块针吸图像的分析处理方法 |
-
2018
- 2018-01-31 CN CN201810092412.0A patent/CN108288074A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020118743A1 (zh) * | 2018-12-14 | 2020-06-18 | 深圳先进技术研究院 | 数据特征提取方法、装置及电子设备 |
CN111325227A (zh) * | 2018-12-14 | 2020-06-23 | 深圳先进技术研究院 | 数据特征提取方法、装置及电子设备 |
CN111325227B (zh) * | 2018-12-14 | 2023-04-07 | 深圳先进技术研究院 | 数据特征提取方法、装置及电子设备 |
CN109871934A (zh) * | 2019-01-16 | 2019-06-11 | 湖北工业大学 | 基于Spark分布式的并行二进制飞蛾扑火算法的特征选择方法 |
CN112085712A (zh) * | 2020-08-25 | 2020-12-15 | 山东科技大学 | 一种乳腺肿块针吸图像的分析处理方法 |
CN112085712B (zh) * | 2020-08-25 | 2022-04-29 | 山东科技大学 | 一种乳腺肿块针吸图像的分析处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106790019B (zh) | 基于特征自学习的加密流量识别方法及装置 | |
CN105488528B (zh) | 基于改进自适应遗传算法的神经网络图像分类方法 | |
CN104809877B (zh) | 基于特征参数加权gefcm算法的高速公路地点交通状态估计方法 | |
CN109063903A (zh) | 一种基于深度强化学习的建筑能耗预测方法及系统 | |
CN108288074A (zh) | 一种数据特征的选择方法及系统 | |
CN107133960A (zh) | 基于深度卷积神经网络的图像裂缝分割方法 | |
CN108629413A (zh) | 神经网络模型训练、交易行为风险识别方法及装置 | |
CN105069469B (zh) | 一种基于模糊c均值聚类算法和熵理论的数据流检测方法 | |
CN109116312A (zh) | 基于qmfb与卷积神经网络的雷达信号分类方法 | |
WO2021027153A1 (zh) | 交通流数据分析模型的构建方法和装置 | |
CN108491766A (zh) | 一种端到端的基于深度决策森林的人群计数方法 | |
CN109711534A (zh) | 降维模型训练方法、装置及电子设备 | |
CN111121784B (zh) | 一种无人侦察机航路规划方法 | |
CN109615015A (zh) | 一种基于区块链智能合约与机器学习的数据预处理方法 | |
CN110535149A (zh) | 一种公变台区电力负荷三相不平衡预测方法 | |
CN110336838A (zh) | 账号异常检测方法、装置、终端及存储介质 | |
CN107766201A (zh) | 一种软件处理方法和装置、电子设备 | |
CN107247588A (zh) | 一种基于约束频度的规则引擎优化方法 | |
CN108830376A (zh) | 针对时间敏感的环境的多价值网络深度强化学习方法 | |
CN108648093A (zh) | 数据处理方法、装置及设备 | |
CN109671055A (zh) | 肺结节检测方法及装置 | |
CN108334957A (zh) | 电网一次设备运维检修成本预测方法及系统 | |
CN108985148A (zh) | 一种手部关键点检测方法及装置 | |
CN107274086A (zh) | 一种基于隐马尔可夫模型的网格化社会治理信息方法 | |
CN107451617A (zh) | 一种图转导半监督分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180717 |