CN116956160A - 一种基于自适应树种算法的数据分类预测方法 - Google Patents
一种基于自适应树种算法的数据分类预测方法 Download PDFInfo
- Publication number
- CN116956160A CN116956160A CN202310960380.2A CN202310960380A CN116956160A CN 116956160 A CN116956160 A CN 116956160A CN 202310960380 A CN202310960380 A CN 202310960380A CN 116956160 A CN116956160 A CN 116956160A
- Authority
- CN
- China
- Prior art keywords
- tree
- data
- algorithm
- adaptive
- evolution
- 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
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 98
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000013528 artificial neural network Methods 0.000 claims abstract description 41
- 238000005457 optimization Methods 0.000 claims abstract description 22
- 238000012549 training Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000011156 evaluation Methods 0.000 claims abstract description 11
- 238000013508 migration Methods 0.000 claims abstract description 11
- 230000005012 migration Effects 0.000 claims abstract description 11
- 230000003044 adaptive effect Effects 0.000 claims description 29
- 230000006978 adaptation Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000007423 decrease Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 210000002569 neuron Anatomy 0.000 claims description 3
- 238000003062 neural network model Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 38
- 238000013461 design Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000011664 nicotinic acid Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
-
- 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/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明适用于数据优化算法技术领域,提供了一种基于自适应树种算法的数据分类预测方法,包括以下步骤:获取数据:获取历史数据并处理,收集待分类预测的数据并处理;模型初始化:自适应树种算法初始化,神经网络初始化;计算适应度:计算每棵树的适应度值;评估潜力:评估每棵树的潜力等级;生成种子:采用自适应的方式生成种子,潜力等级最低的树完成迁移;演化评价:计算种子的适应度值,完成种群演化;反馈迭代:重新评估树的潜力等级;构建模型并输出结果。本发明不仅解决了树种算法存在的易陷入局部最优、收敛速慢、种群多样性不足等问题,还提高了神经网络模型训练的性能和效率,从而提高数据分类预测模型的准确性和高效性。
Description
技术领域
本发明涉及数据优化算法技术领域,具体是涉及一种基于自适应树种算法的数据分类预测方法。
背景技术
数据分类预测是指利用机器学习和统计方法,通过对数据集进行分析和建模,预测新数据的类别或标签。随着大数据的崛起和机器学习技术的发展,数据分类预测在许多领域都有重要的应用,并取得了一系列显著的成果和进展。传统的建模方法如逻辑回归、决策树、随机森林、支持向量机和K近邻等在处理复杂非线性关系和大规模数据方面存在局限性。近年来,神经网络作为一种强大的模型广泛应用于金融数据分类预测领域,并取得显著成果。它具有高准确性、适应性、高容量性和非线性建模能力,能够捕捉到大量金融数据中存在的复杂关系,为分类预测提供更准确的结果,适用于多样化的应用场景。然而,神经网络的训练过程通常需要大量的数据和复杂的参数调整,训练过程复杂且容易陷入局部最优解。为此,智能优化算法如粒子群优化算法、树种算法和蚁群算法等被引入,用于改善模型性能和训练效率。这些算法能够优化参数选择、特征提取和模型集成,从而应对高维、非线性和大规模数据的挑战,基于智能优化算法的数据分类预测模型可以实现更准确且高效的训练和预测效果。
群智能优化算法通过模拟自然界中的群体智能行为,实现寻优目标,以全局搜索的方式寻找最优解或接近最优解。这类仿生算法利用群体中个体之间的协作交流,模拟生物和非生命系统的行为,提高问题解决的效率和质量。其中,树种算法(Tree SeedAlgorithm,简称TSA)是一种性能优秀的群智能优化算法,通过模拟树在生态系统中的种子散播和生长过程,解决最优化问题。然而,在处理高维复杂问题时,TSA容易陷入局部最优,难以找到全局最优解。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种基于自适应树种算法的数据分类预测方法,从算法演化方式的角度改进原算法,增强算法在高维复杂问题上的全局搜索能力,从而提高其在数据分类预测等领域的应用性能,以解决上述背景技术中存在的问题。
本发明是这样实现的,一种基于自适应树种算法的数据分类预测方法,所述方法包括以下步骤:
获取数据:获取历史数据并处理,收集待分类预测的数据并处理;
模型初始化:自适应树种算法初始化,神经网络初始化;
计算适应度:计算每棵树的适应度值;
评估潜力:评估每棵树的潜力等级;
生成种子:采用自适应的方式生成种子,潜力等级最低的树完成迁移;
演化评价:计算种子的适应度值,完成种群演化;
反馈迭代:重新评估树的潜力等级,重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件;
构建模型:在满足终止条件后,输出最优解;构建分类预测优化模型;
输出结果:输入已处理的待分类预测数据,输出分类预测结果。
作为本发明进一步的方案:所述获取数据的步骤,具体包括:
收集所需的历史数据;
将数据归一化处理并分类;
将处理后的数据作为神经网络的训练样本;
收集待分类预测的数据,将待分类预测的数据进行归一化处理并分类。
作为本发明进一步的方案:所述模型初始化的步骤,具体包括:
参数初始化,具体包括树种群数N,最大迭代次数max_iteration,每棵树种子个数ns,问题维度D,搜索空间[Ld,Hd],搜索趋势参数ST,未有效进化次数counti;
种群初始化,具体为:采用公式(1)初始化N棵树的位置,将每一棵树的位置映射到设定的搜索范围内;
Ti,d=Ld+randi,d×(Hd-Ld) (1)
其中,randi,d为[0,1]之间的随机数,Hd为搜索空间第d维度的上界,Ld为搜索空间第d维度的下界;
确定神经网络的结构,具体为:确定神经网络的层数、每层的神经元数量以及激活函数;
随机初始化神经网络的权重和偏置。
作为本发明进一步的方案:所述计算适应度的步骤,具体包括:计算每棵树的其对应参数配置下的目标函数值fi,目标函数值fi即为适应度值。
作为本发明进一步的方案:所述评估潜力的步骤,具体包括:将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级,K为定值,取值范围为0至100。
作为本发明进一步的方案:所述生成种子的步骤,具体包括:
潜力等级为A的树根据公式(2)和(3)计算其种子的位置:
Sj,d=Ti,d+αj,d×(Tbest,d-Ti,d),randi,d≤ST (2)
Sj,d=Ti,d+αj,d×(Tr,d-Ti,d),randi,d>ST (3)
其中,Sj,d为第j个种子第d个维度上的位置,αj,d为[0,1]之间的随机数,Ti,d为当前第i棵树在第d个维度上的位置,Tbest,d为当前种群中适应度值最优的树,Tr,d为种群中随机选择的一棵树,randi,d为[0,1]之间的随机数;
潜力等级为B的树根据公式(4)计算其种子的位置:
Sj,d=Tr,d+αj,d×(Tr,d-Ti,d) (4)
其中,Tr,d为种群中随机选择的一棵树,αj,d为[0,1]之间的随机数;
潜力等级为C的树根据公式(5)计算其迁移位置:
Ti,d=Tr,d+βt,d×(Tbest,d-Tr,d) (5)
其中,Tr,d为种群中随机选择的一棵树,Tbest,d为当前种群中适应度值最优的树,βj,d为演化计算系数,根据公式(6)和(7)计算:
βj,d=k×sin(a×π×rand) (7)
其中,kt为一个随着迭代次数递增而线性递减的变量,a为取值为2的常数,iteration为当前迭代次数,max_iteration为最大迭代次数。
作为本发明进一步的方案:所述演化评价的步骤,具体包括:
计算种子适应度值,具体为:计算每棵树所属所有种子的目标函数值fitij,其中i表示第i棵树,j表示第j个种子;
基于贪婪策略完成种群演化,具体为:挑选一棵树中适应度值最优的种子作为候选种子,如果候选种子的适应度值优于当前树,则取代当前树的位置,长成新树,并重置该树的未有效进化次数;否则,保留当前树的位置,并且增加一次该树的未有效进化次数。
作为本发明进一步的方案:所述反馈迭代的步骤,具体包括:
重新评估树的潜力等级,具体为,根据演化后新树的适应度值和未有效进化次数重新评估其潜力等级,将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级;
基于反馈信息重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件,达到最大迭代次数或目标函数值收敛,所述反馈信息为新树的适应度值和未有效进化次数。
作为本发明进一步的方案:所述构建模型的步骤,具体包括:
在满足终止条件后,输出自适应树种算法的最优解;
将最优解作为神经网络的优化参数,构建数据分类预测模型。
作为本发明进一步的方案:所述输出结果的步骤,具体包括:
输入已处理的待分类预测数据,具体为:将已处理的待分类预测数据输入到训练好的分类预测模型中,确保输入数据的格式与模型所需的输入格式相匹配;
输出分类预测结果,具体为:对于二分类问题,模型会输出一个表示样本属于某个类别的概率或预测标签;对于多类别问题,模型会输出每个类别的概率或预测标签。
与现有技术相比,本发明的有益效果是:
自适应性:自适应树种算法具有自适应调整的能力,在搜索过程中可以根据问题的特性和适应度变化调整搜索策略,能够应对复杂的优化问题和目标函数,具有高效的搜索效率和收敛速度。这使得基于自适应树种算法的神经网络模型能够更好地避免陷入局部最优解,增强模型的泛化能力,从而获得更好的训练效果,提高分类准确率。
鲁棒性:群智能优化算法对输入数据的噪声和不确定性具有较好的鲁棒性。这意味着即使在存在一定程度的数据噪声或不完整性的情况下,自适应树种算法仍能帮助神经网络找到较好的参数设置。
并行性:自适应树种算法通过并行化处理利用多个计算资源同时进行搜索和优化,这可以加快训练过程,尤其适用于复杂的神经网络结构和大规模数据集。
应用性:自适应树种算法不需要依赖梯度信息,因此对于非光滑、非凸或非线性的问题具有更广泛的适应性,这使得基于自适应树种算法构建的神经网络模型可以应用于更多类型的数据分类预测问题。
简便性:自适应树种算法的原理相对简单,易于实现和理解,不需要过多的参数调整和领域专业知识。基于自适应树种算法的数据分类预测方法简便性较高,降低了使用算法的门槛,使更多的人能够轻松理解和应用算法,而无需深入研究复杂的数学理论或专业知识。
附图说明
图1为自适应树种算法的流程图。
图2为自适应树种子算法与其他群智能优化算法基于CEC2017标准函数测试集的收敛曲线对比图。
图3为神经网络的结构示意图。
图4为一种基于自适应树种算法的悬臂梁设计参数优化方法中悬臂梁的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清晰,以下结合附图及具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提供了一种基于自适应树种算法的数据分类预测方法,所述方法包括以下步骤:
步骤一,获取数据:获取历史数据并处理,收集待分类预测的数据并处理;
步骤二,模型初始化:自适应树种算法初始化,神经网络初始化;
步骤三,计算适应度:计算每棵树的适应度值;
步骤四,评估潜力:评估每棵树的潜力等级;
步骤五,生成种子:采用自适应的方式生成种子,潜力等级最低的树完成迁移;
步骤六,演化评价:计算种子的适应度值,完成种群演化;
步骤七,反馈迭代:重新评估树的潜力等级,重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件;
步骤八,构建模型:在满足终止条件后,输出最优解;构建分类预测优化模型;
步骤九,输出结果:输入已处理的待分类预测数据,输出分类预测结果。
本发明实施例中,所述步骤一的步骤,具体包括:
步骤1.1,收集所需的历史数据;
步骤1.2,将数据归一化处理并分类;
步骤1.3,将处理后的数据作为神经网络的训练样本;
步骤1.4,收集待分类预测的数据,将待分类预测的数据进行归一化处理并分类。
本发明实施例中,所述步骤二的步骤,具体包括:
步骤2.1,参数初始化,具体包括树种群数N,最大迭代次数max_iteration,每棵树种子个数ns,问题维度D,搜索空间[Ld,Hd],搜索趋势参数ST,未有效进化次数counti;
步骤2.2,种群初始化,具体为:采用公式(1)初始化N棵树的位置,将每一棵树的位置映射到设定的搜索范围内;
Ti,d=Ld+randi,d×(Hd-Ld) (1)
其中,randi,d为[0,1]之间的随机数,Hd为搜索空间第d维度的上界,Ld为搜索空间第d维度的下界;
步骤2.3,确定神经网络的结构,具体为:确定神经网络的层数、每层的神经元数量以及激活函数;
步骤2.4,随机初始化神经网络的权重和偏置。
本发明实施例中,所述步骤三的步骤,具体包括:计算每棵树的其对应参数配置下的目标函数值fi,目标函数值fi即为适应度值。
本发明实施例中,所述步骤四的步骤,具体包括:将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级,K为定值。
本发明实施例中,所述步骤五的步骤,具体包括:
步骤5.1,潜力等级为A的树根据公式(2)和(3)计算其种子的位置:
Sj,d=Ti,d+αj,d×(Tbest,d-Ti,d),randi,d≤ST (2)
Sj,d=Ti,d+αj,d×(Tr,d-Ti,d),randi,d>ST (3)
其中,Sj,d为第j个种子第d个维度上的位置,αj,d为[0,1]之间的随机数,Ti,d为当前第i棵树在第d个维度上的位置,Tbest,d为当前种群中适应度值最优的树,Tr,d为种群中随机选择的一棵树,randi,d为[0,1]之间的随机数;
步骤5.2,潜力等级为B的树根据公式(4)计算其种子的位置:
Sj,d=Tr,d+αj,d×(Tr,d-Ti,d) (4)
其中,Tr,d为种群中随机选择的一棵树,αj,d为[0,1]之间的随机数;
步骤5.3,潜力等级为C的树根据公式(5)计算其迁移位置:
Ti,d=Tr,d+βt,d×(tbest,d-Tr,d) (5)
其中,Tr,d为种群中随机选择的一棵树,Tbest,d为当前种群中适应度值最优的树,βj,d为演化计算系数,根据公式(6)和(7)计算:
βj,d=k×sin(a×π×rand) (7)
其中,kt为一个随着迭代次数递增而线性递减的变量,a为取值为2的常数,iteration为当前迭代次数,max_iteration为最大迭代次数。
本发明实施例中,所述步骤六的步骤,具体包括:
步骤6.1,计算种子适应度值,具体为:计算每棵树所属所有种子的目标函数值fitij,其中i表示第i棵树,j表示第j个种子;
步骤6.2,基于贪婪策略完成种群演化,具体为:挑选一棵树中适应度值最优的种子作为候选种子,如果候选种子的适应度值优于当前树,则取代当前树的位置,长成新树,并重置该树的未有效进化次数;否则,保留当前树的位置,并且增加一次该树的未有效进化次数。
本发明实施例中,所述步骤七的步骤,具体包括:
步骤7.1,重新评估树的潜力等级,具体为,根据演化后新树的适应度值和未有效进化次数重新评估其潜力等级,将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级,K为定值,取值范围为0至100,例如K%=20%;
步骤7.2,基于反馈信息重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件,达到最大迭代次数或目标函数值收敛,所述反馈信息为新树的适应度值和未有效进化次数。
本发明实施例中,所述步骤八的步骤,具体包括:
步骤8.1,在满足终止条件后,输出自适应树种算法的最优解;
步骤8.2,将最优解作为神经网络的优化参数,构建数据分类预测模型。
本发明实施例中,所述步骤九的步骤,具体包括:
步骤9.1,输入已处理的待分类预测数据,具体为:将已处理的待分类预测数据输入到训练好的分类预测模型中,确保输入数据的格式与模型所需的输入格式相匹配;
步骤9.2,输出分类预测结果,具体为:对于二分类问题,模型会输出一个表示样本属于某个类别的概率或预测标签,可以使用一个阈值来将概率转换为二进制分类标签,即如果概率大于等于阈值,则将其预测为正类,否则预测为负类;对于多类别问题,模型会输出每个类别的概率或预测标签。可以选择概率最高的类别作为最终的分类预测结果,即选取具有最高概率的类别作为预测结果,表示样本属于该类别。
需要注明的是,上述公式中提到的“随机”均为在每一次操作时重新随机选择,因此,即使是相同的变量表示形式,名称中含有“随机”的变量的值并不相同。
如图2所示,本发明实施例中自适应树种子算法与其他群智能优化算法基于CEC2017标准函数测试集的收敛曲线对比情况,本发明实施例的收敛效果明显更好,本发明实施例中的改进后的树种算法命名为自适应树种算法(Adaptive Tree Seed Algorithm,简称ATSA),在高维复杂问题中具有突出的性能,这取决于算法独特的演化机制:
一是算法基于双层框架结构,重构了树种算法的演化结构和种群关系,丰富细化了树和种子在演化中的作用。算法分为上层管理层和下层执行层,在管理层中,主要的成员为演化成功的树,它们各自控制着自身产生的种子,决定着下一代种子生成的位置;在执行层中,主要成员为种子和被淘汰的树,种子的生成位置受控于树的位置,但又具有一定的随机性,这样的设计使得算法能够更好地平衡全局搜索能力和局部搜索能力。
二是算法设计了基于反馈评估信息的进化分类器。分类器根据子代的适应度值排名和种群演化效率等指标,将所有的树分成A、B、C三个等级,不同等级的树在下一次迭代时会自动选择最优的演化策略。进化分类器的设计强化了群体信息的反馈效应,下层执行层的搜索结果能够及时地反馈给上层管理层,从而使得算法能够及时调整演化策略,快速适应搜索空间,调整演化策略,同时,多种演化策略的设计能够极大地增强种群的多样性,避免算法陷入局部最优。
三是算法构建了迁移机制提高算法的全局寻优能力。当种群中出现异常个体时会触发算法的迁移机制,将异常树迁移至更有潜力的区域并重新开始搜索过程,从而削弱劣质解对于算法搜索效率的不良影响。异常个体的具体表现为适应度值较差且连续多代无法生成更优子代。由于异常树生成的种子往往性能较差,无法通过贪婪机制取代原来的树,导致异常树深陷于某个局部最优解附近,阻碍了算法正常的搜索过程,通过迁移机制能够解决这个问题,提高算法的全局寻优能力。
需要强调的是,自适应树种算法的三个创新点是一个整体,双层框架构架了算法的基本演化逻辑,进化分类器使得算法能够根据反馈信息自适应地选择最合适的搜索策略,迁移机制进一步丰富了算法的演化方式,弥补了原算法的不足,不同机制之间的协作使得算法能够更好地平衡局部搜索能力和全局搜索能力,从而获得更好的性能表现。
以下结合具体实施例对本发明的具体实现进行详细描述。
实施例一:如图1和图3所示,为本发明实施例中,提供的一种基于自适应树种算法的数据分类预测方法,包括如下步骤:
步骤一:获取历史数据,将所获数据进行归一化处理并分类,其中分类的属性包括数据属性和类别属性;
例如,以金融信贷风险分类预测数据为例,单个样本属性分为数据属性和类别属性,数据属性有X1,X2,...,Xn-1个金融指标,如个人基本信息、信用历史、收入和就业状况、债务负担、资产状况等;类别属性为Xn,即贷款风险等级,若为低风险标签为1,中风险标签为2,高风险标签为3;
步骤二:初始化神经网络和自适应树种算法的参数,具体包括:
神经网络由输入层、隐藏层和输出层组成,其中输入层包含n个节点,隐藏层包含m个节点,输出层包含k个节点,所有节点对应的权重参数W={w1,w2,...,wp},偏置参数B={β1,β2,...,βq};
树种算法的种群数N,最大迭代次数max_iteration,每棵树种子个数ns,问题维度D,搜索空间[Ld,Hd],搜索趋势参数ST,未有效进化次数counti;
步骤三:将所述归一化处理后的历史数据中的部分数据作为神经网络的训练样本,使用自适应树种算法产生一组解;
步骤四:将该组解输入神经网络,作为神经网络权重参数和偏置参数的初始值,计算在此组参数下神经网络的交叉熵损失函数值;
步骤五:利用自适应树种算法最小化交叉熵损失函数值并产生一组更优的解;
步骤六:重复步骤四至步骤五,直到满足神经网络训练的终止条件(例如达到最大迭代次数或目标函数值收敛);
步骤七:输出种群中最优树的位置,得到最优的神经网络训练参数;
步骤八:根据自适应树种算法优化后的神经网络训练参数,构建分类预测模型;
步骤九:获取待测数据,并所述待测数据作为待测样本导入所述预测模型中,得到所述待测数据的分类预测值。
实施例二:一种基于自适应树种算法的多层感知机(MLP)的训练过程,包括如下步骤:
步骤一:将训练数据集归一化处理并分类,其中分类的属性包括特征属性和类别属性;
例如,以鸢尾花数据集(Iris dataset)为例,特征属性为X1,X2,...,Xn-1,包括萼片长度(sepal length)、萼片宽度(sepal width)、花瓣长度(petal length)和花瓣宽度(petal width);类别属性为Xn,若为Setosa品种标签为1,若为Versicolor品种标签为2,若为Virginica品种标签为3;
步骤二:初始化神经网络和自适应树种算法的参数,具体包括:
神经网络由输入层、隐藏层和输出层组成,其中输入层包含n个节点,隐藏层包含m个节点,输出层包含k个节点,所有节点对应的权重参数W={w1,w2,...,wp},偏置参数B={β1,β2,...,βq};
树种算法的种群数N,最大迭代次数max_iteration,每棵树种子个数ns,问题维度D,搜索空间[Ld,Hd],搜索趋势参数ST,未有效进化次数counti;
步骤三:将处理后数据集中的部分数据作为多层感知机的训练样本,使用自适应树种算法产生一组解;
步骤四:将该组解输入神经网络,作为神经网络权重参数和偏置参数的初始值,计算在此组参数下多层感知机的交叉熵损失函数值;
步骤五:利用自适应树种算法最小化交叉熵损失函数值并产生一组更优的解;
步骤六:重复步骤四至步骤五,直到满足训练的终止条件(例如达到最大迭代次数或目标函数值收敛);
步骤七:输出种群中最优树的位置,得到最优的多层感知机的训练参数。
下面是使用ATSA训练的MLP结果及与其他算法效果的对比数据表:
表1
实施例三:如图4所示,一种基于自适应树种算法的悬臂梁设计参数优化方法,包括如下步骤:
步骤1:通过现场测试或实验获得工程实例的设计数据;
步骤2:建立下式所示的优化问题目标函数,确定待辨识的参数,
Consider X=[x1,x2,x3,x4,x5]
Minimize f(X)=0.0624(x1+x2+x3+x4+x5),
悬臂梁由5个厚度恒定(t=2/3)的中空方形(Si)组成,其中,x为五个正方体的高度,即待优化的决策变量;
步骤三:输入实验数据以及各待辨识参数的取值范围,用于构建基于自适应树种算法的参数优化模型;
步骤四:设置自适应树种算法的运行参数,包括树群规模N、最大迭代次数max_iteration和算法终止规则。算法终止规则可设置为:算法运行次数达到最大迭代次数max_iteration;
步骤五:运行自适应树种算法对悬臂梁的正方形高度五个未知参数进行辨识,通过最小化目标函数,获得未知参数的估计值;
需要说明的是,交叉熵损失函数(Cross-Entropy Loss Function)是一种常用于分类问题的损失函数。在机器学习和深度学习中,我们通常使用交叉熵损失函数作为目标函数,用于衡量预测结果与实际结果之间的差异。具体来说,如果我们有一个分类任务,需要将输入数据分为多个不同的类别,交叉熵损失函数可以衡量模型的预测结果与实际类别之间的差异。它基于预测概率分布和实际类别的one-hot编码之间的交叉熵计算。对于每个样本,交叉熵损失函数的计算公式如下:L=-∑(y*log(p)),其中:L是损失函数的值,y是实际类别的one-hot编码向量,p是模型的预测概率分布。
对于多类别分类问题,我们将样本的交叉熵损失函数值求平均作为整体的损失函数,以最小化该损失函数来训练模型,从而提高模型对输入数据的分类准确性。交叉熵损失函数用于衡量分类模型预测结果与实际结果之间的差异,特别适用于多类别分类任务。
神经网络除了多层感知机(MLP),还可以选择其他种类的神经网络,例如卷积神经网络、深度神经网络等,只要是可以通过优化参数提高性能且具有分类预测能力的省级网络即可。
神经网络的损失函数除了交叉熵函数,还可以选择其他函数,例如均方误差函数、对数损失等,只要是用于衡量模型预测结果与实际标签之间的差异的函数即可。
以上仅对本发明的较佳实施例进行了详细叙述,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
本领域技术人员在考虑说明书及实施例处的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (10)
1.一种基于自适应树种算法的数据分类预测方法,其特征在于,所述方法包括以下步骤:
获取数据:获取历史数据并处理,收集待分类预测的数据并处理;
模型初始化:自适应树种算法初始化,神经网络初始化;
计算适应度:计算每棵树的适应度值;
评估潜力:评估每棵树的潜力等级;
生成种子:采用自适应的方式生成种子,潜力等级最低的树完成迁移;
演化评价:计算种子的适应度值,完成种群演化;
反馈迭代:重新评估树的潜力等级,重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件;
构建模型:在满足终止条件后,输出最优解;构建分类预测优化模型;
输出结果:输入已处理的待分类预测数据,输出分类预测结果。
2.根据权利要求1所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述获取数据的步骤,具体包括:
收集所需的历史数据;
将数据归一化处理并分类;
将处理后的数据作为神经网络的训练样本;
收集待分类预测的数据,将待分类预测的数据进行归一化处理并分类。
3.根据权利要求1所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述模型初始化的步骤,具体包括:
参数初始化,具体包括树种群数N,最大迭代次数max_iteration,每棵树种子个数ns,问题维度D,搜索空间[Ld,Hd],搜索趋势参数ST,未有效进化次数counti;
种群初始化,具体为:采用公式(1)初始化N棵树的位置,将每一棵树的位置映射到设定的搜索范围内;
Ti,d=Ld+randi,d×(Hd-Ld) (1)
其中,randi,d为[0,1]之间的随机数,Hd为搜索空间第d维度的上界,Ld为搜索空间第d维度的下界;
确定神经网络的结构,具体为:确定神经网络的层数、每层的神经元数量以及激活函数;
随机初始化神经网络的权重和偏置。
4.根据权利要求3所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述计算适应度的步骤,具体包括:计算每棵树的其对应参数配置下的目标函数值fi,目标函数值fi即为适应度值。
5.根据权利要求4所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述评估潜力的步骤,具体包括:将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级,K为定值。
6.根据权利要求5所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述生成种子的步骤,具体包括:
潜力等级为A的树根据公式(2)和(3)计算其种子的位置:
Sj,d=Ti,d+αj,d×(Tbest,d-Ti,d),randi,d≤ST (2)
Sj,d=Ti,d+αj,d×(Tr,d-Ti,d),randi,d>ST (3)
其中,Sj,d为第j个种子第d个维度上的位置,αj,d为[0,1]之间的随机数,Ti,d为当前第i棵树在第d个维度上的位置,Tbest,d为当前种群中适应度值最优的树,Tr,d为种群中随机选择的一棵树,randi,d为[0,1]之间的随机数;
潜力等级为B的树根据公式(4)计算其种子的位置:
Sj,d=Tr,d+αj,d×(Tr,d-Ti,d) (4)
其中,Tr,d为种群中随机选择的一棵树,αj,d为[0,1]之间的随机数;
潜力等级为C的树根据公式(5)计算其迁移位置:
Ti,d=Tr,d+βt,d×(Tbest,d-Tr,d) (5)
其中,Tr,d为种群中随机选择的一棵树,Tbest,d为当前种群中适应度值最优的树,βj,d为演化计算系数,根据公式(6)和(7)计算:
βj,d=k×sin(a×π×rand) (7)
其中,kt为一个随着迭代次数递增而线性递减的变量,a为取值为2的常数,iteration为当前迭代次数,max_iteration为最大迭代次数。
7.根据权利要求6所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述演化评价的步骤,具体包括:
计算种子适应度值,具体为:计算每棵树所属所有种子的目标函数值fitij,其中i表示第i棵树,j表示第j个种子;
基于贪婪策略完成种群演化,具体为:挑选一棵树中适应度值最优的种子作为候选种子,如果候选种子的适应度值优于当前树,则取代当前树的位置,长成新树,并重置该树的未有效进化次数;否则,保留当前树的位置,并且增加一次该树的未有效进化次数。
8.根据权利要求7所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述反馈迭代的步骤,具体包括:
重新评估树的潜力等级,具体为,根据演化后新树的适应度值和未有效进化次数重新评估其潜力等级,将每棵树的适应度值fi由优到差排序后,排名前K%的树评为A级,未排入前K%且未有效进化次数超过阈值的树评为C级,其余的树评为B级;
基于反馈信息重复所述计算适应度、评估潜力、生成种子以及演化评价中的步骤,直到满足终止条件,达到最大迭代次数或目标函数值收敛,所述反馈信息为新树的适应度值和未有效进化次数。
9.根据权利要求1所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述构建模型的步骤,具体包括:
在满足终止条件后,输出自适应树种算法的最优解;
将最优解作为神经网络的优化参数,构建数据分类预测模型。
10.根据权利要求1所述的基于自适应树种算法的数据分类预测方法,其特征在于,所述输出结果的步骤,具体包括:
输入已处理的待分类预测数据,具体为:将已处理的待分类预测数据输入到训练好的分类预测模型中,确保输入数据的格式与模型所需的输入格式相匹配;
输出分类预测结果,具体为:对于二分类问题,模型会输出一个表示样本属于某个类别的概率或预测标签;对于多类别问题,模型会输出每个类别的概率或预测标签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310960380.2A CN116956160A (zh) | 2023-08-01 | 2023-08-01 | 一种基于自适应树种算法的数据分类预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310960380.2A CN116956160A (zh) | 2023-08-01 | 2023-08-01 | 一种基于自适应树种算法的数据分类预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116956160A true CN116956160A (zh) | 2023-10-27 |
Family
ID=88456476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310960380.2A Pending CN116956160A (zh) | 2023-08-01 | 2023-08-01 | 一种基于自适应树种算法的数据分类预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116956160A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117236234A (zh) * | 2023-11-10 | 2023-12-15 | 苏州培风图南半导体有限公司 | 半导体器件模拟中迭代步数预测方法及装置 |
-
2023
- 2023-08-01 CN CN202310960380.2A patent/CN116956160A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117236234A (zh) * | 2023-11-10 | 2023-12-15 | 苏州培风图南半导体有限公司 | 半导体器件模拟中迭代步数预测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108734355B (zh) | 一种应用于电能质量综合治理场景的短期电力负荷并行预测方法及系统 | |
Kulkarni et al. | Random forest classifiers: a survey and future research directions | |
Chang et al. | Trend discovery in financial time series data using a case based fuzzy decision tree | |
CN112581263A (zh) | 一种基于灰狼算法优化广义回归神经网络的信用评估方法 | |
CN111242302A (zh) | 一种智能参数优化模块的XGBoost预测方法 | |
CN110782658A (zh) | 一种基于LightGBM算法的交通量预测方法 | |
CN112529683A (zh) | 一种基于cs-pnn的客户信贷风险的评估方法及系统 | |
CN116956160A (zh) | 一种基于自适应树种算法的数据分类预测方法 | |
CN115293400A (zh) | 一种电力系统负荷预测方法及系统 | |
CN116542382A (zh) | 基于混合优化算法的污水处理溶解氧浓度预测方法 | |
CN113282747B (zh) | 一种基于自动机器学习算法选择的文本分类方法 | |
Yang | Combination forecast of economic chaos based on improved genetic algorithm | |
Johansson | Obtaining accurate and comprehensible data mining models: An evolutionary approach | |
CN112001436A (zh) | 一种基于改进的极限学习机的水质分类方法 | |
KR20220014744A (ko) | 강화 학습을 기반으로 한 데이터 전처리 시스템 및 방법 | |
CN112200208B (zh) | 基于多维度特征融合的云工作流任务执行时间预测方法 | |
CN115049006A (zh) | 基于自适应前馈神经网络的通信信号识别方法和系统 | |
Liu et al. | Short-Term Power Load Forecasting via Recurrent Neural Network with Similar Day Selection | |
CN113762591A (zh) | 一种基于gru和多核svm对抗学习的短期电量预测方法及系统 | |
CN113128659A (zh) | 神经网络定点化方法、装置、电子设备及可读存储介质 | |
CN117668701B (zh) | Ai人工智能机器学习系统及方法 | |
CN112161621B (zh) | 一种无模型辅助导航适配区域选取方法 | |
Qiao et al. | Hierarchical accounting variables forecasting by deep learning methods | |
Mu et al. | Auto-CASH: Autonomous Classification Algorithm Selection with Deep Q-Network | |
de Oca et al. | Model family selection for classification using Neural Decision Trees |
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 |