1.本发明涉及一种基于模糊神经网络的数据分类方法、系统、装置及存储介质,属于数据分类技术领域。
背景技术:2.现有技术中使用复杂的模糊神经网络能够取得相对较高的准确率,但是在追求高准确率的同时不可避免地增加了模型的复杂性,从而导致模型的透明度降低。此外,这些模型通常只是在神经网络中加入了一些模糊信息,不能显著地增加模型的可解释性,也无法帮助人们用模糊规则的形式理解模型的决策。
3.通过多层模糊系统的堆叠构造的模糊神经网络能够提供模糊规则形式的解释,但是模糊系统的层次结构容易造成规则的重叠、冲突,以及模糊集合之间的过度重叠或分散等问题,使得人们很难在保持一致性的情况下将不同模糊系统的模糊规则组合在一起,从而降低了对模型的理解。在具有分层结构的模糊系统中,当模糊规则的输入是中间变量时,解释模糊规则几乎总是困难的,并且随着层数的增加,这种困难变得更加严重。为了权衡模糊神经网络的准确性和可解释性,一些文献在模糊神经网络中加入了启发式搜索方法,但通常受限于庞大的搜索空间,耗时较长,效率偏低。
技术实现要素:4.本发明的目的在于提供一种基于模糊神经网络的数据分类方法、系统、装置及存储介质,解决现有技术中在权衡数据分类过程中网络的准确性和可解释性方面的缺陷。
5.为实现以上目的,本发明是采用下述技术方案实现的:第一方面,本发明提供了一种基于模糊神经网络的数据分类方法,包括:获取待分类数据;对待分类数据进行预处理得到特征向量;将特征向量输入到训练好的模糊神经网络中,得到分类结果;所述模糊神经网络使用神经网络的多层架构,模糊神经网络中的节点表示隶属度函数和模糊规则的连接词,能够直接转化成一组可解释的模糊规则库,所述模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析。
6.结合第一方面,进一步的,所述模糊神经网络通过以下方法构建:设置模糊神经网络的超参数;基于所述模糊神经网络的超参数,分别构建模糊神经网络efnnc的模糊化层、模糊逻辑层和分类层。
7.结合第一方面,进一步的,所述模糊神经网络通过以下方法训练:获取训练集;
设置训练的超参数;基于所述模糊神经网络的超参数,分别构建模糊神经网络的对偶模型efnnc-d的模糊化层、模糊逻辑层和分类层,efnnc和efnnc-d的网络结构相同,模糊化层和分类层节点的操作也相同,两者的区别在于模糊逻辑层的权重前者是离散的0/1值而后者是连续的实数值,以及模糊逻辑层节点的运算方式不同;基于所述训练的超参数,将训练集中的数据输入到efnnc和efnnc-d中进行训练,使得efnnc能够利用efnnc-d找到梯度方向,通过迭代学习的方式完成模糊规则的自动学习,从而完成训练。
8.结合第一方面,进一步的,所述模糊神经网络的超参数包括特征向量使用的模糊集合个数和各层节点的个数。
9.结合第一方面,进一步的,所述训练的超参数包括训练的周期、批次、学习率和权重衰减系数。
10.结合第一方面,进一步的,所述对待分类数据进行预处理得到特征向量包括:将待分类数据的特征值进行最小最大归一化操作,并对待分类数据的标签值进行one-hot编码,得到特征向量。
11.结合第一方面,进一步的,不仅能够提供一组整体的模糊规则库,还能够在提供样本时,通过以下方法进行模糊规则的展示、约简和分析:筛选出指定样本激活的模糊规则;对所述指定样本激活的模糊规则进行约简,使得每条模糊规则的前件只包含一个特征;对重复的模糊规则进行合并;对冲突的模糊规则进行删除。
12.第二方面,本发明还提供了一种基于模糊神经网络的数据分类系统,包括:数据获取模块:用于获取待分类数据;数据预处理模块:用于对待分类数据进行预处理得到特征向量;数据分类模块:用于将特征向量输入到训练好的模糊神经网络中,得到分类结果;所述模糊神经网络使用神经网络的多层架构,模糊神经网络中的节点表示隶属度函数和模糊规则的连接词,能够直接转化成一组可解释的模糊规则库,所述模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析。
13.第三方面,本发明还提供了一种基于模糊神经网络的数据分类装置,包括处理器及存储介质;所述存储介质用于存储指令;所述处理器用于根据所述指令进行操作以执行根据第一方面任一项所述方法的步骤。
14.第四方面,本发明还提供了计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面任一项所述方法的步骤。
15.与现有技术相比,本发明所达到的有益效果是:本发明提供的一种基于模糊神经网络的数据分类方法、系统、装置及存储介质,通
过设计模糊神经网络的结构和节点的操作,针对待分类数据提供模糊规则形式的解释,并针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析,详细地展示了模糊神经网络的解释结果,该模糊神经网络能够在提供可解释的模糊规则的情况下达到很高的准确率;模糊神经网络使用神经网络的多层架构,模糊神经网络中的节点表示隶属度函数和模糊规则的连接词,能够更直接、方便地从训练好的模糊神经网络中提取出用于分类的模糊规则,加快网络的训练速度;通过设计模糊神经网络的对偶模型,并给出相应的训练算法,使得模糊神经网络能够使用迭代学习的方式高效、自动地完成模糊规则的训练。
附图说明
16.图1是本发明实施例提供的一种基于模糊神经网络的数据分类方法的流程图;图2是本发明实施例提供的模糊神经网络及其对偶模型的示意图。
具体实施方式
17.下面结合附图对本发明作进一步描述,以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
18.实施例1如图1所示,本发明实施例提供的一种基于模糊神经网络的数据分类方法,包括以下步骤:s1、获取待分类数据。
19.获取需要进行数据分类的待分类数据。
20.s2、对待分类数据进行预处理得到特征向量。
21.对步骤s1中获取的待分类数据进行预处理,得到特征向量,用于输入到训练好的模糊神经网络中进行分类:将待分类数据的特征值进行最小最大归一化操作,并对待分类数据的标签值进行one-hot编码,得到特征向量。
22.s3、将特征向量输入到训练好的模糊神经网络中,得到分类结果。
23.在进行数据分类之前首先要构建并训练好模糊神经网络,包括以下步骤:(1)设置模糊神经网络的超参数,包括特征向量使用的模糊集合个数和各层节点的个数,设置训练的超参数,包括训练的周期、批次、学习率、权重衰减系数等。
24.(2)基于设置的模糊神经网络的超参数,构建模糊神经网络efnnc的模糊化层、模糊逻辑层和分类层,如图2左侧部分所示,其中,利用模糊化层对输入的特征向量进行模糊化操作;利用模糊逻辑层表征模糊规则库;利用分类层整合各个模糊逻辑层节点的输出值并给出最终的分类。
25.基于设置的模糊神经网络的超参数,构建模糊神经网络的对偶模型efnnc-d,如图2右侧部分所示,efnnc-d模型同样由模糊化层、模糊逻辑层以及分类层构成,且与efnnc具有完全相同的网络结构。此外,模糊化层以及分类层节点的操作也完全相同。两者的区别在于模糊逻辑层的权重efnnc为离散的0/1值而efnnc-d是连续的实数值,以及模糊逻辑层节点的运算方式不同。
26.设计基于efnnc和efnnc-d的训练方法,如图2中的虚线部分所示,使得efnnc模型能够有效利用efnnc-d模型找到梯度方向,从而完成模糊规则的自动学习。
27.(3)将分类数据集转换为预定格式,并按照预设的比例划分训练集和测试集。
28.转换的处理包括将数据的特征值进行最小最大归一化操作,并对数据的标签值进行one-hot编码。
29.(4)基于步骤(1)中设置的训练的超参数,使用训练集中的数据对模糊神经网络进行训练。
30.(5)使用测试集中的数据对模糊神经网络进行测试。
31.(6)模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析,为模糊规则提供直观、详细的展示。
32.通过将从模糊化层到分类层的每一条通路解释为一条模糊规则来提供解释,此外,在给定样本时,通过以下方法对模糊规则进行提取、约简和分析:激活规则的筛选,也就是筛选出指定样本激活的模糊规则;单条规则的约简,也就是对所述指定样本激活的模糊规则进行约简,使得每条模糊规则的前件只包含一个特征;对重复的模糊规则进行合并;对冲突的模糊规则进行删除。
33.在模糊神经网络训练好后,将特征向量输入到训练好的模糊神经网络中,得到分类结果,完成数据分类。
34.本发明所述的方法使用了一个兼具高准确度和强可解释性的模糊神经网络;一方面,所提出的模糊神经网络使用神经网络的多层架构,网络中的节点表示隶属度函数和模糊规则的连接词,使得可以直接、方便地从训练好的模糊神经网络中提取出用于分类的模糊规则;此外,在进行对单条数据以及相似的数据集合进行解释时,能够将每条模糊规则的先行词长度缩减为一个,进一步增加了模型的可理解性;另一方面,模糊神经网络通过神经网络的迭代学习方法进行训练,多个数据集上的实验结果表明,与其他方法相比,所提方法在分类准确性上存在明显优势。
35.本发明所述的方法还提出了模糊神经网络的高效训练方法,使得模糊规则的学习能够通过梯度下降和反向传播算法高效地完成。
36.本发明所述的方法不仅详细设计从模糊神经网络中提取模糊规则并进行约简的方法,还针对单条数据和少量相似数据的分类结果进行了解释,分析了模型进行分类的原因和依据,并将解释细化到了具体的特征以及对应的模糊集合。
37.实施例2本发明实施例提供的一种基于模糊神经网络的数据分类系统,包括:数据获取模块:用于获取待分类数据;数据预处理模块:用于对待分类数据进行预处理得到特征向量;数据分类模块:用于将特征向量输入到训练好的模糊神经网络中,得到分类结果;所述模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析。
38.实施例3
本发明实施例提供的一种基于模糊神经网络的数据分类装置,包括处理器及存储介质;所述存储介质用于存储指令;所述处理器用于根据所述指令进行操作以执行根据下述方法的步骤:获取待分类数据;对待分类数据进行预处理得到特征向量;将特征向量输入到训练好的模糊神经网络中,得到分类结果;所述模糊神经网络使用神经网络的多层架构,模糊神经网络中的节点表示隶属度函数和模糊规则的连接词,能够直接转化成一组可解释的模糊规则库,所述模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析。
39.实施例4本发明实施例提供的计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述方法的步骤:获取待分类数据;对待分类数据进行预处理得到特征向量;将特征向量输入到训练好的模糊神经网络中,得到分类结果;所述模糊神经网络使用神经网络的多层架构,模糊神经网络中的节点表示隶属度函数和模糊规则的连接词,能够直接转化成一组可解释的模糊规则库,所述模糊神经网络中还针对待分类数据设计了模糊规则的提取和约简算法,从而实现模糊规则的展示和分析。
40.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
41.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
42.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
43.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
44.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。