数据清洗方法、终端设备及存储介质转让专利

申请号 : CN202311509930.5

文献号 : CN117235448B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴雨培孟超超

申请人 : 北京阿丘科技有限公司

摘要 :

本发明公开了一种数据清洗方法、终端设备及存储介质,所述方法包括:将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数,其中,所述待清洗数据包括标签数据和无标签数据;根据所述无标签数据对应的预测值以及所述损失函数,从所述无标签数据中选取预设数量的聚类中心;根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心;根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗。以无标签数据作为初始的聚类中心进行分类,使得选定的目标清洗数据涵盖了所有可能出现的数据情况,能够提高数据清洗质量。

权利要求 :

1.一种数据清洗方法,其特征在于,所述数据清洗方法包括:

将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数,其中,所述待清洗数据包括标签数据和无标签数据;

根据所述无标签数据对应的预测值以及所述损失函数,确定所述无标签数据对应的梯度向量;

将满足预设条件的梯度向量对应的无标签数据作为聚类中心;

获取剩余的所述待清洗数据在所述预测模型的全连接层的特征值,并根据所述特征值,确定剩余的所述待清洗数据与各个所述聚类中心的距离;

将与所述待清洗数据的距离最小的聚类中心,作为所述待清洗数据对应的目标聚类中心;

根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗。

2.如权利要求1所述的数据清洗方法,其特征在于,所述将与所述待清洗数据的距离最小的聚类中心,作为所述待清洗数据对应的所述目标聚类中心的步骤之后,包括:将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类;

根据所述目标聚类对应的所述待清洗数据,更新所述目标聚类的所述目标聚类中心;

在所述目标聚类中心收敛时,执行所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤。

3.如权利要求2所述的数据清洗方法,其特征在于,所述将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类的步骤之后,包括:删除所述目标聚类中与所述目标聚类中心的距离最小的所述待清洗数据。

4.如权利要求1所述的数据清洗方法,其特征在于,所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤之前,包括:获取训练的样本数据,将所述样本数据作为节点,将所述样本数据之间的相似度作为边关系,其中,所述样本数据包括标签数据和无标签数据,所述标签数据对应的节点为标签节点,所述无标签数据对应的节点为无标签节点;

根据所述节点和所述边关系构建图结构;

根据所述图结构的边关系,将所述标签节点的标签信息传播至所述无标签节点;

基于所述标签节点的所述标签信息和所述标签数据,构建并训练所述预测模型。

5.如权利要求1所述的数据清洗方法,其特征在于,所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤之后,包括:获取所述预测模型对应的召回率和/或准确率,在所述召回率和/或准确率小于预设阈值时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤;和/或,在所述目标清洗数据的数量小于预设清洗数量时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤。

6.如权利要求5所述的数据清洗方法,其特征在于,所述获取所述预测模型对应的召回率和/或准确率的步骤之后,还包括:根据所述召回率和/或准确率,确定所述预测模型的评估结果;

根据所述评估结果,更新所述预测模型的模型参数。

7.一种终端设备,其特征在于,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的终端设备的数据清洗程序,所述终端设备的数据清洗程序被所述处理器执行时实现如权利要求1至6中任一项所述的数据清洗方法的步骤。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有终端设备的数据清洗程序,所述终端设备的数据清洗程序被处理器执行时实现如权利要求1至6中任一项所述的数据清洗方法的步骤。

说明书 :

数据清洗方法、终端设备及存储介质

技术领域

[0001] 本发明涉及数据清洗技术领域,尤其涉及一种数据清洗方法、终端设备及存储介质。

背景技术

[0002] 数据清洗(Data Cleaning)是指对原始数据进行处理和加工,以消除或纠正其中的错误、不一致性、缺失值和异常值等问题,使数据符合预期的标准和要求的过程。数据清洗是数据预处理的重要步骤之一,其目的是确保数据的质量和可靠性,为后续的数据分析、建模和决策提供可靠的基础。
[0003] 在相关的数据清洗方案中,通过人工编写待清洗数据对应的清洗规则,根据清洗规则对待清洗数据逐条进行清洗,从而检测并修复待清洗数据中的错误和噪声。然而,基于人工制定的清洗规则对待清洗数据进行清洗的方式,难以涵盖所有可能的数据情况,容易导致数据清洗质量差的技术问题。
[0004] 上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

发明内容

[0005] 本发明实施例通过提供一种数据清洗方法、终端设备及计算机可读存储介质,旨在解决数据清洗质量差的技术问题。
[0006] 为实现上述目的,本发明实施例提供一种数据清洗方法,所述数据清洗方法包括以下:
[0007] 将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数,其中,所述待清洗数据包括标签数据和无标签数据;
[0008] 根据所述无标签数据对应的预测值以及所述损失函数,从所述无标签数据中选取预设数量的聚类中心;
[0009] 根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心;
[0010] 根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗。
[0011] 可选地,所述根据所述无标签数据对应的预测值以及所述损失函数,从所述无标签数据中选取预设数量的聚类中心的步骤,包括:
[0012] 根据所述无标签数据对应的预测值以及所述损失函数,确定所述无标签数据对应的梯度向量;
[0013] 将满足预设条件的梯度向量对应的无标签数据作为所述聚类中心。
[0014] 所述根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心的步骤之后,包括:
[0015] 将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类;
[0016] 根据所述目标聚类对应的所述待清洗数据,更新所述目标聚类的所述目标聚类中心;
[0017] 在所述目标聚类中心收敛时,执行所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤。
[0018] 可选地,所述将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类的步骤之后,包括:
[0019] 删除所述目标聚类中与所述目标聚类中心的距离最小的所述待清洗数据。
[0020] 所述根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心的步骤,包括:
[0021] 获取剩余的所述待清洗数据在所述预测模型的全连接层的特征值,并根据所述特征值,确定剩余的所述待清洗数据与各个所述聚类中心的距离;
[0022] 将与所述待清洗数据的距离最小的聚类中心,作为所述待清洗数据对应的所述目标聚类中心。
[0023] 可选地,所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤之前,包括:
[0024] 获取训练的样本数据,将所述样本数据作为节点,将所述样本数据之间的相似度作为边关系,其中,所述样本数据包括标签数据和无标签数据,所述标签数据对应的节点为标签节点,所述无标签数据对应的节点为无标签节点;
[0025] 根据所述节点和所述边关系构建图结构;
[0026] 根据所述图结构的边关系,将所述标签节点的标签信息传播至所述无标签节点;
[0027] 基于所述标签节点的所述标签信息和所述标签数据,构建并训练所述预测模型。
[0028] 可选地,所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤之后,包括:
[0029] 获取所述预测模型对应的召回率和/或准确率,在所述召回率和/或准确率小于预设阈值时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤;和/或,
[0030] 在所述目标清洗数据的数量小于预设清洗数量时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤。
[0031] 可选地,所述获取所述预测模型对应的召回率和/或准确率的步骤之后,还包括:
[0032] 根据所述召回率和/或准确率,确定所述预测模型的评估结果;
[0033] 根据所述评估结果,更新所述预测模型的模型参数。
[0034] 此外,本发明为实现上述目的,本发明还提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据清洗程序,所述数据清洗程序被所述处理器执行时实现如上所述的数据清洗方法的步骤。
[0035] 此外,本发明为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据清洗程序,所述数据清洗程序被处理器执行时实现如上所述的数据清洗方法的步骤。
[0036] 本发明一实施例提出的一种数据清洗方法,终端设备及计算机可读存储介质,通过将待清洗数据输入预先训练的预测模型,并获取预测模型输出的预测值以及损失函数,其中,待清洗数据包括标签数据和无标签数据,然后根据无标签数据对应的预测值以及损失函数,从无标签数据中选取预设数量的聚类中心,根据剩余的待清洗数据与各个聚类中心的距离,确定剩余的待清洗数据对应的目标聚类中心,根据待清洗数据与目标聚类中心的距离,从待清洗数据中选定目标清洗数据,并对目标清洗数据进行清洗。由于无标签数据不受任何预先定义的标签或类别限制,可以更好地反映数据的内在结构和相似性,因此以无标签数据作为初始的聚类中心进行分类,使得选定的目标清洗数据,涵盖了所有可能出现的数据情况,达成提高数据清洗质量的技术效果。

附图说明

[0037] 图1为本发明数据清洗方法的一实施例的流程示意图;
[0038] 图2为本发明数据清洗方法的第二实施例的流程示意图;
[0039] 图3为本发明数据清洗方法的第三实施例的流程示意图;
[0040] 图4是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
[0041] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0042] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0043] 由于在相关的数据清洗方案中,通过人工编写待清洗数据对应的清洗规则,根据清洗规则对待清洗数据逐条进行清洗,从而检测并修复待清洗数据中的错误和噪声。然而,基于人工制定的清洗规则对待清洗数据进行清洗的方式,难以涵盖所有可能的数据情况,容易导致数据清洗质量差的技术问题。
[0044] 为解决相关技术中的上述缺陷,本发明提出一种数据清洗方法,其主要解决步骤包括以下:
[0045] 通过将待清洗数据输入预先训练的预测模型,并获取预测模型输出的预测值以及损失函数,其中,待清洗数据包括标签数据和无标签数据,然后根据无标签数据对应的预测值以及损失函数,从无标签数据中选取预设数量的聚类中心,根据剩余的待清洗数据与各个聚类中心的距离,确定剩余的待清洗数据对应的目标聚类中心,根据待清洗数据与目标聚类中心的距离,从待清洗数据中选定目标清洗数据,并对目标清洗数据进行清洗。由于无标签数据不受任何预先定义的标签或类别限制,可以更好地反映数据的内在结构和相似性,因此以无标签数据作为初始的聚类中心进行分类,使得选定的目标清洗数据,涵盖了所有可能出现的数据情况,达成提高数据清洗质量的技术效果。
[0046] 为了更好地理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整地传达给本领域的技术人员。
[0047] 参照图1,在本发明数据清洗方法的一实施例中,所述一种数据清洗方法包括以下步骤:
[0048] 步骤S10:将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数,其中,所述待清洗数据包括标签数据和无标签数据;
[0049] 在本实施例中,预测模型为基于图结构的半监督学习模型。半监督学习模型输出的预测值为无标签数据对应的标签或者为无标签数据对应的标签的概率值,本实施例对此不做具体限定。待清洗数据包括标签数据和无标签数据。将待清洗数据输入预先训练的半监督学习模型,半监督学习模型根据标签数据进行无标签数据的分类预测,确定无标签数据对应的标签,从而得到半监督学习模型的预测值,并获取半监督学习模型的损失函数。
[0050] 步骤S20:根据所述无标签数据对应的预测值以及所述损失函数,从所述无标签数据中选取预设数量的聚类中心;
[0051] 在本实施例中,根据无标签数据对应的预测值以及损失函数,确定无标签数据对应的梯度向量,将满足预设条件的梯度向量对应的无标签数据作为聚类中心。由于无标签数据不受任何预先定义的标签或类别限制,可以更好地反映数据的内在结构和相似性,因此以无标签数据作为初始的聚类中心进行分类,可以避免随机初始化带来的不确定性,提高算法的稳定性,以便后续提高选定的目标清洗数据的准确度,从而不仅提高数据清洗质量,还能提高待清洗数据的清洗效率。一个聚类中心对应一个聚类,后续需要根据剩余的待清洗数据与各个聚类中心之间的距离,确定各个待清洗数据所属的聚类,将其归类到对应的聚类中。最后每个聚类中的待清洗数据之间的相似度是最高的。
[0052] 可选地,梯度向量的大小表征了该无标签数据对于模型参数更新的影响程度。梯度向量越大,说明该无标签数据对于半监督学习模型的参数具有较大的影响,对于半监督学习模型的更新起到重要作用。梯度向量越小,则说明该无标签数据对于模型的参数更新的影响较小。因此在选取预设数量的无标签数据作为聚类中心时,可选取梯度向量大的无标签数据作为聚类中心,以使半监督学习模型根据梯度向量调整模型参数的偏好方向,从而识别出对模型性能影响较大的样本。
[0053] 步骤S30:根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心;
[0054] 在本实施例中,所述距离为欧式距离,表征剩余的待清洗数据与聚类中心对应的无标签数据的相似度。距离越大,待清洗数据与聚类中心的相似度越小,距离越小,待清洗数据与聚类中心的相似度越大。本发明将聚类中心中与待清洗数据的欧式距离最小的聚类中心确定为目标聚类中心。
[0055] 可选地,所述,所述根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心的步骤之后,包括:将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类;根据所述目标聚类对应的所述待清洗数据,更新所述目标聚类的所述目标聚类中心;
[0056] 在所述目标聚类中心收敛时,执行所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤。
[0057] 在本实施例中,确定剩余的待清洗数据对应的目标聚类中心后,将待清洗数据划分至该目标聚类中心对应的目标聚类中,实现聚类。目标聚类每增加一个待清洗数据时,重新确定该目标聚类的目标聚类中心,然后继续根据剩余的待清洗数据与各个聚类中心之间的欧式距离,确定待清洗数据的目标聚类中心,直至各个聚类中的聚类中心收敛时,结束聚类。从而将所有剩余的待清洗数据的分类至对应的聚类中,实现不同数据类型的待清洗数据被分类至对应的聚类中,即同一个聚类的待清洗数据的数据类型相同,不同聚类的待清洗数据之间的数据类型不相同。
[0058] 可选地,在选取各个聚类对应的聚类中心后,获取待清洗数据输入半监督学习模型后,各个待清洗数据对应的全连接层的特征值。然后将剩余的待清洗数据对应的特征值以及聚类中心对应的无标签数据的特征值,输入欧式距离计算公式中,获得剩余的待清洗数据与各个聚类中心的欧式距离。对应的欧式距离D(x)的计算公式如下:
[0059]
[0060] 其中, 为剩余的待清洗数据的特征值, 为聚类中心对应的无标签数据的特征值。
[0061] 可选地,在另一可选实施方式中,所述将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类的步骤之后,包括:删除所述目标聚类中与所述目标聚类中心的距离最小的所述待清洗数据,以去除目标聚类中的冗余数据。所述目标聚类中的待清洗数据与目标聚类中心的距离的最小值,公式如下:
[0062]
[0063] 其中 为目标聚类中的待清洗数据的特征值, 为目标聚类中心的特征值, 为目标聚类中的全部待清洗数据的数量。n为聚类的数量。 表示目标聚类中的待清洗数据与目标聚类中心的欧式距离,公式如下:
[0064]
[0065] 步骤S40:根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗。
[0066] 在本实施例中,在实现所有待清洗数据的聚类之后,根据待清洗数据与目标聚类中心的距离进行降序排序,按顺序选取预设数量的待清洗数据作为目标清洗数据进行清洗。即将与待清洗数据中与目标聚类中心距离最大的待清洗数据作为目标清洗数据进行清洗。可以理解的是,选取的目标清洗数据为各个聚类中差异最大的数据,不同聚类对应的数据类型并不相同,因此选定的目标清洗数据涵盖了所有可能的数据情况,能够一次将待清洗数据进行清洗完毕,提高数据清洗质量和数据清洗效率。
[0067] 可选地,可预先设定清洗比例,进而在聚类结束后,根据待清洗数据的总数量与清洗比例的乘积,确定选定的目标清洗数据的数量,本实施例对此不做具体限定。例如,可将清洗比例设置为10%。
[0068] 在本实施例提供的技术方案中,通过将待清洗数据输入预先训练的预测模型,并获取预测模型输出的预测值以及损失函数,其中,待清洗数据包括标签数据和无标签数据,然后根据无标签数据对应的预测值以及损失函数,从无标签数据中选取预设数量的聚类中心,根据剩余的待清洗数据与各个聚类中心的距离,确定剩余的待清洗数据对应的目标聚类中心,根据待清洗数据与目标聚类中心的距离,从待清洗数据中选定目标清洗数据,并对目标清洗数据进行清洗。由于无标签数据不受任何预先定义的标签或类别限制,可以更好地反映数据的内在结构和相似性,因此以无标签数据作为初始的聚类中心进行分类,使得选定的目标清洗数据,涵盖了所有可能出现的数据情况,达成提高数据清洗质量的技术效果。
[0069] 可选地,在又一可选实施方式中,所述步骤S10之前,包括:对所述待清洗数据进行预处理,其中,所述预处理包括去除重复数据、缺失值处理、数据集划分。
[0070] 在本实施例中,在对待清洗数据进行清洗之前,先进行预处理,提高后续处理的效率。
[0071] 可选地,所述去除重复数据的步骤,包括:从所述样本数据提取关键特征,并对所述关键特征进行编码,获得对应的特征向量;基于预设的相似度度量算法,确定各个特征向量之间的相似度;在所述特征向量的相似度大于相似度阈值时,标记所述特征向量;将被标记的多个相同的特征向量删除,保留一条特征向量。
[0072] 在本实施例中,可使用机器学习算法如决策树、随机森林、梯度提升树等,评估样本数据的各个特征在半监督学习模型中的贡献度,将贡献度待遇阈值的特征作为关键特征。选取关键特征后,可对关键特征进行编码类变量、归一化数值变量处理等,以便进行后续计算。例如,可对关键特征进行独热编码后,进行归一化处理,消除不同关键特征之间的量纲差异。本发明使用余弦相似度作为预设的相似度度量算法。可预先根据业务需求和样本数据特点,设置相似度阈值,用于判断两条特征向量之间是否重复。在特征向量的相似度大于相似度阈值时,判定位重复数据,进而将特征向量进行标记。可通常使用一个额外的字段或标签来对特征向量进行标记,表示重复状态。对标记的特征向量进行合并操作,将其合并为一条记录,并保留合并后的记录作为唯一的代表。即从样本数据中删除被标记的数据,只保留其中一条作为唯一的代表。
[0073] 可选地,在去重后,可通过计算去重前后的标记数量、重复率等指标,评估相似度度量算法的准确性和效果。若准确率较低时,可选用其他的相似度度量算法进行再次去重。例如余弦相似度、编辑距离、Jaccard相似度等。
[0074] 可选地,所述缺失值处理包括:在确定特征向量中的缺失值后,根据缺失值的数据类型所关联的插值算法,对所述缺失值进行填充。
[0075] 在本实施例中,在特征向量为数值型特征时,关联的插值算法为中值插补算法,对缺失值进行填充。在样本数据为离散型特征时,关联的插值算法为众数插补算法,利用关键特征向量的众数填充缺失值。
[0076] 可选地,在一些可选实施方式中,在特征向量为数值型特征时,采用均值插补算法,本实施例对此不做具体限定。
[0077] 可选地,在一些可选实施方式中,在缺失值携带有数据信息时,通过利用缺失值作为目标变量,将样本数据分为有缺失和无缺失两部分,分别进行建模和预测,根据预测值对缺失值进行填充,本实施例对此不做具体限定。
[0078] 在本实施例提供的技术方案中,在将待清洗数据输入预测模型前,通过对待清洗数据进行预处理,去除数据中的错误、重复或不完整的部分,避免对半监督学习模型产生干扰,降低半监督学习模型的预测准确率。
[0079] 参照图2,在第二实施例中,基于第一实施例,所述步骤S10之前,还包括:
[0080] 步骤S50:获取训练的样本数据,将所述样本数据作为节点,将所述样本数据之间的相似度作为边关系,其中,所述样本数据包括标签数据和无标签数据,所述标签数据对应的节点为标签节点,所述无标签数据对应的节点为无标签节点;
[0081] 步骤S60:根据所述节点和所述边关系构建图结构;
[0082] 在本实施中,样本数据包括标签数据和无标签数据。标签数据可预先进行标记,或者直接获取包括标记有标签的标签数据作为样本数据,本实施例对此不做具体限定。为提高半监督学习模型的预测准确率,预先对半监督学习模型进行训练,从而提高半监督学习模型的性能。通过获取训练的样本数据,并提取样本数据的样本特征,作为节点。并根据距离度量、核函数等方法来确定样本数据之间的相似性,从而根据样本数据之间的相似性构建各个样本数据之间的边关系。然后根据边关系将各个样本数据对应的样本特征进行连接,从而构建样本数据对应的图结构。
[0083] 步骤S70:根据所述图结构的边关系,将所述标签节点的标签信息传播至所述无标签节点;
[0084] 在本实施例中,根据图结构中边关系将标签节点的标签信息传播至无标签节点中,在标签信息传播到无标签节点时,根据接收到的标签信息预测当前无标签节点对应的标签,并将当前无标签节点的标签信息进行更新后,继续传播至下一节点。
[0085] 可选地,可基于标签传递矩阵(Label Propagation Matrix)或相似性矩阵来计算节点之间的标签传播程度。将标签节点作为初始条件,构建出一个标签传递矩阵或相似性矩阵。该矩阵反映了不同节点之间的相似性或关系程度。然后,通过迭代更新每个节点的标签信息,并且利用相邻节点的标签信息和相似性矩阵来推理当前节点的标签信息。这样标签信息就可以逐步扩散到整个图上,最终达到收敛状态。
[0086] 步骤S80:基于所述标签节点的所述标签信息和所述标签数据,构建并训练所述预测模型。
[0087] 在本实施例中,在根据图结构的边关系,将标签节点的标签信息传播至无标签节点至收敛时,基于传播后的标签信息和有标签节点的标签信息输入预设的分类器进行训练,从而实现半监督学习模型的构建和训练。通过将无标签数据的真实标签与预测的标签进行比较,确定半监督学习模型预测的准确率,从而调整半监督学习模型的模型参数,提高半监督学习模型的性能。
[0088] 可选地,可采用向量机(SVM)、逻辑回归(Logistic Regression)、朴素贝叶斯分类器等作为预设的分类器,本实施例对此不做具体限定。
[0089] 可选地,在完成半监督学习模型的构建和训练之后,后续在对无标签数据进行标记时,可将其输入半监督学习模型进行预测,而无需进行人工标注,提高标注的准确率和效率。
[0090] 可选地,可通过调整图结构的构建方式、相似性度量方法、传播算法等参数来优化半监督学习模型的性能。同时,可以采用正则化或降维等方法来约束模型的复杂性和防止半监督学习模型的过拟合现象。
[0091] 在本实施例提供的技术方案中,通过获取训练的样本数据,将样本数据作为节点,将样本数据之间的相似度作为边关系,其中,样本数据包括标签数据和无标签数据,标签数据对应的节点为标签节点,无标签数据对应的节点为无标签节点,然后根据节点和边关系构建图结构,根据图结构的边关系,将标签节点的标签信息传播至无标签节点,基于标签节点的标签信息和标签数据,构建并训练预测模型,使得预测模型在预测时能够提高预测的准确率。
[0092] 参照图3,在本实施例中,基于上述任一实施例,所述步骤S40之后,包括:
[0093] 步骤S90:获取所述预测模型对应的召回率和/或准确率,在所述召回率和/或准确率小于预设阈值时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤;和/或,
[0094] 在本实施例中,可通过计算半监督学习模型的召回率和/或准确率,根据召回率和/或准确率,确定是否需要继续进行数据清洗。
[0095] 可选地,在对目标清洗数据进行清洗后,可对无标签数据进行标注,获取无标签数据的实际标签,并将无标签数据的实际标签与半监督学习模型预测的标签进行比较,确定半监督学习模型预测正确的数量,以及半监督学习模型预测错误的数量,预测正确的数量为正例,预测错误的数量为负例,从而计算预测正确的数量和预测错误的数量的总和,将预测正确的数量与总和的比值,作为半监督学习模型的召回率。
[0096] 可选地,可将无标签数据的实际标签与半监督学习模型预测的标签进行比较,确定半监督学习模型预测正确的数量,从而将预测正确的数量与无标签数据的数量总和的比值,作为半监督学习模型预测的准确率。
[0097] 在本实施例中,预先设置有召回率和/或准确率对应的阈值,在召回率和/或准确率小于预设阈值时,继续进行迭代,再次清洗,提高待清洗数据的清洗质量。直至半监督学习模型预测的召回率和/或准确率大于预设阈值时,表征待清洗数据的清洗结束,将清洗后的待清洗数据输出。
[0098] 步骤S100:在所述目标清洗数据的数量小于预设清洗数量时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤。
[0099] 在本实施例中,在选定的目标清洗数据的数量小于预设清洗数量时,表征数据清洗不够完全,将清洗后输出的待清洗数据继续输入预测模型中,进行数据的清洗,直至最终清洗的目标清洗数据的数量达到预设清洗数量时,结束待清洗数据的清洗,并将清洗后的待清洗数据输出。
[0100] 需要说明的是,上述判断是否需要进行数据清洗的迭代的方式,可根据实际需求进行自主选择,本实施例对此不做具体限定。
[0101] 可选地,所述获取所述预测模型对应的召回率和/或准确率的步骤之后,还包括:根据所述召回率和/或准确率,确定所述预测模型的评估结果;根据所述评估结果,更新所述预测模型的模型参数。
[0102] 在本实施例中,在获取半监督学习模型的召回率和/或准确率后,可生成半监督学习模型的评估结果,并进行输出,以使维护人员根据评估结果更新半监督学习模型的模型参数,提高半监督学习模型预测的准确率。
[0103] 需要说明的是,本发明提出的一种数据清洗方法,结合了半监督学习和主动学习的优点,并通过自适应选择和修复方法来优化数据清洗过程。本发明的方法可以大大减少人力和时间成本,并提高数据清洗质量和效率,具有广泛的应用前景和商业价值。
[0104] 本发明的方法可以应用于各种领域的数据清洗场景,包括但不限于商业、科研、医疗、金融等领域。在商业领域,本发明的方法可以用于企业数据的预处理和清洗,提高数据分析和挖掘的效率和准确性。在科研领域,本发明的方法可以用于数据清洗和修复,提高实验数据的可靠性和科研成果的可复现性。在医疗领域,本发明的方法可以用于医疗数据的清洗和修复,提高医疗数据的准确性和安全性。在金融领域,本发明的方法可以用于金融数据的清洗和修复,提高金融数据的准确性和可信度。
[0105] 在本实施例提供的技术方案中,通过获取预测模型对应的召回率和/或准确率,在召回率和/或准确率小于预设阈值时,继续执行将待清洗数据输入预先训练的预测模型,并获取所预测模型输出的预测值以及损失函数的步骤;和/或,在目标清洗数据的数量小于预设清洗数量时,继续执行将待清洗数据输入预先训练的预测模型,并获取预测模型输出的预测值以及损失函数的步骤,提高待清洗数据的清洗质量。
[0106] 参照图4,图4为本发明实施例方案涉及的硬件运行环境的终端结构示意图。
[0107] 本发明实施例终端可以是手机、电脑、服务器,本实施例对此不做具体限定。
[0108] 如图4所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。
用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard)、鼠标等,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI‑FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non‑volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
[0109] 本领域技术人员可以理解,图4中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0110] 如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据清洗程序。
[0111] 在图4所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的数据清洗程序,并执行以下操作:
[0112] 将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数,其中,所述待清洗数据包括标签数据和无标签数据;
[0113] 根据所述无标签数据对应的预测值以及所述损失函数,从所述无标签数据中选取预设数量的聚类中心;
[0114] 根据剩余的所述待清洗数据与各个所述聚类中心的距离,确定剩余的所述待清洗数据对应的目标聚类中心;
[0115] 根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗。
[0116] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0117] 根据所述无标签数据对应的预测值以及所述损失函数,确定所述无标签数据对应的梯度向量;
[0118] 将满足预设条件的梯度向量对应的无标签数据作为所述聚类中心。
[0119] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0120] 将剩余的所述待清洗数据划分至所述目标聚类中心所属的目标聚类;
[0121] 根据所述目标聚类对应的所述待清洗数据,更新所述目标聚类的所述目标聚类中心;
[0122] 在所述目标聚类中心收敛时,执行所述根据所述待清洗数据与所述目标聚类中心的距离,从所述待清洗数据中选定目标清洗数据,并对所述目标清洗数据进行清洗的步骤。
[0123] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0124] 删除所述目标聚类中与所述目标聚类中心的距离最小的所述待清洗数据。
[0125] 获取剩余的所述待清洗数据在所述预测模型的全连接层的特征值,并根据所述特征值,确定剩余的所述待清洗数据与各个所述聚类中心的距离;
[0126] 将与所述待清洗数据的距离最小的聚类中心,作为所述待清洗数据对应的所述目标聚类中心。
[0127] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0128] 获取训练的样本数据,将所述样本数据作为节点,将所述样本数据之间的相似度作为边关系,其中,所述样本数据包括标签数据和无标签数据,所述标签数据对应的节点为标签节点,所述无标签数据对应的节点为无标签节点;
[0129] 根据所述节点和所述边关系构建图结构;
[0130] 根据所述图结构的边关系,将所述标签节点的标签信息传播至所述无标签节点;
[0131] 基于所述标签节点的所述标签信息和所述标签数据,构建并训练所述预测模型。
[0132] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0133] 获取所述预测模型对应的召回率和/或准确率,在所述召回率和/或准确率小于预设阈值时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤;和/或,
[0134] 在所述目标清洗数据的数量小于预设清洗数量时,继续执行所述将待清洗数据输入预先训练的预测模型,并获取所述预测模型输出的预测值以及损失函数的步骤。
[0135] 进一步地,处理器1001可以调用存储器1005中存储的数据清洗程序,还执行以下操作:
[0136] 根据所述召回率和/或准确率,确定所述预测模型的评估结果;
[0137] 根据所述评估结果,更新所述预测模型的模型参数。
[0138] 此外,本发明为实现上述目的,本发明还提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据清洗程序,所述数据清洗程序被所述处理器执行时实现如上所述的数据清洗方法的步骤。
[0139] 此外,本发明为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据清洗程序,所述数据清洗程序被处理器执行时实现如上所述的数据清洗方法的步骤。
[0140] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0141] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0142] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机、电脑、服务器)执行本发明各个实施例所述的方法。
[0143] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。