一种基于两步聚类算法的异常数据诊断方法及系统与流程

文档序号:24984889发布日期:2021-05-07 23:02阅读:305来源:国知局
一种基于两步聚类算法的异常数据诊断方法及系统与流程

本发明涉及数据清洗及处理技术领域,尤其涉及一种基于两步聚类算法的异常数据诊断方法及系统。



背景技术:

数据清理是数据分析的一个重要步骤,而异常数据的识别和处理是有效进行数据清理和数据分析的基石。现有的研究人员多基于以下类型的异常数据识别方法进行异常数据的诊断:

1、基于数据特征进行识别的方法,常用的该类型识别方法包括箱型图分析法、标准化法和距离识别法,其中,箱型图分析法通过分析识别超过上下四分位点以外一定范围的数据,将满足的数据定义为异常数据。标准化法是通过计算各数据的正态标准化值,将正态标准化值超过设定值的数据定义为异常数据。应用距离识别法进行异常数据诊断时,是基于设置的基准点开展针对各个数据对应样本点的欧氏距离或马氏距离计算,将计算结果满足设定条件的数据定义为异常数据。

2.模型识别法;这类方法属于简单有监督识别,常见的模型识别方法包括贝叶斯识别法,决策树识别法,线性回归识别法等。应用这类方法实现异常数据诊断时,通过根据数据所对应的特征,去拟合获取一个尽可能符合要求的模型,后续直接应用拟合得到模型的预测功能对数据的性能进行判断,也就是利用能够代表大多数数据判断结果的模型去判断实际数据是否异常。以线性回归识别为例,其首先通过从大量数据中挖掘自变量和因变量的关系,建立两者之间的数据预测模型以代表所有样本数据中的共同趋势;然后将预测模型应用到待诊断的数据中,选取实际值与预测值差距比较大的数据,定义为异常数据。

上述两种类型的异常数据识别方法中,基于数据特征识别的方法通常只能考虑特定的数据特征因素,必然导致数据诊断的结果精确度不足,实际应用时可能会导致错失重要数据,无法满足数据诊断的实际要求,且基于数据特征识别的方法一般只适用于数值型变量。相对于根据数据特征进行异常识别的方法,模型识别虽然可以同时考虑多个影响因素,但是其应用领域存在局限性,通常适用于分类型数据(例如男/女)和数值型数据(例如身高/体重)两种数据,且使用模型识别方法进行数据诊断时存在以下:

1).预测模型的选择并不是一个简单的是/非两个选项,很多时候根据用户模型算法的选择,参数的选择而不同,而评估指标通常也不止一个,因此不同的用户可能会选择不同的预测模型,异常数据诊断结果对预测模型的选择依赖性过高,这就导致对用户的数据处理和分析专业能力要求比较高,适用性不佳;

2).预测模型的可靠性无法得到保障,即各个类型数据对应的预测模型的质量都需要依靠海量的数据进行运算和拟合来保障,数据处理量大,运算过程繁琐,否则模型并不能真正代表数据的整体趋势;

3).对于非监督类的数据诊断场景,该类方法则难以有效应用,通常这类方法应用于同时存在自变量(原因)和因变量(结果)两类参量的数据,如果针对无监督的场景或者原始数据不存在明显有效的趋势性特使时,则无法建立预测模型,由此可见,模型识别类的方法稳定性和一致性不佳,大大的限制了其对于不同数据场景的实用性。



技术实现要素:

为解决上述问题,本发明提供了一种基于两步聚类算法的异常数据诊断方法,在一个实施例中,所述方法包括:

诊断类定义步骤、执行诊断操作前,对具备诊断需求的数据进行自定义类别划分,确定用于作为聚类辅助设置信息的诊断类;

数据聚类步骤、基于确定的诊断类按照设定策略应用两步聚类算法进行聚类处理;

异常诊断步骤、采用设定算法对聚类处理后的数据进行分析和计算,确定各数据对应的异常指数,并依据所述异常指数发现所有的目标异常数据。

在一个优选的实施例中,所述方法还包括:

属性字段诊断步骤、发现所有目标异常数据后,计算剩余数据对应各特征属性的属性异常指数,选取属性异常指数满足设定条件的特征属性,将其对应的数据字段标记为异常数据字段。

一个实施例中,在定义诊断类的过程中,依据待诊断数据的来源分类特征、数据类型分类特征和/或数据描述对象分类特征中的一种或多种逐层确定待诊断数据对应的类别,直至满足设定条件或无可用的分类特征,将确定的类别作为诊断类,为聚类步骤提供辅助。

进一步地,在一个实施例中,所述方法还包括:

在定义诊断类之前,获取待诊断数据的来源信息、数据类型信息以及数据描述对象信息,并分析各自对应的可分类丰富度以及各分类对应的数据量,基于所述可分类丰富度和数据量的分析结果选取作为定义诊断类依据的有效信息,并生成该有效信息对应的分类特征,以辅助聚类步骤。

具体地,在一个实施例中,选取有效信息时,选取可分类丰富度以及各分类对应数据量均满足设定条件的信息作为有效信息;

进而分析识别有效信息对应的各分类数据量满足设定超量条件的分类,进一步划分子类别作为分类特征,以均衡各诊断类对应的数据量。

一个实施例中,在所述异常诊断步骤中,按照下式计算聚类后各数据的距离作为其对应的异常指数:

其中,k表示诊断类的个数,d(x,y)表示数据点x和数据点y之间的距离,xij表示第i类的第j个数据点,kij表示第i类的数据记录的个数,表示第i组数据的类中心。

具体地,一个可选的实施例中,在发现所有目标异常数据的过程中,将各数据的异常指数与设定的诊断指标比较,选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常指数阈值。

一个可选的实施例中,在发现所有目标异常数据的过程中,获取各数据对应的异常指数后,将各数据的异常指数按照一定的次序排列,依据设定的诊断指标选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常数据比例指标或异常数据数量指标。

基于上述任意一个或多个实施例的方法,本发明还提供一种存储介质,该存储介质上存储有可实现如上述任意一个或多个实施例所述方法的程序代码。

基于上述任意一个或多个实施例所述方法的其他方面,本发明还提供一种基于两步聚类算法的异常数据诊断系统,该系统执行如上述任意一个或多个实施例中所述的方法。

与最接近的现有技术相比,本发明还具有如下有益效果:

本发明提供的一种基于两步聚类算法的异常数据诊断方法,以两步聚类的聚类算法为基础,利用两步聚类形成的分类和分类对应的距离,作为诊断异常数据的依据,采用本发明提供的诊断方法,能够适用于同时包含多种类型数据的对象,相对于现有技术而言,不受数据场景局限性的约束,且能够有效提升数据清洗的效率;此外,本发明的诊断方案摆脱了对识别模型的依赖,能够真正实现所有用户的数据诊断需求,不需要具备相当程度的模型使用经验也能够保障数据清洗结果的可靠性和稳定性,此外,本发明中的聚类类别可以由用户结合待诊断数据的类型和特征自定义,具备更好的灵活性,便于应用到各种场景的数据分析和处理工作中。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。在附图中:

图1是本发明实施例提供的现有根据模型的异常数据识别方法的原理示例图;

图2是本发明一实施例提供的基于两步聚类算法的异常数据诊断方法的流程示意图;

图3是本发明另一实施例提供的基于两步聚类算法的异常数据诊断方法的流程示意图;

图4是本发明一实施例提供的基于两步聚类算法的异常数据诊断系统的结构示意图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此本发明的实施人员可以充分理解本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程并依据上述实现过程具体实施本发明。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。

虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。各项操作的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。

计算机设备包括用户设备与网络设备。其中,用户设备或客户端包括但不限于电脑、智能手机、pda等;网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算的由大量计算机或网络服务器构成的云。计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、vpn网络等。

在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制,使用这些术语仅仅是为了将一个单元与另一个单元进行区分。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。

这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。

数据清理是数据分析的一个重要步骤,而其中异常数据的识别和处理是有效数据清理和数据分析的基石。现有的异常数据识别方法包括以下几种:

1.根据数据特征进行识别:其中常用的方法包括箱型图分析(超过上下四分位点以外一定范围则定义为异常值),标准化法(将数据计算正态标准化值超过3以外的定义为异常值),距离识别(通过计算每个样本点与基准点之间的欧式或者马氏距离来寻找异常值)。

2.模型识别法:这类方法属于简单有监督识别,常见的包括贝叶斯识别,决策树识别,线性回归识别等。应用这类方法,会根据数据所对应的特征,去拟合一个尽量符合的模型,后续直接应用模型的预测结果,也就是代表大多数数据的结果去判断实际数据是否异常。

与本申请提案最为接近的技术方案是模型识别法。以线性回归识别为例,实现模型识别需要以下几个步骤:

(1)首先通过从大量数据中挖掘自变量和因变量之间的关系,建立两者之间的数据预测模型,也就是预测模型代表大量数据中的共同趋势;

(2)将预测模型应用到全部数据中,查看实际值与预测值之间的差距(代表个案与整体之间的差异),将差距非常大的即定义为异常数据,如图1所示。

相对于根据数据特征进行异常识别的方法,模型识别可以同时考虑多个影响因素,且适用于分类型数据(例如男/女)和数值型数据(例如身高/体重)两种数据,而根据数据特征识别的方法一次只能考虑一个影响因素,且只适用于数值型变量。

然而使用模型识别异常数据时面临着几个问题:

1.对于异常值的诊断依赖于预测模型的选择,因为预测模型的选择并不是一个简单的是/非两个选项,很多时候根据用户模型算法的选择,参数的选择而不同,而评估指标通常也不止一个,因此不同的用户可能会选择不同的预测模型,例如针对分类型目标变量和多个数据变量,用户可以选择逻辑回归,也可以选择决策树,贝叶斯网络等算法不同用户的预测模型算法和参数的选择不同,基于这些预测模型得到的异常值也会不同;

2.对于异常值的诊断也依赖于预测模型的质量,如果预测模型质量不好或者数据本身并不存在趋势性的关系,则模型的预测效果不好,也就是说模型并不能真正代表数据的整体趋势;

3.此类方法只适用于监督类的场景,也就是说数据中同时存在自变量(原因)和因变量(结果)两类数据,如果针对无监督的场景,也就是还没有确定预测目标之前,则无法建立预测模型。这些问题导致这种方法的稳定性和一致性很差,因此大大的限制了此功能的实用性。

聚类分析指的是将物理或抽象对象的集合进行分组,将类似的对象根据其特征属性组成的多个类别的分析过程。进一步地,聚类分析研究领域中,两步聚类是一类成熟的聚类分析方法,是基于birch(balancediterativereducingandclusteringusinghierarchies)层次聚类的改进算法。本发明研究人员考虑到相对于其他的聚类算法,两步聚类能够适用于超大样本的情况,而且能处理输入变量同时包括分类型和数值型的情况,例如先通过cf-树(聚类特征树)的构建对数据预聚类,然后再使用凝聚法将各个子类逐步合并的两步聚类思想。

为解决上述问题,本发明研究人员按照设定的策略将两步聚类算法与数据处理方法融合应用,提供了一种基于两步聚类算法的异常数据诊断方法,本发明实施例中提供了一种适用于包括分类型和数值型数据在内的多个变量的,无监督场景的,非模型依赖的异常数据诊断方法,通过这种方法可以快速、精确地识别出各种数据中的异常值,且这种方法能够有效适用于各种类型的数据诊断场景。

接下来基于附图详细描述根据本发明实施例的方法的详细流程,附图的流程图中示出的步骤可以在包含诸如一组计算机可执行指令的计算机系统中执行。虽然在流程图中示出了各步骤的逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

实施例一

图2示出了本发明实施例一提供的基于两步聚类算法的异常数据诊断方法的流程示意图,参照图2可知,该方法包括如下步骤

诊断类定义步骤、执行诊断操作前,对具备诊断需求的数据进行自定义类别划分,确定用于作为聚类辅助设置信息的诊断类。

数据聚类步骤、基于确定的诊断类按照设定策略应用两步聚类算法进行聚类处理。

异常诊断步骤、采用设定算法对聚类处理后的数据进行分析和计算,确定各数据对应的异常指数,并依据所述异常指数发现所有的目标异常数据。

具体地,本发明实施例通过诊断类定义步骤确定用于诊断异常值的数据类别,即定义将所有具备诊断需求的数据记录分成哪几个类,例如,将具备诊断需求的一批消费者数据划分为5种不同类型的消费者,每种类型的消费者集归为一个大类。实际应用中,用户通常根据数据类型、数据量和数据内容以及数据所描述行业的知识和预先了解对应诊断过程中的数据类别,基于此,本发明研究人员基于以下策略分析确定所有待诊断数据的诊断类。

首先,待诊断数据的数据类型和数据规模具备不确定性,也就是说同一批待诊断的数据对象中,可能为同时包含多种数据类型的大样本量数据。基于此,为了均衡聚类处理后各类别簇的数据容量,均衡各类别数据的异常数据识别精度和稳定性,需要合理限制各类别对应的数据量以及总的类别丰富度。

因此,在一个优选的实施例中,定义诊断类之前,获取待诊断数据的来源信息、数据类型信息以及数据描述对象信息,并分析各自对应的可分类丰富度以及各分类对应的数据量,基于所述可分类丰富度和数据量的分析结果选取作为定义诊断类依据的有效信息,并生成该有效信息对应的分类特征,以辅助聚类步骤。其中,所述有效信息可以包括来源信息、数据类型信息以及数据描述对象信息中的一种或多种。

进一步地,在一个实施例中,选取有效信息的过程中,选取可分类丰富度以及各分类对应数据量均满足设定条件的信息作为有效信息;

进而分析识别有效信息对应的各分类数据量满足设定超量条件的分类,进一步划分子类别作为分类特征,以均衡各诊断类对应的数据量。

实际应用中,研究人员可以根据需求建立针对上述步骤的有效信息选取模型,该模型通过设定的样本信息和符合用户需求的有效信息结果拟合训练得到,其中,所述样本信息指的是已知有效信息的历史待诊断数据的来源信息、数据类型信息以及数据描述对象信息。该有效信息选取模型建立成功后,直接基于获取的数据来源信息、数据类型信息以及数据描述对象信息得到用于定义诊断类的分类特征。

在此基础上,本发明实施例通过依据待诊断数据的来源分类特征、数据类型分类特征和/或数据描述对象分类特征中的一者或多者逐层确定数据对应的类别,直至满足设定条件或无可用的分类特征,将确定的类别作为诊断类,为聚类步骤提供辅助。例如,现有1000条电信用户记录数据,包括:用户地区(分类型)、入网时长(数值型)、年龄(数值型)、婚姻(分类型)、收入(数值型)、学历(分类型)、性别(分类型);

首先根据数据类型分类特征将所有数据分为分类型数据和数值型数据两个类别;

进而分别针对分类型数据的用户地区、婚姻、学历和性别数据按照数据来源分类特征进行进一步划分,例如,进一步将上述分类型数据划分为户籍信息、入网业务信息和消费水平(收入)信息;

依次类推,直至找不出可用的分类特征,将获得的类别作为诊断类,进一步作为后续聚类处理的目标聚类类别。需要说明的是,实际应用时,用户或研究人员除了数据来源信息、数据类型信息以及数据描述对象信息也可以依据待诊断数据的其他合理信息确定诊断类,此外,用户也可以选择让两步聚类自动确定对应的类别数作为诊断类。需要说明的是,确定诊断类的过程中,作为划分依据的信息特征并不是一成不变的,可以根据用户需求灵活调整,即可以依据数据来源信息、数据类型信息以及数据描述对象信息以外的其他合理数据特征信息确定诊断类;另外,划分诊断类过程中对应分类特征的丰富度和数据量由用户根据实际的诊断需求灵活设置。

进一步地,两步聚类是一种成熟的聚类方法,相对于其他的聚类算法,两步聚类更适合超大样本的情况,而且能处理输入变量同时包括分类型和数值型的情况。基于此,本发明实施例通过应用两步聚类方法将数据记录按照预先定义的诊断类进行聚类。

本发明实施例以两步聚类的聚类方法为基础,利用两步聚类形成的分类和分类对应的距离,作为诊断异常数据的基础,为用户提供更稳定、更可靠、适用更丰富场景的异常数据识别方法,此外,采用两步聚类算法对待诊断的数据进行分类具备如下优势:

1)、应用聚类方法来计算异常数据,适用于原始数据并不具备分类预测模型可预测的趋势性(不符合任何已知模式的情况下)且数据可能属于多个类别的场景;例如同时包含某病患身高数据和其眼疾严重等级数据的数据集。

2)、相对于传统的异常数据识别方法例如标准化法只能一次识别一个字段且只适用于数值型字段的场景,基于两步聚类算法实现数据诊断可以同时处理多个字段,且可以同时考虑分类型和数值型字段;

3)、使数据诊断技术摆脱了对模型质量的依赖性,无需复杂的建模过程即可高效地识别出异常数据;

4)、适用于无监督数据的诊断场景,也就是说,即便没有目标变量或者目标变量还不能确定的情况下,都可以进行异常数据识别,例如应用于多种预测场景;

5)、面对超大样本的情况,异常数据识别过程也可以进行高效运算。

实际应用时,聚类分析指的是将待诊断数据对象进行分组,将类似的对象根据其特征组成的多个类别的分析过程。其中,聚类分析方法中,两步聚类是一种成熟的聚类分析方法,是基于birch层次聚类的改进算法,相对于其他的聚类算法,两步聚类只需要单遍扫描数据集就能进行聚类更适合超大样本的情况,而且能处理输入变量同时包括分类型和数值型的情况,具体地,两步骤聚类的思想是先通过cf-树的构建对数据预聚类,然后再使用凝聚法将各个子类逐步合并。

进一步地,本发明实施例应用两步聚类方法将数据记录按照预先定义的诊断类进行聚类的过程可分为以下执行阶段:

(1)预聚类阶段,该阶段采用了birch(balancediterativereducingandclusteringusinghierarchies)算法中cf树生长的思想,逐个读取数据集中数据点,在生成cf树的同时,预先聚类密集区域的数据点,形成诸多的小的子簇。

(2)聚类阶段,该阶段以预聚类阶段的结果--子簇为对象,利用凝聚法(agglomerativehierarchicalclusteringmethod),逐个地合并子簇,直到期望的簇数量。

由于上述两阶段的步骤中,只需要保存cf树的结构(包括节点特征和对应的节点之间的指针),因此这种算法可以节约内存,同时cf的构建过程只需要一次历彼遍数据即可实现cf结构的构建,无需像k-means等聚类方法一样,反复计算类中心和数据与类中心的距离,因此两步聚类速度快,适合数据量大,属性类别数也比较多的情况。通过前两步构建的cf树结构,把每个数据点分配到最近的类别中,就完成了整个聚类过程。

通过对数据应用两步聚类,将所有数据分成了若干类,例如分为4类,其中4个类别中的数据量分别是249,111,218和422,每条数据体现为各个对应类别中的1个数据点。根据两步聚类的聚类方法,每个类别之内的数据之间与类中心的距离比较小,而各个类别之间的差异比较大。

具体地,在一个实施例中,所述异常诊断步骤中,按照下式计算聚类后各数据的距离作为其对应的异常指数:

其中,k表示诊断类的个数,d(x,y)表示数据点x和数据点y之间的距离,xij表示第i类的第j个数据点,kij表示第i类的数据记录的个数,表示第i组数据的类中心在两步聚类的聚类过程中形成)。

例如,对于某类别对应的1000条数据记录都可以计算出他们分别与所在的类别的类中心之间的距离,从而得到异常指数。其中,前10条数据的异常指数分别为0.684,0.674,1.302,0.631,0.822,0.352,0.575,0.225,1.147,1.083。

进一步地,本发明实施例通过异常指数的大小来判断该条记录是否异常。用户可以将异常指数从大到小排序,识别异常数据。除此之外,用户也可以通过定义异常指数阈值、异常记录百分比,异常记录数量等方法,预先设定判断异常数据的标准,规范异常数据的判断标准。

因此,一个可选的实施例中,在发现所有目标异常数据的过程中,将各数据的异常指数与设定的诊断指标比较,选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常指数阈值。采用该方法时,得知各数据对应的异常指数后就可以根据其与异常指数阈值的比较结果确定其是否为异常数据,不需要等待所有数据的异常指数都知晓,即时性更佳。针对本发明上述实施例中的案例,如果将异常指数超过1.1的数据定义为异常数据,则前10条记录中的第9条将被识别为目标异常数据。

一个可选的实施例中,在发现所有目标异常数据的过程中,获取各数据对应的异常指数后,将各数据的异常指数按照一定的次序排列,依据设定的诊断指标选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常数据比例指标或异常数据数量指标。其中定义异常记录的百分比和数量本质是相同的,而定义异常指数阈值经常适用于用户对于异常记录比较宽容或者比较严格两个场景(尤其是后者),用户可以将阈值定义为接近1的水平,只保留距离类中心很近的数据获得定义为较大的值而排除异常程度非常高的数据。

本发明上述实施例中提供的诊断方法以两步聚类的聚类方法作为基础,利用两步聚类这种成熟的聚类方法形成分类和分类对应的距离,应用聚类方法的分类和距离来计算每一条数据的异常指数,进而根据设定的策略基于异常指数识别发现异常数据,克服了现有异常数据识别方法中适用数据场景单一的缺陷,另外,本发明中识别异常数据对象的过程中不需要依赖数据识别模型,能够看明白数据基本特征的用户都可以借助本发明的方案识别得到满足自己需求的识别结果,实现数据清洗,灵活性和实用性大大提升。

实施例二

进一步地,基于聚类算法的特性,考虑到其形成的数据簇中包含的各数据可能是包含多个字段的数据,例如上述实施例中将所有消费者对象划分为5种不同类型的消费者后,各个消费者的不同身份特征信息字段,或者例如人类的组合出生年月日信息中的不同日期字段,其中将各个字段视为该数据对应的不同特征属性,为了进一步提升异常数据诊断的可靠性和实用性,本发明研究人员考虑到有时候仅仅个别特征属性存在异常的数据无法被有效识别出,会成为剩余数据中的潜在影响因素,为了尽可能的使这样的数据相对于用户明确,避免潜在影响因素影响后续数据分析和处理阶段的开展。本发明该实施例中提供了包括以下步骤的异常数据诊断方法;

图3示出了本发明实施例二中提供的基于两步聚类算法的异常数据诊断方法的流程示意图,如图3所示,该实施例的异常数据诊断方法包括:

诊断类定义步骤、执行诊断操作前,对具备诊断需求的数据进行自定义类别划分,确定用于作为聚类辅助设置信息的诊断类。

数据聚类步骤、基于确定的诊断类按照设定策略应用两步聚类算法进行聚类处理。

异常诊断步骤、采用设定算法对聚类处理后的数据进行分析和计算,确定各数据对应的异常指数,并依据所述异常指数发现所有的目标异常数据。

其中上述步骤的具体执行手段与上述实施例中所述的内容基本一致,该实施例中不再赘述。需要说明的是,该实施例中,在发现所有目标异常数据后,所述方法进一步包括以下步骤:

属性字段诊断步骤、计算剩余数据对应各特征属性的属性异常指数,选取属性异常指数满足设定条件的特征属性,将其对应的数据字段标记为异常数据字段。

该实施例中进一步计算剩余数据中各特征属性的属性异常指数,用于发现属性存在异常的数据,实际应用时,用户可以根据实际需求对属性存在异常的数据进行处理,例如附加相应的标记作为潜在异常数据或者直接归入目标异常数据,使被发现的目标异常数据更为全面。

具体地,在一个实施例中,可以按照以下方式计算每条数据的各个特征属性与其所在的类中心之间的距离,例如针对第m个特征属性,它与类中心之间的距离则为:

式中,xijm表示第i类的第j个数据点的第m个特征属性的取值,代表第i个类别的类中心的第m个特征属性的取值。

实际应用时,可以通过上述步骤识别每一条记录取值离与其所在的类中心距离最远的字段作为异常字段,即将其定义为这条记录的所有字段中,与其类中心聚类偏差较远的一个或者若干个字段,对发现的异常字段进行标记,便于用户查看、调用或决策是否归为异常数据。

需要说明的是,基于本发明上述任意一个或多个实施例中的方法,本发明还提供一种存储介质,该存储介质上存储有可实现如述任意一个或多个实施例中所述方法的程序代码,该代码被操作系统执行时能够实现如上所述的基于两步聚类算法的异常数据诊断方法。

实施例三

基于上述任意一个或多个实施例的其他方面,本发明还提供一种基于两步聚类算法的异常数据诊断系统,该系统执行如上述任意一个或多个实施例所述的方法和步骤。

具体地,图4示出了本发明实施例三提供的基于两步聚类算法的异常数据诊断系统的结构示意图,如图4所示,所述系统包括:

诊断类定义模块,其配置为执行诊断操作前,对具备诊断需求的数据进行自定义类别划分,确定用于作为聚类辅助设置信息的诊断类;

数据聚类模块,其配置为基于确定的诊断类按照设定策略应用两步聚类算法进行聚类处理;

异常诊断模块,其配置为采用设定算法对聚类处理后的数据进行分析和计算,确定各数据对应的异常指数,并依据所述异常指数发现所有的目标异常数据。

进一步地,在一个实施例中,所述系统还包括:

属性字段诊断模块,其配置为在发现所有目标异常数据后,计算剩余数据对应各特征属性的属性异常指数,选取属性异常指数满足设定条件的特征属性,将其对应的数据字段标记为异常数据字段。

具体地,一个实施例中,所述诊断类定义模块配置为依据待诊断数据的来源分类特征、数据类型分类特征和/或数据描述对象分类特征中的一者或多者逐层确定数据对应的类别,直至满足设定条件或无可用的分类特征,将确定的类别作为诊断类,为聚类步骤提供辅助。

优选地,一个实施例中,所述诊断类定义模块还配置为:在定义诊断类之前,获取待诊断数据的来源信息、数据类型信息以及数据描述对象信息,并分析各自对应的可分类丰富度以及各分类对应的数据量,基于所述可分类丰富度和数据量的分析结果选取作为定义诊断类依据的有效信息,并生成该有效信息对应的分类特征,以辅助聚类步骤。

进一步地,选取有效信息的过程中,选取可分类丰富度以及各分类对应数据量均满足设定条件的信息作为有效信息;

进而分析识别有效信息对应的各分类数据量满足设定超量条件的分类,进一步划分子类别作为分类特征,以均衡各诊断类对应的数据量。

具体地,一个实施例中,所述异常诊断模块按照下式计算聚类后各数据的距离作为其对应的异常指数:

其中,k表示诊断类的个数,d(x,y)表示数据点x和数据点y之间的距离,xij表示第i类的第j个数据点,kij表示第i类的数据记录的个数,表示第i组数据的类中心。

一个可选的实施例中,在发现所有目标异常数据的过程中,所述异常诊断模块具体配置为将各数据的异常指数与设定的诊断指标比较,选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常指数阈值。

一个可选的实施例中,在发现所有目标异常数据的过程中,所述异常诊断模块具体配置为获取各数据对应的异常指数后,将各数据的异常指数按照一定的次序排列,依据设定的诊断指标选取满足所述诊断指标的数据作为目标异常数据输出;

其中,所述诊断指标为设定的异常数据比例指标或异常数据数量指标。

需要说明的是,本发明实施例提供的基于两步聚类算法的异常数据诊断技术系统中,各个模块或单元结构可以根实际数据识别或求独立运行或组合运行,以实现相应的技术效果。

应该理解的是,本发明所公开的实施例不限于这里所公开的特定结构、处理步骤或材料,而应当延伸到相关领域的普通技术人员所理解的这些特征的等同替代。还应当理解的是,在此使用的术语仅用于描述特定实施例的目的,而不意味着限制。

说明书中提到的“一实施例”意指结合实施例描述的特定特征、结构或特征包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一实施例”并不一定均指同一个实施例。

虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1