本发明涉及神经网络分类领域,具体涉及一种基于小样本数据的模糊超盒神经网络分类方法。
背景技术:
1、小样本数据分类是数据集中样本数量相对较少的情况下的分类任务。在机器学习和深度学习中,通常需要大量的数据来训练模型,使得模型能够学习到足够的特征和规律,从而进行准确的分类。然而在实际应用中,容易存在样本数量有限的情况,导致模型训练后无法达到可应用的精度,这时需要采用小样本学习的方法来解决分类问题;模糊超盒神经网络是一种有效的解决样本分类问题的算法,该算法使用超盒模糊集在其网络结构中进行创建和存储知识,并可以使用较少的数据训练模型,降低了与数据收集和标记相关的高成本,具有较好的在线学习能力和分类性能,但传统的模糊超盒神经网络分类性能受数据集中数据输入顺序的影响,会影响后续生成的超盒模糊集,若训练数据集采用了不合适的输入顺序,则生成的超盒模糊集在测试过程中分类结果会有较大误差。
技术实现思路
1、本发明的目的是为克服上述的技术缺点和不足,提供了一种基于小样本数据的模糊超盒神经网络分类方法,该方法改进了超盒构造受输入顺序影响的问题,具有在线学习能力,无需对早期和新数据重新训练,并且可以在小样本条件下实现较好的分类性能。本发明采用的技术方案如下:
2、本发明的一种基于小样本数据的模糊超盒神经网络分类方法,包括以下步骤:
3、第1步、数据预处理,对输入数据集进行归一化处理,确保所有特征值被缩放到统一的数值范围内,为后续的超盒构造提供标准化的基础;
4、第2步、数据集分割,将处理后的输入数据集分割为训练数据集和测试数据集;
5、第3步、超盒构造,以训练数据集里的数据为基础初始化超盒,生成初始超盒模糊集;
6、第3.1步、输入训练数据集中的全部数据,根据下面公式计算每个类别所有数据的密度,其中ρx为每个数据的密度,dxy为每个数据与同类别其他数据的欧氏距离,x是输入的训练样本,y为其他同类数据,n为维度,dc为当前数据的邻域半径,为二值运算;
7、;
8、;
9、第3.2步、根据第3.1步计算的所有数据的密度,选择每个类别数据密度最大的点为中心,设定边长参数初始化超盒,根据下面公式生成初始超盒,其中是用户自定义的边长参数,由于第2步中对数据进行了归一化操作,因此其范围是[0,1];x是输入的训练样本,vmin是超盒的最小点,vmax是超盒的最大点;
10、;
11、第3.3步、判断初始超盒模糊集是否覆盖所有训练数据,若当前超盒模糊集中存在未被覆盖的数据,则从未被覆盖的数据中继续选择每个类别数据的密度最大点生成新的超盒,直至超盒模糊集覆盖所有数据;
12、第4步、超盒调整,对生成的初始超盒模糊集执行重叠检测和收缩两步操作,重叠检测操作是识别并标记出超盒间的重叠区域,收缩操作是调整超盒边界以减少重叠,获得最终的超盒模糊集;
13、第5步、模型测试,根据训练过程生成的最终超盒模糊集使用测试数据集进行测试,计算分类结果并输出。
14、优选的,第1步的数据预处理,对输入数据集进行归一化处理,确保所有特征值被缩放到统一的数值范围内,为后续的超盒构造提供标准化的基础,具体步骤如下:
15、第1.1步、确定归一化的范围,将数据集中的所有数据范围界定在[0,1]之间;
16、第1.2步、对于需要进行归一化的数据,找到最大值和最小值;
17、第1.3步、根据最小-最大归一化公式计算归一化的数据,其中i表示第i个数据,xmin表示该数据在数据集中的最小值,xmax表示该数据在数据集中的最大值。
18、优选的,第2步的数据集分割,将处理后的输入数据集分割为训练数据集和测试数据集,具体步骤如下:
19、第2.1步、设定训练数据集和测试数据集的比例,从预处理后的数据集中随机抽取相应的数据构成训练数据集和测试数据集。
20、优选的,第4步的超盒调整,对生成的初始超盒模糊集执行重叠检测和收缩两步操作,重叠检测操作是识别并标记出超盒间的重叠区域,收缩操作是调整超盒边界以减少重叠,获得最终的超盒模糊集,具体步骤如下:
21、第4.1步、判断初始超盒模糊集中不同类别的超盒之间是否存在重叠情况,根据以下四种重叠情况判断,其中vji和wji分别是第j个超盒在维度i上的最小点和最大点,vki和wki分别是第k个超盒在维度i上的最小点和最大点;
22、重叠情况1:;
23、重叠情况2:;
24、重叠情况3:;
25、重叠情况4:;
26、第4.2步、若在第4.1步检测到不同类别的超盒之间存在重叠情况,则执行收缩操作来消除重叠区域;其中△表示收缩维度,vj△和wj△分别是第j个超盒在维度△上的最小点和最大点,和分别表示收缩操作前后的值;vk△和wk△分别是第k个超盒在维度△上的最小点和最大点,和分别表示收缩操作前后的值;
27、收缩规则1:,则;
28、收缩规则2:,则;
29、收缩规则3:,
30、如果,则;
31、反之;
32、收缩规则4:,
33、如果,则;
34、反之;
35、第4.3步、判断处理后的超盒模糊集是否仍存在重叠情况,若存在重叠的超盒,重复上述步骤,若不存在则输出最终的超盒模糊集。
36、优选的,第5步的模型测试,根据训练过程生成的最终超盒模糊集使用测试数据集进行测试,计算分类结果并输出,具体步骤如下:
37、第5.1步、根据下面公式计算测试数据与训练生成的超盒模糊集中每个超盒的隶属度函数值;其中bj为第j个超盒,是第h个输入样本,bj(ah)为第j个超盒与输入样本的隶属度函数值,ahi为第h个输入样本的第i个值,vji和wji是第j个超盒在维度i上的最小点和最大点,γ是一个灵敏度参数,当ah与第j个超盒之间的距离增加时隶属度函数减小,其值的范围在0到1之间,由用户自定义;
38、;
39、第5.2步、比较第5.1步计算得到的隶属度函数值,根据隶属度最高的超盒确定数据的类别归属;
40、第5.3步、根据测试数据集输出最终的分类结果。
41、本发明的优点及技术效果在于:
42、本发明提出了一种基于小样本数据的模糊超盒神经网络分类方法,该方法改进了传统超盒的构造方法,保留传统模糊超盒神经网络优点的同时,克服了分类性能受样本输入顺序影响的问题,可以根据数据的分布特征自适应地调整超盒,并且具有可解释性;该方法特别适用于小样本数据场景,能够在有限的数据量下进行有效的学习和分类,克服了传统方法在小样本情况下容易过拟合或分类效果不佳的问题。
1.一种基于小样本数据的模糊超盒神经网络分类方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于小样本数据的模糊超盒神经网络分类方法,其特征在于:所述第1步的数据预处理,对输入数据集进行归一化处理,确保所有特征值被缩放到统一的数值范围内,为后续的超盒构造提供标准化的基础,具体步骤如下:
3.根据权利要求1所述的基于小样本数据的模糊超盒神经网络分类方法,其特征在于:所述第2步的数据集分割,将处理后的输入数据集分割为训练数据集和测试数据集,具体步骤如下:
4.根据权利要求1所述的基于小样本数据的模糊超盒神经网络分类方法,其特征在于:所述第4步的超盒调整,对生成的初始超盒模糊集执行重叠检测和收缩两步操作,重叠检测操作是识别并标记出超盒间的重叠区域,收缩操作是调整超盒边界以减少重叠,获得最终的超盒模糊集,具体步骤如下:
5.根据权利要求1所述的基于小样本数据的模糊超盒神经网络分类方法,其特征在于:所述第5步的模型测试,根据训练过程生成的最终超盒模糊集使用测试数据集进行测试,计算分类结果并输出,具体步骤如下: