CN113779877B - 一种基于遗传算法的自动化特征构建方法 - Google Patents
一种基于遗传算法的自动化特征构建方法 Download PDFInfo
- Publication number
- CN113779877B CN113779877B CN202111039026.3A CN202111039026A CN113779877B CN 113779877 B CN113779877 B CN 113779877B CN 202111039026 A CN202111039026 A CN 202111039026A CN 113779877 B CN113779877 B CN 113779877B
- Authority
- CN
- China
- Prior art keywords
- individual
- individuals
- data
- population
- new
- 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.)
- Active
Links
- 230000002068 genetic effect Effects 0.000 title claims abstract description 72
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 70
- 238000010276 construction Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000011156 evaluation Methods 0.000 claims description 69
- 230000035772 mutation Effects 0.000 claims description 27
- 238000000605 extraction Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 9
- 108090000623 proteins and genes Proteins 0.000 description 7
- 210000000349 chromosome Anatomy 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000012407 engineering method Methods 0.000 description 1
- 238000010353 genetic engineering Methods 0.000 description 1
- 230000008303 genetic mechanism Effects 0.000 description 1
- 102000004169 proteins and genes Human genes 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Genetics & Genomics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Physiology (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于遗传算法的自动化特征构建方法,包括:对目标数据进行特征提取获取数据特征;将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群;基于所述遗传算法模型,对种群和个体进行自动化特征构建,并基于构建结果,输出若干个最优个体;通过遗传算法结构模型,解决了对于混合型数据的编码问题,实现了对同时含有离散特征和连续特征的数据自动化特征构建,有效地完成了对大量新特征的构建。
Description
技术领域
本发明涉及计算机科学中的机器学习领域,特别涉及一种基于遗传算法的自动化特征构建方法。
背景技术
在数据驱动的时代,机器学习算法受到了广泛的关注,而特征工程作为机器学习中非常重要的一步,同样也受到了大量的关注。这里的数据指的就是经过特征工程得到的数据,特征工程是指对原始特征进行清洗、衍生、筛选等操作的过程,它所带来的结果就是提高数据质量,进而提升模型在新特征上的表现。因此如何寻找和构造有效的特征的过程就显得尤为重要。传统的特征工程方法一般是人工从原始数据中找出一些具有一定物理意义的特征。这一过程通常需要对原始数据进行多方面的观测,思考问题的潜在形式和数据结构,再通过大量反复试验进行试错,从而找过真正有用的特征。但是这样的过程一般需要花费大量的人力和时间,并且效率很低。这就启发我们利用计算机强大的计算功能让它自己去学习和探索有效的特征。
自动化特征工程就是这样一种技术。目前的一些自动化特征构建工具,如gplearn通过做符号回归来构建特征,但由于缺乏对于结构化数据合理的编码,无法处理离散型数据。又如Featurestools通过对数据做转换和聚合来构建特征,其中虽然考虑到了对于结构化数据的编码和聚合,但是并没有非常有效的途径去构建大量的新特征,并对新特征进行选择,以上的这些技术虽然可以在一定程度上处理特征工程的问题,但是却都存在着一些缺陷,如无法对于混合型数据进行有效地自动化特征提取。
发明内容
本发明提供一种基于遗传算法的自动化特征构建方法,通过遗传算法结构模型,解决了对于混合型数据的编码问题,实现了对同时含有离散特征和连续特征的数据自动化特征构建,有效地完成了对大量新特征的构建。
本发明提供一种基于遗传算法的自动化特征构建方法,包括:
步骤1:对目标数据进行特征提取获取数据特征;
步骤2:将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群;
步骤3:基于所述遗传算法模型,对种群和个体进行自动化特征构建,并基于构建结果,输出若干个最优个体。
在一种可能实现的方式中,
步骤1中,对目标数据进行特征提取获取数据特征包括:
基于所述遗传算法结构模型的预设通用度,获取所述遗传算法结构模型读取的预设目标数据及其对应的第一特征值;
对所述目标数据集输入数据特征提取模型中,并输出所述目标数据对应的第二特征值;
基于所述第一特征值,对所述第二特征值进行识别,获取所述第一特征值和第二特征值之间的识别率;并判断所述识别率是否大于预设识别率;
若是,将所述第一特征值对应的数据特征,作为所述第二特征值对应目标数据的数据特征;
否则,调整所述预设通用度的取值,更新得到所述预设目标数据及其对应的第一特征值,将小于等于预设识别率的第二特征值与更新后的第一特征值进行识别,并根据识别结果获取所述小于等于预设识别率的第二特征值对应的数据特征。
在一种可能实现的方式中,
步骤2中,将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群包括:
将所述数据特征输入遗传算法结构模型中,获取所述数据特征的相关信息,所述相关信息包括数据来源、数据类型、数据连续或离散属性、数据字段;
基于所述相关信息,确定所述数据特征之间的关联度,并根据所述关联度将所述数据特征划分为多个类别;
以类别中对应的数据特征数目为编码位,利用随机分布生成法对对应的数据特征进行编码,得到种群,每个编码位对应的编码后的数据特征为所述种群包含的个体。
在一种可能实现的方式中,
步骤3中,对种群和个体进行自动化特征构建之前还包括:对所述个体进行随机初始化,其过程如下:
随机抽取若干所述个体组成变量序列。
在一种可能实现的方式中,
步骤3中,基于所述遗传算法模型,对种群和个体进行自动化特征构建包括:
对所述个体进行突变,对所述种群进行交叉。
在一种可能实现的方式中,
对所述个体进行突变包括:
随机删除:从随机抽取若干所述个体组成的变量序列中随机删除若干变量;
随机增加:从个体的变量库中随机添加若干新变量至所述变量序列中;
点突变:从所述变量序列随机选择一个第一初始个体,并判断所述第一初始个体的特征类型;
若所述初始个体为离散型,则从离散编码算子集合中随机选择一个离散编码算子,对所述第一初始个体进行离散编码,输出第一目标个体;
若所述初始个体为连续型,则从连续编码算子集合中随机选择一个连续编码算子,对所述第一初始个体进行连续编码,输出第二目标个体;
二重突变:从所述变量序列中随机选择两个第二初始个体和第三初始个体,并判断所述第二初始个体和第三初始个体的特征类型;
若所述第二初始个体和第三初始个体为离散-连续类型,则从离散-连续编码算子集合中随机选取一个离散-连续编码算子,对所述第二初始个体和第三初始个体进行离散-连续编码,输出第三目标个体;
若所述第二初始个体和第三初始个体为连续-连续类型,则从二元编码算子集合中随机选取一个二元编码算子,对所述第二初始个体和第三初始个体进行二元编码,输出第四目标个体;
若所述第二初始个体和第三初始个体为离散-离散类型,则从离散-离散编码算子集合中随机选取一个离散-离散编码算子,对所述第二初始个体和第三初始个体进行离散-离散编码,输出第五目标个体。
在一种可能实现的方式中,
对所述种群进行交叉包括:
随机选取两个变量序列,并分别从所述两个变量序列中随机选取出两个个体变量,并对所述两个个体变量进行交叉对换,输出两个新的变量序列。
在一种可能实现的方式中,
步骤3中,基于构建结果,输出若干个最优个体包括:
基于所述构建结果,获取新的种群,所述新的种群包含若干新的个体;
预先为所述遗传算法模型设定第一评估指标,第二评估指标,将所述新的种群输入所述遗传算法模型,得到所述若干新的个体在第一评估指标,第二评估指标下的评估结果;
基于所述评估结果,并根据如下公式计算所述新的种群的准确率:
其中,Acc表示所述新的种群的准确率,ST表示既满足第一评估指标又满足第二评估指标的所述新的种群中新的个体的数量,PT表示既不满足第一评估指标又不满足第二评估指标的所述新的种群中新的个体的数量,SF表示只满足第一评估指标不满足第二评估指标的所述新的种群中新的个体的数量,PF表示只满足第二评估指标不满足第一评估指标的所述新的种群中新的个体的数量;
判断所述新的种群的准确率是否大于预设准确率;
若是,表明所述新的种群满足评估要求;
否则,对所述新的种群及其包含的新的个体再次进行自动化特征构建,直到获取的最新的种群的准确大于预设准确率;
基于所述评估结果,确定满足评估要求的新的种群中新的个体的适应度,对满足评估要求的新的种群中新的个体按照所述适应度进行排序,获得排序结果,并从所述排序结果中选择排序满足预设要求的新的个体,作为待选择个体集合;
根据如下公式计算选择所述待选择个体集合中每个待选择个体的被选择概率;
其中,pi表示所述待选择个体集合中第i个待选择个体的被选择概率,exp表示以自然常数e为底的指数,e=2.72,Ii表示所述第i个待选择个体的适应度,n表示所述待选择个体集合中待选择个体的数量;
选择被选择概率大于预设概率的待选择个体作为最优个体并输出。
在一种可能实现的方式中,
对所述个体进行突变过程中包括:
获取所述个体对应的元数据,对所述元数据进行逻辑处理,划分为M个字段,并获取每个字段对应的数据长度和数据类型;
根据每个字段对应的数据长度确定所述每个字段所对应的级别,基于所述每个字段的级别确定所述每个字段与预设对照级别的映射关系,并基于所述映射关系构建所述M个字段的树形结构;
基于每个字段的数据类型为所述树形结构上每个字段对应位置上设置标识,基于所述标识,对所述树形结构进行遍历,确定所述每个字段的内容和结构,并得到第一质量,基于所述每个字段在所述树形结构中的位置,对所述第一质量进行修正,获取第二质量;
基于所述第二质量,确定所述M个字段中第二质量小于预设阈值的字段数目,并判断所述数目是否超过预设数目,
若是,设定所述M个字段对应的个体的突变概率为第一概率;
否则,基于所述第二质量,将所述M个字段进行排序,得到字段序列,并将所述字段序列输出稳定性判别模型中,输出所述M个字段对应的稳定性,并基于排序结果为所述稳定性设置对应的权值,得到所述M个字段的综合质量值,基于所述综合质量值,确定所述M个字段对应的个体的评估值;
判断所述评估值是否小于预设评估值;
若是,设定所述M个字段对应的个体的突变概率为第二概率;
否则,设定所述M个字段对应的个体的突变概率为第三概率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种基于遗传算法的自动化特征构建方法的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例1
本发明实施例提供一种基于遗传算法的自动化特征构建方法,如图1所示,包括:
步骤1:对目标数据进行特征提取获取数据特征;
步骤2:将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群;
步骤3:基于所述遗传算法模型,对种群和个体进行自动化特征构建,并基于构建结果,输出若干个最优个体。
在该实施例中,对所述种群和个体进行自动化特征构建具体为对所述个体进行突变,对所述种群进行交叉。
在该实施例中,所述目标数据为既有离散数据又有连续数据的混合型数据。
在该实施例中,本方案可结合结合遗传算法做进一步解释,具体为:
遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,不需要确定的规则就能自动获取和指导优化的搜索空间,自适应地调整搜索方向。
遗传算法以一种群体中的所有个体为对象,并利用随机化技术指导对一个被编码的参数空间进行高效搜索。其中,选择(Selection)、交叉(Crossover)和变异(Mutation)构成了遗传算法的遗传操作;参数编码、初始群体的设定、适应度函数的设计、遗传操作设计、控制参数设定五个要素组成了遗传算法的核心内容。
遗传算法是从代表问题可能潜在的解集的一个种群(population)开始的,而一个种群则由经过基因(gene)编码的一定数目的个体(individual)组成。每个个体实际上是染色体(chromosome)带有特征的实体。
染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现(即基因型)是某种基因组合,它决定了个体的形状的外部表现,如黑头发的特征是由染色体中控制这一特征的某种基因组合决定的。因此,在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化,如二进制编码。
初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代(generation)演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度(fitness)大小选择(selection)个体,并借助于自然遗传学的遗传算子(genetic operators)进行组合交叉(crossover)和变异(mutation),产生出代表新的解集的种群。
这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码(decoding),可以作为问题近似最优解。
基于以上的遗传算法,我们对于目标数据进行特征提取并输入目标模型,从而建模成遗传算法中的种群,而这个种群由含有若干特征的个体组成。首先对种群内的个体进行随机初始化操作,接下来对种群进行演化操作,具体到个体内部与个体之间如下:
在个体内部进行变异操作,而在种群中的个体之间进行交叉操作。以上在一代间发生的变异和交叉称作一次演化,在每一次种群演化过后,都要基于目标模型进行一次评估与选择,会以较大概率淘汰掉达不到阈值(适应度)的个体,再进行下一次演化,进行若干次这样的演化后,将适应度最优的若干个体作为输出结果。
上述设计方案的有益效果是:通过遗传算法结构模型,解决了对于混合型数据的编码问题,实现了对同时含有离散特征和连续特征的数据自动化特征构建,有效地完成了对大量新特征的构建。
实施例2
基于实施例1的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,步骤1中,对目标数据进行特征提取获取数据特征包括:
基于所述遗传算法结构模型的预设通用度,获取所述遗传算法结构模型读取的预设目标数据及其对应的第一特征值;
对所述目标数据集输入数据特征提取模型中,并输出所述目标数据对应的第二特征值;
基于所述第一特征值,对所述第二特征值进行识别,获取所述第一特征值和第二特征值之间的识别率,并判断所述识别率是否大于预设识别率;
若是,将所述第一特征值对应的数据特征,作为所述第二特征值对应目标数据的数据特征;
否则,调整所述预设通用度的取值,更新得到所述预设目标数据及其对应的第一特征值,将小于或等于预设识别率的第二特征值与更新后的第一特征值进行识别,并根据识别结果获取所述小于或等于预设识别率的第二特征值对应的数据特征。
在该实施例中,所述遗传算法结构模型的预设通用度可根据输出要求自己设定,所述预设通用度用来表示所述遗传算法结构模型的对数据特征提取的精度。
上述设计方案的有益效果是:通过基于遗传算法结构模型的要求,提取所述目标数据的数据特征,使得到的数据特征能够更适应所述遗传算法结构模型,为之后基于遗传算法结构模型进行自动化特征构建提供基础。
实施例3
基于实施例1的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,步骤2中,将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群包括:
将所述数据特征输入遗传算法结构模型中,获取所述数据特征的相关信息,所述相关信息包括数据来源、数据类型、数据连续或离散属性、数据字段;
基于所述相关信息,确定所述数据特征之间的关联度,并根据所述关联度将所述数据特征划分为多个类别;
以类别中对应的数据特征数目为编码位,利用随机分布生成法对对应的数据特征进行编码,得到种群,每个编码位对应的编码后的数据特征为所述种群包含的个体。
在该实施例中,所述离散属性通常指非数值化的,结构化的特征,如人的性别、职业等;连续属性通常指数值化的特征,如人的身高、体重等。
上述设计方案的有益效果是:通过根据数据特征的相关信息来对数据特征进行分类,然后根据分类结果将所述数据特征进行编码得到包含若干个体的种群,为基于个体和种群进行自动化特征构建提供数据数据基础。
实施例4
基于实施例1的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,步骤3中,对种群和个体进行自动化特征构建之前还包括:对所述个体进行随机初始化,其过程如下:
随机抽取若干所述个体组成变量序列。
上述设计方案的有益效果是:通过对个体进行随机初始化,为对个体进行自动化特征构建做准备。
实施例5
基于实施例1的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,其特征在于,基于所述遗传算法模型,对种群和个体进行自动化特征构建包括:
对所述个体进行突变,对所述种群进行交叉。
上述设计方案的有益效果是:实现了对同时含有离散特征和连续特征的数据自动化特征构建。
实施例6
基于实施例5的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,对所述个体进行突变包括:
随机删除:从随机抽取若干所述个体组成的变量序列中随机删除若干变量;
随机增加:从个体的变量库中随机添加若干新变量至所述变量序列中;
点突变:从所述变量序列随机选择一个第一初始个体,并判断所述第一初始个体的特征类型;
若所述第一初始个体为离散型,则从离散编码算子集合中随机选择一个离散编码算子,对所述第一初始个体进行离散编码,输出第一目标个体;
若所述初始个体为连续型,则从连续编码算子集合中随机选择一个连续编码算子,对所述第一初始个体进行连续编码,输出第二目标个体;
二重突变:从所述变量序列中随机选择两个第二初始个体和第三初始个体,并判断所述第二初始个体和第三初始个体的特征类型;
若所述第二初始个体和第三初始个体为离散-连续类型,则从离散-连续编码算子集合中随机选取一个离散-连续编码算子,对所述第二初始个体和第三初始个体进行离散-连续编码,输出第三目标个体;
若所述第二初始个体和第三初始个体为连续-连续类型,则从二元编码算子集合中随机选取一个二元编码算子,对所述第二初始个体和第三初始个体进行二元编码,输出第四目标个体;
若所述第二初始个体和第三初始个体为离散-离散类型,则从离散-离散编码算子集合中随机选取一个离散-离散编码算子,对所述第二初始个体和第三初始个体进行离散-离散编码,输出第五目标个体。
在该实施例中,对所述个体的突变包括:随机删除、随机增加、点突变、二重突变,它们之间独立发生,互不影响。
在该实施例中,对所述第一初始个体进行离散编码的方法有:
证据权重编码(Woe encoding):要对一个变量进行WOE编码,需要首先把这个变量进行分组处理(也叫离散化、分箱等等,说的都是一个意思)。分组后,对于第i组,WOE的计算公式如下:
其中,p(yi)是这个组中响应变量(即指的是模型中预测变量取值为“是”或者说1的个体)占所有样本中所有响应的比例,p(ni)是这个组中未响应变量(即指的是模型中预测变量取值为“否”或者说0的个体)占样本中所有未响应变量的比例。
独热编码(One-hot encoding):对于一个有m个类别的特征,经过独热编码处理后,会变为m个二元特征,每个特征对应于一个类别。这m个二元特征互斥,每次只有一个激活。
常规编码(Ordinal encoding):将分类特征编码为整数数组,比如将‘男性’和‘女性’分别编码成0.0和1.0。
目标均值编码(Target mean encoding):目标均值编码是用目标变量的平均值替换分类值的过程。
在该实施例中,对所述第一初始个体进行连续编码的方法有:
分位数编码(Quantile encoding):将特征数据从小到大排列,之后按照分位数分成若干区间,落在每个区间的内的数据自动成为一个新的类别。输出结果是连续特征。
一致编码(Uniformencoding):将数据平均分成若干个区间,落在每个区间的内的数据自动成为一个新的类别。输出结果是连续特征。
在该实施例中,对所述第二初始个体和第三初始个体进行离散-连续编码的方法包括:
通过分组编码(Groupby encoding):先将数据按一个离散特征分组,然后对每一组数据进行操作(如取平均值、取中值、取方差或自定义函数),最后将操作后的结果合并起来。输出结果为连续特征。
在该实施例中,对所述第二初始个体和第三初始个体进行二元编码的方法包括:输出的特征是连续特征,其中包括加法、减法、乘法和除法。
在该实施例中,对所述第二初始个体和第三初始个体进行离散-离散编码的方法包括:组合方法:即将两个离散特征组合成一个离散特征,比如两个离散特征,一个性别,一个职业,‘男’和‘老师’被组合成‘男老师’。
上述设计方案的有益效果是:通过对个体进行突变,解决了对于混合型数据的编码问题,实现了对同时含有离散特征和连续特征的个体自动化特征构建,有效地完成了对个体的大量新特征的构建。
实施例7
基于实施例5的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,对所述种群进行交叉包括:
随机选取两个变量序列,并分别从所述两个变量序列中随机选取出两个个体变量,并对所述两个个体变量进行交叉对换,输出两个新的变量序列。
在该实施例中,在对种群交叉的过程中,并不像变异一样,会创造出新的变量,但是由于个体间的变量演化是独立的,在进行交叉过后,个体的变量序列中很有可能会增加来自于其他个体的新变量。下面通过一个具体的例子来进一步说明:
交叉挑选出来的两个个体的变量序列分别为1,X2,这里X1里的变量分别为x1,x2,x3,x4,x5,x6,x7,而X2里的变量为y1,y2,y3,y4,y5,y6,而我们选出来的交叉位点分别为3,5,那么在交叉之后X1变成x1,x2,y5,x4,y3,x6,x7,而X2变成y1,y2,x5,y4,x3,y6。
上述设计方案的有益效果是:通过对种群进行交叉,有效地完成了对种群的大量新特征的构建。
实施例8
基于实施例1的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,步骤3中,基于构建结果,输出若干个最优个体包括:
基于所述构建结果,获取新的种群,所述新的种群包含若干新的个体;
预先为所述遗传算法模型设定第一评估指标、第二评估指标,将所述新的种群输入所述遗传算法模型,得到若干新的个体在第一评估指标、第二评估指标下的评估结果;
基于所述评估结果,并根据如下公式计算所述新的种群的准确率:
其中,Acc表示所述新的种群的准确率,ST表示既满足第一评估指标又满足第二评估指标的所述新的种群中新的个体的数量,PT表示既不满足第一评估指标又不满足第二评估指标的所述新的种群中新的个体的数量,SF表示只满足第一评估指标不满足第二评估指标的所述新的种群中新的个体的数量,PF表示只满足第二评估指标不满足第一评估指标的所述新的种群中新的个体的数量;
判断所述新的种群的准确率是否大于预设准确率;
若是,表明所述新的种群满足评估要求;
否则,对所述新的种群及其包含的新的个体再次进行自动化特征构建,直到获取的最新的种群的准确大于预设准确率;
基于所述评估结果,确定满足评估要求的新的种群中新的个体的适应度,对满足评估要求的新的种群中新的个体按照所述适应度进行排序,获得排序结果,并从所述排序结果中选择排序满足预设要求的新的个体,作为待选择个体集合;
根据如下公式计算选择所述待选择个体集合中每个待选择个体的被选择概率;
其中,pi表示所述待选择个体集合中第i个待选择个体的被选择概率,exp表示以自然常数e为底的指数,e=2.72,Ii表示所述第i个待选择个体的适应度,n表示所述待选择个体集合中待选择个体的数量;
选择被选择概率大于预设概率的待选择个体作为最优个体并输出。
在该实施例中,所述第一评估指标,第二评估指标例如可以是个体满足性别为女性,个体满足职业为老师。
在该实施例中,确定满足评估要求的新的种群中新的个体的适应度的确定方法为:满足第一评估指标和第二评估指标的个体的适应度最大,满足第一评估指标,不满足第二评估指标的个体的适应度较大,不满足第一评估指标,满足第二评估指标的个体的适应度较小,不满足第一评估指标和第二评估指标的个体的适应度最小。
上述设计方案的有益效果是:通过对进行自动化特征构建后的种群和个体进行评估与选择,会以较大概率淘汰掉达不到阈值(适应度)的个体,再进行下一次演化,进行若干次这样的演化后,将适应度最优的若干个体作为输出结果,实现了对个体的选择。
实施例9
基于实施例5的基础上,本发明实施例提供一种基于遗传算法的自动化特征构建方法,对所述个体进行突变过程中,包括:
获取所述个体对应的元数据,对所述元数据进行逻辑处理,划分为M个字段,并获取每个字段对应的数据长度和数据类型;
根据每个字段对应的数据长度确定所述每个字段所对应的级别,基于所述每个字段的级别确定所述每个字段与预设对照级别的映射关系,并基于所述映射关系构建所述M个字段的树形结构;
基于每个字段的数据类型为所述树形结构上每个字段对应位置上设置标识,基于所述标识,对所述树形结构进行遍历,确定所述每个字段的内容和结构,并得到第一质量,基于所述每个字段在所述树形结构中的位置,对所述第一质量进行修正,获取第二质量;
基于所述第二质量,确定所述M个字段中第二质量小于预设阈值的字段数目,并判断所述数目是否超过预设数目,
若是,设定所述M个字段对应的个体的突变概率为第一概率;
否则,基于所述第二质量,将所述M个字段进行排序,得到字段序列,并将所述字段序列输出稳定性判别模型中,输出所述M个字段对应的稳定性,并基于排序结果为所述稳定性设置对应的权值,得到所述M个字段的综合质量值,基于所述综合质量值,确定所述M个字段对应的个体的评估值;
判断所述评估值是否小于预设评估值;
若是,设定所述M个字段对应的个体的突变概率为第二概率;
否则,设定所述M个字段对应的个体的突变概率为第三概率。
在该实施例中,所述个体对应的元数据为目标数据。
在该实施例中,所述每个字段的第二质量与字段在所述树形结构中位置有关,所述位置与级别相关。
在该实施例中,所述排序结果靠前的对应的权值较大。
在该实施例中,所述第一概率小于第二概率,第二概率小于第三概率。
上述设计方案的有益效果是:通过根据所述个体的质量、稳定性来为所属个体设定突变的概率,保证了对突变的个体的质量、稳定性,提高突变的效率和有效性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种基于遗传算法的自动化特征构建方法,其特征在于,包括:
步骤1:对目标数据进行特征提取获取数据特征;
步骤2:将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群;
步骤3:基于所述遗传算法模型,对种群和个体进行自动化特征构建,并基于构建结果,输出若干个最优个体;其中,基于所述遗传算法模型,对种群和个体进行自动化特征构建包括:对所述个体进行突变,对所述种群进行交叉;对所述个体进行突变包括:
随机删除:从随机抽取若干所述个体组成的变量序列中随机删除若干变量;
随机增加:从个体的变量库中随机添加若干新变量至所述变量序列中;
点突变:从所述变量序列随机选择一个第一初始个体,并判断所述第一初始个体的特征类型;
若所述第一初始个体为离散型,则从离散编码算子集合中随机选择一个离散编码算子,对所述第一初始个体进行离散编码,输出第一目标个体;
若所述第一初始个体为连续型,则从连续编码算子集合中随机选择一个连续编码算子,对所述第一初始个体进行连续编码,输出第二目标个体;
二重突变:从所述变量序列中随机选择两个第二初始个体和第三初始个体,并判断所述第二初始个体和第三初始个体的特征类型;
若所述第二初始个体和第三初始个体为离散-连续类型,则从离散-连续编码算子集合中随机选取一个离散-连续编码算子,对所述第二初始个体和第三初始个体进行离散-连续编码,输出第三目标个体;
若所述第二初始个体和第三初始个体为连续-连续类型,则从二元编码算子集合中随机选取一个二元编码算子,对所述第二初始个体和第三初始个体进行二元编码,输出第四目标个体;
若所述第二初始个体和第三初始个体为离散-离散类型,则从离散-离散编码算子集合中随机选取一个离散-离散编码算子,对所述第二初始个体和第三初始个体进行离散-离散编码,输出第五目标个体。
2.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,步骤1中,对目标数据进行特征提取获取数据特征包括:
基于所述遗传算法结构模型的预设通用度,获取所述遗传算法结构模型读取的预设目标数据及其对应的第一特征值;
将所述目标数据集输入数据特征提取模型中,并输出所述目标数据对应的第二特征值;
基于所述第一特征值,对所述第二特征值进行识别,获取所述第一特征值和第二特征值之间的识别率,并判断所述识别率是否大于预设识别率;
若是,将所述第一特征值对应的数据特征,作为所述第二特征值对应目标数据的数据特征;
否则,调整所述预设通用度的取值,更新得到所述预设目标数据及其对应的第一特征值,将小于或等于预设识别率的第二特征值与更新后的第一特征值进行识别,并根据识别结果获取小于或等于预设识别率的第二特征值对应的数据特征。
3.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,步骤2中,将所述数据特征输入遗传算法结构模型中,生成包含有若干个体的种群包括:
将所述数据特征输入遗传算法结构模型中,获取所述数据特征的相关信息,所述相关信息包括数据来源、数据类型、数据连续或离散属性、数据字段;
基于所述相关信息,确定所述数据特征之间的关联度,并根据所述关联度将所述数据特征划分为多个类别;
以类别中对应的数据特征数目为编码位,利用随机分布生成法对对应的数据特征进行编码,得到种群,每个编码位对应的编码后的数据特征为所述种群包含的个体。
4.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,步骤3中,对种群和个体进行自动化特征构建之前还包括:对所述个体进行随机初始化,其过程如下:
随机抽取若干所述个体组成变量序列。
5.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,对所述种群进行交叉包括:
随机选取两个变量序列,并分别从所述两个变量序列中随机选取出两个个体变量,并对所述两个个体变量进行交叉对换,输出两个新的变量序列。
6.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,步骤3中,基于构建结果,输出若干个最优个体包括:
基于所述构建结果,获取新的种群,所述新的种群包含若干新的个体;
预先为所述遗传算法模型设定第一评估指标、第二评估指标,将所述新的种群输入所述遗传算法模型,得到若干新的个体在第一评估指标、第二评估指标下的评估结果;
基于所述评估结果,并根据如下公式计算所述新的种群的准确率:
其中,表示所述新的种群的准确率,/>表示既满足第一评估指标又满足第二评估指标的所述新的种群中新的个体的数量,/>表示既不满足第一评估指标又不满足第二评估指标的所述新的种群中新的个体的数量,/>表示只满足第一评估指标不满足第二评估指标的所述新的种群中新的个体的数量,/>表示只满足第二评估指标不满足第一评估指标的所述新的种群中新的个体的数量;
判断所述新的种群的准确率是否大于预设准确率;
若是,表明所述新的种群满足评估要求;
否则,对所述新的种群及其包含的新的个体再次进行自动化特征构建,直到获取的最新的种群的准确大于预设准确率;
基于所述评估结果,确定满足评估要求的新的种群中新的个体的适应度,对满足评估要求的新的种群中新的个体按照所述适应度进行排序,获得排序结果,并从所述排序结果中选择排序满足预设要求的新的个体,作为待选择个体集合;
根据如下公式计算选择所述待选择个体集合中每个待选择个体的被选择概率;
其中,表示所述待选择个体集合中第i个待选择个体的被选择概率,/>表示以自然常数e为底的指数,e=2.72,/>表示所述第i个待选择个体的适应度,n表示所述待选择个体集合中待选择个体的数量;
选择被选择概率大于预设概率的待选择个体作为最优个体并输出。
7.根据权利要求1所述的一种基于遗传算法的自动化特征构建方法,其特征在于,对所述个体进行突变过程中,包括:
获取所述个体对应的元数据,对所述元数据进行逻辑处理,划分为M个字段,并获取每个字段对应的数据长度和数据类型;
根据每个字段对应的数据长度确定所述每个字段所对应的级别,基于所述每个字段的级别确定所述每个字段与预设对照级别的映射关系,并基于所述映射关系构建所述M个字段的树形结构;
基于每个字段的数据类型为所述树形结构上每个字段对应位置上设置标识,基于所述标识,对所述树形结构进行遍历,确定所述每个字段的内容和结构,并得到第一质量,基于所述每个字段在所述树形结构中的位置,对所述第一质量进行修正,获取第二质量;
基于所述第二质量,确定所述M个字段中第二质量小于预设阈值的字段数目,并判断所述数目是否超过预设数目,
若是,设定所述M个字段对应的个体的突变概率为第一概率;
否则,基于所述第二质量,将所述M个字段进行排序,得到字段序列,并将所述字段序列输出稳定性判别模型中,输出所述M个字段对应的稳定性,并基于排序结果为所述稳定性设置对应的权值,得到所述M个字段的综合质量值,基于所述综合质量值,确定所述M个字段对应的个体的评估值;
判断所述评估值是否小于预设评估值;
若是,设定所述M个字段对应的个体的突变概率为第二概率;
否则,设定所述M个字段对应的个体的突变概率为第三概率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111039026.3A CN113779877B (zh) | 2021-09-06 | 2021-09-06 | 一种基于遗传算法的自动化特征构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111039026.3A CN113779877B (zh) | 2021-09-06 | 2021-09-06 | 一种基于遗传算法的自动化特征构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113779877A CN113779877A (zh) | 2021-12-10 |
CN113779877B true CN113779877B (zh) | 2024-03-29 |
Family
ID=78841276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111039026.3A Active CN113779877B (zh) | 2021-09-06 | 2021-09-06 | 一种基于遗传算法的自动化特征构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113779877B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013010974A2 (fr) * | 2011-07-20 | 2013-01-24 | European Aeronautic Defence And Space Company Eads France | Procede automatique base sur des modeles pour la generation d'architectures physiques de systemes et leur optimisation |
CN106779077A (zh) * | 2016-12-12 | 2017-05-31 | 深圳先进技术研究院 | 一种提高遗传算法的时间效率的方法及装置、用户设备 |
CN108107724A (zh) * | 2017-12-05 | 2018-06-01 | 燕山大学 | 基于遗传算法的模型预测控制参数在线优化方法 |
CN110245252A (zh) * | 2019-06-10 | 2019-09-17 | 中国矿业大学 | 基于遗传算法的机器学习模型自动生成方法 |
CN113222008A (zh) * | 2021-05-10 | 2021-08-06 | 南京航空航天大学 | 基于混合变异非支配排序遗传算法的超声速进气道流态识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657497B2 (en) * | 2006-11-07 | 2010-02-02 | Ebay Inc. | Online fraud prevention using genetic algorithm solution |
-
2021
- 2021-09-06 CN CN202111039026.3A patent/CN113779877B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013010974A2 (fr) * | 2011-07-20 | 2013-01-24 | European Aeronautic Defence And Space Company Eads France | Procede automatique base sur des modeles pour la generation d'architectures physiques de systemes et leur optimisation |
CN106779077A (zh) * | 2016-12-12 | 2017-05-31 | 深圳先进技术研究院 | 一种提高遗传算法的时间效率的方法及装置、用户设备 |
CN108107724A (zh) * | 2017-12-05 | 2018-06-01 | 燕山大学 | 基于遗传算法的模型预测控制参数在线优化方法 |
CN110245252A (zh) * | 2019-06-10 | 2019-09-17 | 中国矿业大学 | 基于遗传算法的机器学习模型自动生成方法 |
CN113222008A (zh) * | 2021-05-10 | 2021-08-06 | 南京航空航天大学 | 基于混合变异非支配排序遗传算法的超声速进气道流态识别方法 |
Non-Patent Citations (1)
Title |
---|
基于模糊遗传算法的数据库异常数据挖掘;向桢等;《控制工程》;20170531;第24卷(第5期);947-951 * |
Also Published As
Publication number | Publication date |
---|---|
CN113779877A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | An evolutionary multi-objective optimization framework of discretization-based feature selection for classification | |
CN111832101B (zh) | 一种水泥强度预测模型的构建方法及水泥强度预测方法 | |
CN109633748B (zh) | 一种基于改进遗传算法的地震属性优选方法 | |
CN112215278B (zh) | 一种遗传算法和蜻蜓算法相结合的多维数据特征选择方法 | |
CN109472346B (zh) | 考虑部分数据模糊和缺失的应急物资需求预测的方法 | |
CN112906890A (zh) | 一种基于互信息和改进遗传算法的用户属性特征选择方法 | |
CN108564117A (zh) | 一种基于svm的贫困生辅助认定方法 | |
CN114118369B (zh) | 一种基于群智能优化的图像分类卷积神经网络设计方法 | |
CN111832949A (zh) | 一种装备作战试验鉴定指标体系构建方法 | |
Cetin et al. | Multiple cut-off grade optimization by genetic algorithms and comparison with grid search method and dynamic programming | |
CN112735596A (zh) | 一种相似患者的确定方法、装置、电子设备及存储介质 | |
CN104966106A (zh) | 一种基于支持向量机的生物年龄分步预测方法 | |
CN114093426B (zh) | 基于基因调控网络构建的标志物筛选方法 | |
CN116340726A (zh) | 一种能源经济大数据清洗方法、系统、设备及存储介质 | |
CN114241267A (zh) | 基于结构熵采样的多目标架构搜索骨质疏松图像识别方法 | |
CN113779877B (zh) | 一种基于遗传算法的自动化特征构建方法 | |
CN108052796B (zh) | 基于集成学习的全球人类mtDNA发育树分类查询方法 | |
CN117077005A (zh) | 一种城市微更新潜力的优化方法和系统 | |
US8280641B1 (en) | Utility of genomic fractals resulting in fractals of organisms | |
CN115712836A (zh) | 一种交互式迭代建模方法 | |
CN115543803A (zh) | 基于改进遗传算法的软件测试用例智能生成方法及系统 | |
Crossingham et al. | Using genetic algorithms to optimise rough set partition sizes for HIV data analysis | |
CN110533186B (zh) | 众包定价体系的评估方法、装置、设备及可读存储介质 | |
Chen | Application of genome sequence based on entropy coding | |
CN114742173A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |