CN114175007A - 用于数据匹配的主动学习 - Google Patents
用于数据匹配的主动学习 Download PDFInfo
- Publication number
- CN114175007A CN114175007A CN202080053513.2A CN202080053513A CN114175007A CN 114175007 A CN114175007 A CN 114175007A CN 202080053513 A CN202080053513 A CN 202080053513A CN 114175007 A CN114175007 A CN 114175007A
- Authority
- CN
- China
- Prior art keywords
- data points
- subset
- data
- unlabeled
- unlabeled data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明方法包括:a)使用当前带标记数据点集合来训练机器学习模型,每个数据点都是多个数据记录,其中数据点的标记指示数据点的分类,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型。b)可以使用当前未标记数据点集合的分类结果从当前未标记数据点集合中选择未标记数据点的子集。c)可以将未标记数据点的子集提供给分类者并且响应于所述提供而接收未标记数据点的子集的标记。可以使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至c)。
Description
背景技术
本发明涉及数字计算机系统领域,尤其涉及一种用于匹配数据的方法。
文书记录是给定匹配过程不能确定它们是否彼此是重复的记录并因此应当合并的记录,或者一个或多个是否应当视为不匹配并因此应当彼此分开保存的记录。这些文书记录可能需要用户干预才能更仔细地查看数据记录的值。尽管为自动化和改进记录匹配过程的巨大努力,这些文书记录的数量仍在不断增加(例如,其可以是数百万个文书记录)。这导致大部分文书记录很长时期得不到处理,在此期间系统配置中可能会使用不一致的数据。
发明内容
如独立权利要求的主题所述的各种实施例提供了用于匹配数据的方法、计算机系统和计算机程序产品。在从属权利要求中描述了有益的实施例。本发明的实施例在不相互排斥的情况下可以彼此自由组合。
在一个方面,本发明涉及一种用于匹配数据集的数据记录的方法,所述数据记录具有属性集合的值,所述方法包括:
a)使用当前带标记数据点集合来训练机器学习模型,数据点中的每个数据点都是多个数据记录,其中,数据点的标记指示数据点的分类,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用用经过训练的机器学习模型对当前未标记数据点集合进行分类的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d);
e)使用经过训练的机器学习模型来对数据集的数据点进行分类。
在另一方面,本发明涉及一种用于匹配数据集的数据记录的计算机系统,所述数据记录具有属性集合的值,所述计算机系统被配置成用于:
a)使用当前带标记数据点集合来训练机器学习模型,数据点是多个数据记录,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用经过训练的机器学习模型对未标记数据点集合的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d);
e)使用经过训练的机器学习模型来对数据集的数据点进行分类。
在另一方面,本发明涉及一种用于去重系统的主动学习器,被配置成用于:
a)使用当前带标记数据点集合来训练机器学习模型,数据点是多个数据记录,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用经过训练的机器学习模型对未标记数据点集合的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d)。
在另一方面,本发明涉及一种包括计算机可读存储介质的计算机程序产品,该计算机可读存储介质具有随其包含的计算机可读程序代码,该计算机可读程序代码被配置成实现根据前述各实施例的方法的所有步骤。
该方法可以实现主动学习,其中,在迭代训练过程中控制训练数据的生成。术语“主动学习”在此指通过本方法主动生成训练数据以便训练机器学习模型。这可以使得能够找到有价值的和/或富有信息的记录并且将这些记录迭代地添加到训练集。例如,针对给定的输入数据点,经过训练的机器学习模型可以输出分类结果。分类结果包括与输入数据点属于一个或多个类别中的每一个的概率相关联的一个或多个类别的指示。例如,类别“相同”的概率越高,数据点的记录之间的匹配程度越高,反之亦然。并且,类别“不同”的概率越高,数据点的记录之间的匹配程度越低,反之亦然。
本主题可能是有有益的,因为它可以通过利用使用较少数据用于训练的主动学习技术来实现数据点的准确分类,同时节省处理资源。这可防止将大量计算资源在大数据集上进行可能会花费数天的训练。本方法可以使用使得能够为执行记录匹配而标识有价值的数据的数据子集。
例如,使用分类结果,可以选择分类最不确定的数据点。例如,可以选择具有遵循预定义结构的概率分布的数据点。为此,可以绘制未标记数据点的概率并可以基于未标记数据点的分布从例如用户接收对选定未标记数据点子集的选择。例如,如果以很高的概率知道数据点类别,则这可能表明经过训练的模型已经很好地学习了对这种类型的数据点的分类。由此,通过选择最不确定的数据点,可以更好地训练模型来学习新数据类型。
附图说明
以下参考附图仅通过举例更详细地解释本发明的实施例,在附图中:
图1描绘了示例性计算机系统的框图表示。
图2是根据本公开的示例的用于匹配数据集的数据记录的方法的流程图。
图3是用于训练机器学习模型的子集的主动学习的方法的流程图。
图4描绘了示例性计算机系统的框图表示。
图5表示适于实现本公开中所涉及的一个或多个方法步骤的计算机化系统。
具体实施方式
本发明的各种实施方式的描述是为了说明的目的而给出的,但并不旨在是穷尽性的或限于所公开的实施方式。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域普通技术人员将是显而易见的。这里使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解这里公开的实施例。
数据集是一个或多个数据记录的集合。例如,数据集可以以包含在文件中的相关记录的集合的形式来提供。例如,数据集可以是包含班级中的所有学生的记录的文件。数据集可以是例如数据库的表或Hadoop文件系统的文件等。在另一示例中,数据集可包括文档,诸如HTML页面或其他文档类型。该文档可以例如包括患者的数据。
数据记录或记录是诸如特定用户的姓名、出生日期和班级的相关数据项的集合。记录表示一个实体,其中,实体是指关于其信息被存储在记录中的用户、对象或概念。术语“数据记录”和“记录”可互换地使用。数据记录可以作为具有关系的实体被存储在图形数据库中,其中,每个记录可以被分配给具有属性为诸如姓名、出生日期之类的属性值的图的一个节点或顶点。在另一示例中,数据记录可以是关系数据库的记录。
数据集可以例如在由本方法处理之前从一个或多个数据源接收。处理过的记录例如可以存储在数据库系统的中央储存库中。中央储存库可以是存储从多个客户端系统接收的数据的数据储存器、存储器或数据库。另外或替代地,数据集可包括为了由本方法处理而标识或选择的计算机系统的现有记录。例如,可以接收对数据集的记录的用户选择。数据集的记录可以例如在由本方法处理之前被预处理。预处理可例如包括转换数据集的记录的属性值的格式。例如,可以将属性值转换成大写,可以将属性值的噪声字符(诸如-./字符)移除。可以将匿名属性值(如city=nowhere或first name=Test)移除,并且可以执行属性值的字映射,以将给定属性值映射到对应的预定义值(在将St.映射到Street之后,St.变成Street)。
记录的匹配包括比较记录的属性值。匹配的记录(可合并记录)是代表同一实体的记录。两个记录的匹配程度表示两个记录的属性值的相似程度。
数据点是指两个或更多个记录。数据点的类别可以是“相同”或“不同”类别,意味着数据点的记录分别代表相同的实体或不同的实体。经标记的数据点是与对数据点进行分类而得到的类别(例如“相同”或“不同”)相关联的数据点。未标记数据点是不与类别相关联的未分类的数据点。未分类的数据点可以包括文书记录。
根据一个实施例,该方法进一步包括以下之一:使用数据集的数据点的分类来对数据集的数据记录进行去重(deduplication);基于数据集的数据点的分类来合并或保持数据集的每个数据点的单独数据记录。数据集的数据点的分类由经过训练的机器学习模型来执行。
例如,基于已经被分配给数据集的每个数据点的类别,可以决定对分类为“相同”—意味着它们表示相同的实体—的数据点进行去重。在另一个示例中,可以将属于类别“相同”的每个数据点的记录合并为一个记录,例如金记录。通过使用经过训练的模型来对记录进行分类,本方法可以通过对数据集的记录进行去重或合并来高效且可靠地处理这些记录。该处理可能是有效的,因为它可以防止可能因记录的不准确分类而导致的不必要的去重操作。
根据一个实施例,该方法还包括使用数据集的数据点的分类来存储数据集的去重的数据记录。数据集的数据点的分类由经过训练的机器学习模型来执行。该实施例可通过避免存储不必要的数据而节省处理资源(诸如存储资源),同时在记录的去重或合并之后数据内容可以是相同的。
根据一个实施例,在步骤e)中使用的经过训练的机器学习模型是由步骤a)-d)的多次迭代产生的经过训练的机器学习模型。
例如,迭代次数可以是用户预定义的次数,例如,2次或3次迭代。在另一个示例中,迭代次数可以自动选择,例如,随机地选择。在另一个示例中,在接收到执行步骤e)的请求时,由在接收的请求之前的最后迭代产生的训练模型可以用于步骤e)。
该实施例可以使得能够在执行模型的训练的同时使用经过训练的机器学习模型。这可以实现经过训练的模型的有效训练和推断过程。
根据一个实施例,重复执行达预定义的迭代次数或直到未标记数据点集合包括数量小于预定义最小数量的数据点。
该实施例可以实现训练机器学习模型的受控和自动过程。
根据一个实施例,步骤d)包括响应于确定未标记数据点集合包括数量小于预定义最小数量的数据点,等待直到未标记数据点集合包括数量高于或等于重复步骤a)至d)的预定义最小数量的数据点。
该实施例在数据记录几乎连续进入系统的诸如MDM系统的大型系统中尤其有利。在这种情况下,训练的连续迭代执行可能是有利的,因为在使用更多的数据的同时,经过训练的模型得到改进。改进的训练模型意味着准确的分类结果,而准确的分类结果可以使得能够获得可靠的记录处理结果。
根据一个实施例,该方法进一步包括接收另外的未标记数据点,其中当前未标记数据点集合加上所接收的另外的未标记数据点变成当前未标记数据点集合。本实施例可以通过使用更多数据来进一步改进经过训练的机器学习模型。
根据一个实施例,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用属性集合的第一属性子集对未标记数据点的中间子集的数据点进行聚类(clustering),从而产生多个群集(cluster);针对该多个群集中的每个群集,标识与群集的质心(centroid)最接近的数据点,其中所述未标记数据点的子集包括所标识的最接近的数据点。
所述进行聚类使得能够发现未标记数据点的中间子集内的相似实例的群组(groups)。例如,每个群集多于一个的数据点可能不会显著改进模型的训练,并且使用质心可能是有益的,因为它可能是群集的可靠表示。此外,选择最接近多个群集的质心的点可以使得能够找到非常不同的点。这可以帮助机器学习来训练更好的模型。为了由数据管理员进行标记,可以对这些经聚类的点进行优先级排序。
该选择可以例如使用抽样函数来执行。使用抽样函数,可以对当前未标记数据点集合进行排名(ranked)。未标记数据点的中间子集包括排名前X个的数据点。所述进行排名可以根据重要性和数据点对当前经过训练的学习模型增加其准确度的有益程度来进行排名。所述聚类可以使用数据点的中间子集的所有数据点来进行。在另一示例中,可以为中间子集中具有相同排名的数据点单独地进行所述聚类。
根据一个实施例,所述选择未标记数据点的子集还包括:使用分类结果对当前未标记数据点集合的数据点进行排名,使用属性集合的第一属性子集对当前未标记数据点集合的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的最接近的数据点,其中针对当前未标记数据点集合中具有相同排名的数据点单独地进行所述聚类。
例如,当前未标记数据点集合的可能有多个相同排名的数据点,例如所有这些点对于当前模型是同样有益的,从这些点中选择中间子集可能成为挑战。在此实例中,可以不需要提供中间子集,而是可以对当前未标记数据点集合中具有相同排名的数据点进行聚类。这可以使得能够获得进一步用于训练的选定择数据点。
根据一个实施例,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的第一中间子集,使用描述数据点的元数据参数从未标记数据点的第一中间子集中选择未标记数据点的第二中间子集,使用属性集合的第一属性子集对未标记数据点的第二中间子集的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的数据点
根据一个实施例,选择未标记数据点的子集还包括:使用分类结果对当前未标记数据点集合的数据点进行排名,使用描述数据点的元数据参数对具有相同排名的数据点进行进一步排名,所述排名和所述进一步排名得到经排名的当前未标记数据点集合,使用属性集合的第一属性子集对当前未标记数据点集合的数据点进行聚类,从而得到多个群集;其中针对当前未标记数据点集合中具有相同排名的数据点单独地进行聚类,针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的数据点。
根据一个实施例,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用描述数据点的元数据参数从未标记数据点的中间子集中选择未标记数据点的子集。
根据一个实施例,选择未标记数据点的子集还包括:使用分类结果对当前未标记数据点集合的数据点进行排名,使用描述数据点的元数据参数对具有相同排名的数据点进行进一步排名,所述排名和进一步排名得到经排名的当前未标记数据点集合,其中未标记数据点的子集包括具有前K个排名的数据点,其中K是预定义数目。
可以使用随机抽样法、边际抽样法、熵抽样法和不一致抽样法的其中之一来进行所述排名。
这些实施例可以实现多层次的选择过程,其中组合了不同类型的选择以便获得用于进一步训练机器学习模型的最有价值的记录子集。这三种选择中的每一个都基于不同的标准。例如,第一种选择基于记录的分类结果,第二种选择基于记录在多维属性值空间中的分布,第三种选择基于偏好的用户记录。
根据一个实施例,元数据参数包括以下至少一个:数据点的最后修改时间;以及数据点的用户优先级值。
根据一个实施例,该方法进一步包括使用属性集合的第二属性子集对所接收的数据点进行聚类,从而产生多个群集;针对该多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点集合包括所标识的数据点。这可以进一步改进训练过程并且可以提高由经过训练的模型作出的预测的准确度。
根据一个实施例,第二属性子集与第一属性子集相同或不同。
根据一个实施例,第一属性子集是第二属性子集的部分属性。
根据一个实施例,接收未标记数据点的子集的标记进一步包括接收第一属性子集的指示。
根据一个实施例,使用随机抽样法、边际抽样法、熵抽样法和不一致抽样法之一来执行选择。在一个示例中,对于该方法的每个当前迭代,可以使用不同于在上一次迭代中使用的抽样法的抽样法。例如,如果该方法被重复两次,在第一次执行中,可以将随机抽样法用于选择步骤,第一次迭代可以将边际抽样法用于选择步骤,第二次迭代可以将不一致抽样法用于选择步骤。
根据一个实施例,所述选择包括对当前未标记数据点集合进行排名,以及选择前K个排名的数据点。例如,可以对数据点按差异概率的升序进行排名,并可以选择前K个排名的数据点。K可以是预定义数目,例如10。数据点的差异概率是数据点是类别“相同”的概率与数据点是类别“不同”的概率之间的差。
图1描绘了示例性计算机系统100。计算机系统100可以例如被配置得用于执行主数据管理和/或数据仓储。例如,计算机系统100可以启用去重系统。计算机系统100包括数据集成系统101和一个或多个客户端系统或数据源105A-N(统称为105)。客户端系统105可以包括计算机系统(例如,如参考图5所描述的)。数据集成系统101可以控制对中央储存库103的访问(读和写访问等)。该存储系统可以包括中央储存库103。
数据集成系统101可以处理从客户端系统105接收的记录并且将这些数据记录存储到中央储存库103中。客户端系统105可经由网络连接与数据集成系统101通信,该网络连接包括例如无线局域网(WLAN)连接、WAN(广域网)连接LAN(局域网)连接或其组合。
存储在中央储存库103中的数据记录可以具有预定义数据结构107,如具有多个列和行的数据表。该预定义数据结构可包括一个属性集合109A-P(例如,代表数据表107的列的每个属性)。在另一示例中,数据记录可作为具有关系的实体而存储在图形数据库中。该预定义数据结构可以包括图结构,其中每个记录可以被分配给图的一个节点。虽然本示例是以为数不多属性来描述的,但是可以使用更多或更少的属性。属性集合109A-P可以例如在接收数据记录时被动态更新或确定。例如,如果某个被接收到的数据记录具有不是属性集合109A-P的一部分的新属性,则可以将该新属性添加到属性集合109A-P中。在另一示例中,属性集合109A-P可以基于指示客户端系统105所使用的所有属性的历史数据来确定。
例如,客户端系统105可以被配置得提供或创建可具有或不具有相同数据结构107的数据记录。从客户端系统105接收的每个记录的属性,可以是所有属性109A-P,或者是属性109A-P的一部分。例如,可以将客户端系统105配置得提供XML或JSON格式或其它能够将属性与对应属性值关联的格式的记录,其中,属性109A-P的至少一部分以XML格式与各自的值相关联。
每个客户端系统105可以被配置得用于将所创建的数据记录发送至数据集成系统101,以便在根据本公开的示例方法进行处理之后存储在中央储存库103上。在处理之前,所接收的记录可以例如由数据集成系统101转换成数据结构107的格式。
在一个示例中,数据集成系统101可以使用一个或多个提取-转换-加载(ETL)批处理或经由超文本传输协议(“HTTP”)通信或经由其他类型的数据交换从客户端系统105导入数据记录。数据集成系统101和/或客户端系统105可以与例如个人计算机(PC)、服务器和/或移动设备相关联。
由数据集成系统101从客户端系统105接收的每个数据记录,可以具有或可以不具有属性集合109A-P的所有值。例如,某个数据记录可以有该属性集合的一个属性子集的值,没有其余属性的值。在一个示例中,一旦被存储在存储库103中,没有值的其余属性可以保持为空。换言之,由客户端系统105提供的记录具有不同的完整性。完整性是包含数据值的数据记录的属性数与属性集合109A-P中的属性总数的比率。
数据集成系统101可被配置为使用一个或多个算法(诸如实现本方法的至少一部分的算法120)来处理所接收的记录。例如,根据本公开,数据集成系统101可以使用算法120来处理从客户端系统105接收的数据记录,以便找到代表相同实体或重复记录的记录对。
图2是用于匹配数据集的数据记录的方法的流程图。数据记录具有属性集合的值。为了简化的目的,将参见图1描述图2的方法,但是不限于此。
记录的匹配包括比较记录的属性值。匹配的记录是代表同一实体(同一人)的记录,不同的记录则可能是不同实体的。两个记录的匹配程度表明该两个记录的属性值的相似程度。被匹配或比较的记录可以针对单个数据点。即,如本文所使用的数据点是指要针对彼此进行匹配或比较以确定它们是代表相同实体还是代表不同实体的记录。数据集可包括多个数据点。
数据集可包括数据记录。数据集可以例如在数据集成系统101处从客户端系统105中的一个或多个接收。在另一个示例中,数据集可以是诸如有待按照本发明主题进行分类的中央储存库的一个或多个数据库的现有数据集。
数据集的数据记录可例如具有属性109A-P的至少一部分。数据集的数据记录可以具有或可以不具有数据结构107。如果所接收的数据记录具有与预定义结构107不同的结构,则可以执行一个变换过程,以便将数据集的记录的结构变换成数据结构107。
为了以最优方式对数据集的数据点进行分类,可以采用如本文中通过步骤201-205的至少一部分所述的主动学习。
可以在步骤201中使用当前带标记数据点集合来训练机器学习模型。当前带标记数据点集合中的每个数据点可以与指示该数据点是属于同一实体还是属于不同实体的相应标记相关联。例如,标记可以具有“相同”或“不同”的两个值。标记因此指示它所关联的数据点的分类。步骤201可以产生经过训练的机器学习模型,其被配置为将数据点分类为代表同一实体或不同实体。例如,通过将数据点输入到经过训练的机器学习模型,经过训练的机器学习模型可以输出指示输入数据点的分类的分类结果。分类结果可以进一步包括指示输入数据点有多大可能被分类为“相同”和“不同”的某一类别的概率值。
本方法可以是有利的,因为在步骤201的第一次执行中使用的当前带标记数据点集合可能包括为数不多或少量的数据点,对于数据集的分类来说仍然是有用的。这可以通过以下事实来实现:当前带标记数据点集合中的数据点的数量可以通过如本文中所述的方法逐渐增加,并且,对于每个新的或更新的当前带标记数据点集合,由经过训练的机器学习模型进行的分类可以得到改善。
在一个示例中,机器学习模型可以是随机森林(Random Forest)。
在步骤203中,可以从当前未标记数据点集合中选择一个未标记(或未分类)数据点的子集。可以使用用经过训练的机器学习模型对当前未标记数据点集合进行分类的分类结果,来执行对未标记数据点的子集的选择。可以例如通过将当前未标记数据点集合输入到经过训练的机器学习模型来执行对当前未标记数据点集合的分类。响应于向经过训练的机器学习模型输入当前未标记数据点集合,可以接收当前未标记数据点集合的分类结果。例如,对于当前未标记数据点集合中的每个输入数据点,可以接收该输入数据点的分类结果。
基于未分类数据点对于经过训练的机器学习模型有多有益来执行步骤203的选择。例如,使用分类结果,可以选择分类最不确定的数据点。例如,可以选择具有遵循预定义结构的概率分布的数据点。为此,可以绘制未标记点的概率,并且基于数据点的分布,它们可能被选择或可能不被选择。例如,如果以很高的概率知道数据点类别,则这可能表明经过训练的模型已经很好地学习了对这种类型的数据点的分类。由此,通过选择最不确定的数据点,可以更好地训练模型,因此经过训练的模型可以准确。例如,通过边际抽样法获得的最不确定的数据点可能比其他数据点更有利于训练。
在一个示例中,对未标记数据点的子集的选择可以使用随机抽样法来执行。例如,可以在当前未标记数据点集合的分类结果中,随机地选择分类结果的一个子集。所选择的分类结果子集包括当前未标记数据点集合的特定未标记数据点的分类结果。特定未标记数据点可以是所选择的未标记数据点子集。
在另一示例中,可以使用边际抽样法来执行对未标记数据点的子集的选择。边际抽样法可以使用当前未标记数据点集合的分类结果的概率值。这些概率值用于基于数据点被分类到任何类别中的相同/相似概率来选择最不确定的数据点。例如,使用边际抽样法,可以对数据点进行排名,从而使得它们的排名反映分类的不确定性。未标记数据点的子集是N个最不确定的数据点。例如,如果相同数据点是相同排名的,则将它们计入所选择的N个数据点(例如如果N=4),该排名表明3个数据点具有相同排名1,1个数据点具有排名2,5个数据点具有排名3,则所选择的前4个不确定数据点为具有相同排名1的3个数据点加上具有排名2的1个数据点。
在另一示例中,可以通过提示用户当前未标记数据点集合的分类结果并请求执行选择,来执行未标记数据点子集的选择。响应于该提示,可以接收指示未标记数据点的子集的数据或信息。例如,用户可执行概率值分布的分析,以便决定选择哪个子集。
在选择未标记数据点的子集之后,可以通过从当前未标记数据点集合排除或移除所选择的未标记数据点子集来更新当前未标记数据点集合。这可导致当前未标记数据点集合具有减少了数目的记录。
在步骤205,可以向分类者提供未标记数据点的子集,并且可以响应于该提供而接收未标记数据点的子集的标记。例如,可以请求或查询管理员(分类者是管理员)以基于他或她的经验来执行对未标记数据点子集的分类。例如,对于未标记数据点子集中的每个数据点,管理员可以比较该数据点的记录的属性值。可以接收他或她的比较的结果。
因此,本方法使用步骤203和205获得进一步的带标记数据点。这可以使得能够增大或增强当前带标记数据点集合。例如,可以将该带标记数据点的子集可以添加到当前带标记数据点集合,以形成用于本方法的下一次迭代的当前带标记数据点集合。该当前带标记数据点集合可以用于重复步骤201-205。在步骤201-205的每次当前迭代中,可以使用从上一次迭代中得到的经过训练的机器学习模型。
在一个示例中,针对每个当前未标记数据点集合重复地执行步骤201-205达预定义的迭代次数,或者直到未标记数据点集合包括数量小于预定义最小数量的数据点。
在另一示例中,响应于确定未标记数据点集合包括数量小于预定义最小数量的数据点,可以等待一次,直到未标记数据点集合包括的数据点的数量高于或等于重复步骤201-205的预定义最小数量。
经过训练的机器学习模型可以在步骤207中用于对数据集的所有数据点进行分类。在步骤207中使用的经过训练的机器学习模型可以是从步骤201-205的预定义次数的迭代产生的经过训练的机器学习模型。例如,一旦用户确信模型已经被充分训练,他或她就可以决定使用经过训练的机器学习模型。经过训练的机器学习模型的使用可以不影响或中断由步骤201-205的迭代所实现的主动学习过程。
数据集的数据点的分类可以使得能够执行实体解析(ER)。ER是用于通过使用已经分配给数据集的数据点的类别来标识数据集的已分类数据点中相同的现实世界数据的过程。
图3是用于训练机器学习模型的子集的主动学习方法的流程图。为了简化描述,将参考图4的计算机系统400来描述图3。
在步骤300中,可以从匹配引擎401接收初始任务列表。初始任务列表可以例如存储在任务数据库402中。匹配引擎可以例如是概率匹配引擎(PME)。初始任务列表包括M个任务,其中M个任务中的每个任务与一个数据点相关联。数据点包括记录,并且数据点的任务可能需要匹配数据点的记录。由此,在下文中,术语数据点和任务可互换地使用。这些记录可以具有属性集合。初始任务的记录可以由PME引擎通过使用作为属性集合的一部分的PME属性来获得。
在步骤301中,可以执行对M个任务的初始聚类,以选择最靠近质心的N个任务。为此,可使用属性集合的第一属性子集来对M个任务进行聚类。这可导致多个群集。针对多个群集中的每个群集,可以识别离群集的质心最近的任务。这导致N个任务。可以例如由计算机系统400的机器学习组件403来执行聚类。
在步骤302中,数据管理员用类别“相同”或“不同”将N个任务进行分类。例如,在选择N个任务时,使用用户界面(UI)404来请求或提示管理员执行步骤302和303。
在步骤303中,数据管理员对属性集合进行排名。步骤302和303的结果,可以例如通过UI 404在机器学习组件403接收。
在查询步骤304中,可以确定排名后的属性是否由PME引擎用于获得初始任务。如果是,可以执行步骤305-310,否则,可以执行步骤312-313。
在步骤305中,可以至少使用该N个分类的任务来训练机器学习模型。在一个示例中,可以使用包括K个任务的初始训练集。在这种情况下,在步骤305中,初始训练集可以增加N个任务,并可以使用N+K个任务来执行训练。
例如,可以确定(查询步骤306)在选择初始列表中的N个任务之后是否有任务剩余,例如可以确定M-N是否不为零。
如果有任务剩余,则可以在步骤307中基于数据管理员决定使用M-N个任务来执行主动学习。这可导致L个任务,其中L<=M-N。例如,可以基于抽样函数对M-N个任务进行排名。抽样函数可以例如包括随机抽样、熵抽样、边际抽样和不一致抽样,但是不限于此。
此外,在步骤308中,还可以使用指示要选择哪个数据的商业规则来对L个任务进行排序。然后可以进行选择,产生H个任务,其中H<L。该步骤例如可以使用客户重要性数据库405来执行。例如,在通过抽样方法对步骤307进行排名之后,多个数据点可能会具有相似的排名。然后,使用商业规则来进一步选择数据点。在这种情况下,可以用客户数据来更好地选择对用户更有益的任务。
在步骤309和310,可以如步骤301所述地、但是使用经排名的属性,对H个任务进行聚类,并可相应地选择N2个任务。可以将这N2个任务提供回数据管理员用于步骤302-310的另一次迭代。
如果(查询步骤306)没有剩余任务,可以在转到步骤307至310之前在步骤311中等待新任务。
在步骤312中,可将PME引擎不使用的经排名的属性添加到PME属性中,并在步骤313中执行重新部署,以生成可用聚类来从中选择N个任务的新的初始样本。步骤304至310可以由机器学习组件403执行。
图5描绘了数据集成系统101的示例硬件实现。图5代表适于实现本公开中涉及的方法步骤的通用计算机系统。
应当理解,本文所述的方法至少部分是非交互的,并且是通过诸如服务器或嵌入式系统的计算机化系统而自动化的。然而,在示例性实施例中,本文所述的方法可以在(部分)交互系统中实现。这些方法可进一步在软件622(包括固件622)、硬件(处理器)605或其组合中实现。在示例性实施例中,本文所述的方法以软件实现为可执行程序,并且由专用或通用数字计算机(诸如个人计算机、工作站、小型计算机或大型计算机)执行。因此,最通用的系统101包括通用计算机601。
在示例性实施例中,在硬件架构方面,如图5所示,计算机601包括处理器605、耦合到存储器控制器615的存储器(主存储器)610、以及经由本地输入/输出控制器635通信地耦合的一个或多个输入和/或输出(I/O)设备(或外围设备)10、645。输入/输出控制器635可以是但不限于如本领域中已知的一个或多个总线或其他有线或无线连接。输入/输出控制器635可以具有为简单起见而省略的附加元件,诸如控制器、缓冲器(高速缓存)、驱动器、中继器和接收器,以实现通信。进一步,本地接口可以包括地址、控制和/或数据连接,以实现上述组件之间的适当通信。如本文所描述的,I/O设备10、645一般可以包括本领域已知的任何通用密码卡或智能卡。
处理器605是用于执行软件(具体地,存储在存储器610中的软件)的硬件装置。处理器605可以是任何定制的或商业可获得的处理器、中央处理单元(CPU)、与计算机601相关联的若干处理器之中的辅助处理器、基于半导体的微处理器(呈微芯片或芯片组的形式)、宏处理器、或通常用于执行软件指令的任何设备。
存储器610可以包括易失性存储器元件(例如,随机存取存储器(RAM,诸如DRAM、SRAM、SDRAM等))和非易失性存储器元件(例如,ROM、可擦可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、可编程只读存储器(PROM))中的任何一个或其组合。注意,存储器610可具有分布式架构,其中不同组件彼此远离定位,但可由处理器605存取。
存储器610中的软件可以包括一个或多个单独的程序,每个程序包括用于实现逻辑功能(尤其是在本发明的实施例中涉及的功能)的可执行指令的有序列表。
存储器610中的软件通常还应包括合适的操作系统(OS)611。OS 611实质上控制其他计算机程序(诸如算法120)的执行。例如,算法120可包括数据库管理系统或Java应用程序。算法120可包括用于执行本方法的至少一部分的组件。算法120可进一步包括用于例如在进行所述匹配之前执行数据记录的标准化的组件。标准化指的是将数据转换为预定义的数据格式的过程。数据格式可以包括公共数据定义、格式、表示和结构。待变换的数据是不符合预定义数据格式的数据。例如,转换数据的过程可包括处理数据以在必要时自动地转换数据以符合那些定义数据格式的通用表示。转换数据的过程可以包括识别和校正无效值、标准化拼写格式和缩写、以及验证数据的格式和内容。
本文所述的方法可以是源程序、可执行程序(目标代码)、脚本或包括要执行的指令集的任何其他实体的形式。如果是源程序,则需要经由可以包括在或可以不包括在存储器610内的编译器、汇编器、解释器等进行翻译,以便结合OS 611适当地操作。此外,所述方法可以被编写为具有数据和方法类的面向对象的编程语言,或具有例程、子例程和/或函数的过程编程语言。
在示例性实施例中,常规键盘650和鼠标655可以耦合到输入/输出控制器635。其他输出设备(诸如I/O设备645)可以包括输入设备,例如但不限于打印机、扫描仪、麦克风等。最后,I/O设备10、645可以进一步包括传送输入和输出二者的设备,例如但不限于,网络接口卡(NIC)或调制器/解调器(用于访问其他文件、设备、系统、或网络)、射频(RF)或其他收发器、电话接口、网桥、路由器等。I/O设备10、645可以是本领域中已知的任何通用密码卡或智能卡。系统101可进一步包括耦合到显示器630的显示器控制器625。在示例性实施例中,系统101可以进一步包括用于联接到网络666上的网络接口。网络666可以是用于在计算机601与任何外部服务器、客户端等之间经由宽带连接的通信的基于IP的网络。网络666在计算机601与外部系统30之间传输和接收执行本文中讨论的这些方法的部分或全部步骤可能涉及的数据。在示例性实施例中,网络666可以是由服务提供商管理的受管理的IP网络。网络666可以以无线方式(例如,使用无线协议和技术,例如WiFi、WiMax等)来实施。网络666还可以是分组交换网络,如局域网、广域网、城域网、互联网网络或其他类似类型的网络环境。网络666可以是固定无线网络、无线局域网(LAN)、无线广域网(WAN)、个域网(PAN)、虚拟专用网(VPN)、内联网或其他合适的网络系统,并且包括用于接收和传送信号的设备。
如果计算机601是PC、工作站、智能设备等,则存储器610中的软件还可以包括基本输入输出系统(BIOS)622。BIOS是在启动时初始化和测试硬件、启动OS 611、并且支持硬件设备之间的数据传输的基本软件例程的集合。BIOS存储在ROM中,使得当计算机601被激活时可以执行BIOS。
当计算机601运行时,处理器605被配置为执行在存储器610内存储的软件,向和从存储器610传送数据,并且总体上根据该软件来控制计算机601的操作。本文所述的方法和OS 611(全部或部分,但通常为后者)由处理器605读取,可能在处理器605内缓冲存储,然后执行。
如果本文所述的系统和方法以软件实现,如图5中所示,则这些方法可以存储在任何计算机可读介质(如存储设备620)上,以供任何计算机相关系统或方法使用或结合任何计算机相关系统或方法使用。存储器620可包括诸如HDD存储器之类的磁盘存储器。
以下编号的条目中列出各种实施例:
1.一种用于匹配数据集的数据记录的方法,所述数据记录具有属性集合的值,所述方法包括:
a)使用当前带标记数据点集合来训练机器学习模型,数据点中的每个数据点都是多个数据记录,其中,数据点的标记指示数据点的分类,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用用经过训练的机器学习模型对当前未标记数据点集合进行分类的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d);
e)使用经过训练的机器学习模型来对数据集的数据点进行分类。
2.根据条目1所述的方法,进一步包括以下之一:
使用经过训练的机器学习模型对数据集的数据点的分类来对数据集的数据记录进行去重;
基于经过训练的机器学习模型对数据集的数据点的分类来合并或保持数据集的每个数据点的单独的数据记录。
3.根据条目1所述的方法,进一步包括使用经过训练的机器学习模型对数据集的数据点的分类来存储数据集的去重的数据记录。
4.根据条目1所述的方法,其中,在步骤e)中使用的经过训练的机器学习模型是由步骤a)至d)的预定次数的迭代产生的经过训练的机器学习模型。
5.根据条目1所述的方法,其中,进行所述重复达预定义的迭代次数或者直到未标记数据点集合包括数量小于预定义最小数量的数据点。
6.根据条目1所述的方法,其中,步骤d)包括响应于确定所述未标记数据点集合包括数量小于预定义最小数量的数据点,等待直到未标记数据点集合包括数量高于或等于重复步骤a)至d)的预定义最小数量的数据点。
7.根据条目1所述的方法,进一步包括接收另外的未标记数据点,其中,当前未标记数据点集合加上所接收的另外的未标记数据点变成当前未标记数据点集合。
8.根据条目1所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用属性集合的第一属性子集对未标记数据点的中间子集的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的最接近的数据点。
9.根据条目1所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的第一中间子集,使用描述数据点的元数据参数从未标记数据点的第一中间子集中选择未标记数据点的第二中间子集,使用属性集合的第一属性子集对未标记数据点的第二中间子集的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的数据点。
10.根据条目1所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用描述数据点的元数据参数从未标记数据点的中间子集中选择未标记数据点的子集。
11.根据条目9所述的方法,所述元数据参数包括以下的至少一个:数据点的最后修改时间;数据点的用户优先级值。
12.根据条目1所述的方法,进一步包括使用属性集合的第二属性子集来对所接收的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点集合包括所识别的数据点。
13.根据条目12所述的方法,其中,第二属性子集与第一属性子集相同或不同。
14.根据条目12所述的方法,第一属性子集是第二属性子集中的部分属性。
15.根据条目8所述的方法,其中,所述接收未标记数据点的子集的标记进一步包括接收第一属性子集的指示。
参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质。
计算机可读存储介质可为可保留和存储供指令执行装置使用的指令的有形装置。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡或具有记录在其上的指令的槽中的凸出结构之类的机械编码设备、以及上述各项的任何合适的组合。如本文所使用的,计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过电线传输的电信号。
本文中所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如Smalltalk、C++等)、以及常规的过程式程序设计语言(诸如“C”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个方框中规定的功能/动作。
附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
Claims (20)
1.一种用于匹配数据集的数据记录的方法,所述数据记录具有属性集合的值,所述方法包括:
a)使用当前带标记数据点集合来训练机器学习模型,数据点中的每个数据点都是多个数据记录,其中,数据点的标记指示数据点的分类,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用用经过训练的机器学习模型对当前未标记数据点集合进行分类的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d);
e)使用经过训练的机器学习模型来对数据集的数据点进行分类。
2.根据权利要求1所述的方法,进一步包括以下之一:
使用经过训练的机器学习模型对数据集的数据点的分类来对数据集的数据记录进行去重;
基于经过训练的机器学习模型对数据集的数据点的分类来合并或保持数据集的每个数据点的单独的数据记录。
3.根据前述权利要求中任一项所述的方法,进一步包括使用经过训练的机器学习模型对数据集的数据点的分类来存储数据集的去重的数据记录。
4.根据前述权利要求中任一项所述的方法,其中,在步骤e)中使用的经过训练的机器学习模型是由步骤a)至d)的预定次数的迭代产生的经过训练的机器学习模型。
5.根据前述权利要求中任一项所述的方法,其中,进行所述重复达预定义的迭代次数或者直到未标记数据点集合包括数量小于预定义最小数量的数据点。
6.根据前述权利要求1至4中任一项所述的方法,其中,步骤d)包括响应于确定所述未标记数据点集合包括数量小于预定义最小数量的数据点,等待直到未标记数据点集合包括数量高于或等于重复步骤a)至d)的预定义最小数量的数据点。
7.根据前述权利要求中任一项所述的方法,进一步包括接收另外的未标记数据点,其中,当前未标记数据点集合加上所接收的另外的未标记数据点变成当前未标记数据点集合。
8.根据前述权利要求中任一项所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用属性集合的第一属性子集对未标记数据点的中间子集的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的最接近的数据点。
9.根据前述权利要求1-7中任一项所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的第一中间子集,使用描述数据点的元数据参数从未标记数据点的第一中间子集中选择未标记数据点的第二中间子集,使用属性集合的第一属性子集对未标记数据点的第二中间子集的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点的子集包括所标识的数据点。
10.根据前述权利要求1-8中任一项所述的方法,其中,所述选择未标记数据点的子集还包括:使用分类结果从当前未标记数据点集合中选择未标记数据点的中间子集,使用描述数据点的元数据参数从未标记数据点的中间子集中选择未标记数据点的子集。
11.根据权利要求9或10所述的方法,所述元数据参数包括以下的至少之一:数据点的最后修改时间;数据点的用户优先级值。
12.根据前述权利要求中任一项所述的方法,进一步包括使用属性集合的第二属性子集来对所接收的数据点进行聚类,从而产生多个群集;针对多个群集中的每个群集,标识与该个群集的质心最接近的数据点,其中未标记数据点集合包括所识别的数据点。
13.根据权利要求12所述的方法,其中,第二属性子集与第一属性子集相同或不同。
14.根据权利要求12所述的方法,第一属性子集是第二属性子集中的部分属性。
15.根据前述权利要求8-14中任一项所述的方法,其中,所述接收未标记数据点的子集的标记进一步包括接收第一属性子集的指示。
16.根据前述权利要求中任一项所述的方法,其中,使用随机抽样、边际抽样、熵抽样和不一致抽样之一来执行所述选择。
17.根据前述权利要求中任一项所述的方法,所述选择包括对数据点进行排名以及选择排名靠前的数据点。
18.一种计算机程序产品,包括用于由处理器执行的机器可执行指令,其中,机器可执行指令的执行使处理器执行如以上权利要求中任一项所述的方法。
19.一种用于匹配数据集的数据记录的计算机系统,所述数据记录具有属性集合的值,所述计算机系统被配置成用于:
a)使用当前带标记数据点集合来训练机器学习模型,数据点是多个数据记录,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用经过训练的机器学习模型对未标记数据点集合的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d);
e)使用经过训练的机器学习模型来对数据集的数据点进行分类。
20.一种用于去重系统的主动学习器,被配置得用于:
a)使用当前带标记数据点集合来训练机器学习模型,数据点是多个数据记录,所述训练产生被配置为将数据点分类为代表同一实体或不同实体的经过训练的机器学习模型;
b)使用经过训练的机器学习模型对未标记数据点集合的分类结果从当前未标记数据点集合中选择未标记数据点的子集,去除所选择的未标记数据点的子集后的当前未标记数据点集合变成当前未标记数据点集合;
c)向分类者提供未标记数据点的子集并且响应于所述提供而接收未标记数据点的子集的标记;
d)使用当前带标记数据点集合加上带标记数据点的子集作为当前带标记数据点集合来重复步骤a)至d)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19189991.3 | 2019-08-05 | ||
EP19189991 | 2019-08-05 | ||
PCT/IB2020/057001 WO2021024080A1 (en) | 2019-08-05 | 2020-07-24 | Active learning for data matching |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114175007A true CN114175007A (zh) | 2022-03-11 |
Family
ID=67544111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080053513.2A Pending CN114175007A (zh) | 2019-08-05 | 2020-07-24 | 用于数据匹配的主动学习 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11409772B2 (zh) |
JP (1) | JP7539200B2 (zh) |
CN (1) | CN114175007A (zh) |
DE (1) | DE112020002892T5 (zh) |
GB (2) | GB2600369A (zh) |
WO (1) | WO2021024080A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116561120A (zh) * | 2023-04-21 | 2023-08-08 | 清华大学 | 一种用于时序数据库的数据文件快速合并方法及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7280921B2 (ja) * | 2021-06-15 | 2023-05-24 | 株式会社日立製作所 | 計算機システム、推論方法、及びプログラム |
US20240152522A1 (en) * | 2022-11-08 | 2024-05-09 | Microsoft Technology Licensing, Llc | Data set semantic similarity clustering |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111253A1 (en) | 2002-12-10 | 2004-06-10 | International Business Machines Corporation | System and method for rapid development of natural language understanding using active learning |
WO2008011728A1 (en) | 2006-07-28 | 2008-01-31 | Pattern Intelligence Inc. | System and method for detecting and analyzing pattern relationships |
BRPI0817507B1 (pt) | 2007-09-28 | 2021-03-23 | International Business Machines Corporation | Método para análise de um sistema para associação de registro de dados, mídia de armazenamento legível por computador e sistema computacional para análise de um centro de identidade |
US8452755B1 (en) | 2009-05-12 | 2013-05-28 | Microstrategy Incorporated | Database query analysis technology |
US9081817B2 (en) | 2011-04-11 | 2015-07-14 | Microsoft Technology Licensing, Llc | Active learning of record matching packages |
JP2013246478A (ja) | 2012-05-23 | 2013-12-09 | Nippon Telegr & Teleph Corp <Ntt> | 判定装置、学習方法および学習プログラム |
CN102831222B (zh) | 2012-08-24 | 2014-12-31 | 华中科技大学 | 一种基于重复数据删除的差量压缩方法 |
US9626373B2 (en) | 2012-10-01 | 2017-04-18 | Western Digital Technologies, Inc. | Optimizing data block size for deduplication |
US9489373B2 (en) * | 2013-07-12 | 2016-11-08 | Microsoft Technology Licensing, Llc | Interactive segment extraction in computer-human interactive learning |
US10572817B2 (en) | 2014-03-19 | 2020-02-25 | Peopleconnect, Inc. | Graph-based organization entity resolution |
US9542412B2 (en) | 2014-03-28 | 2017-01-10 | Tamr, Inc. | Method and system for large scale data curation |
US9311301B1 (en) | 2014-06-27 | 2016-04-12 | Digital Reasoning Systems, Inc. | Systems and methods for large scale global entity resolution |
GB2541034A (en) | 2015-07-31 | 2017-02-08 | British Telecomm | Network operation |
US10002372B2 (en) | 2015-09-15 | 2018-06-19 | Sap Se | Duplicate check based on generated hash value |
US20170123676A1 (en) | 2015-11-04 | 2017-05-04 | HGST Netherlands B.V. | Reference Block Aggregating into a Reference Set for Deduplication in Memory Management |
US10467201B1 (en) | 2015-12-23 | 2019-11-05 | Massachusetts Mutual Life Insurance Company | Systems and methods for integration and analysis of data records |
CN105740404A (zh) | 2016-01-28 | 2016-07-06 | 上海晶赞科技发展有限公司 | 标签关联方法及装置 |
US10832186B2 (en) | 2016-03-21 | 2020-11-10 | International Business Machines Corporation | Task handling in a master data management system |
CN105868773A (zh) | 2016-03-23 | 2016-08-17 | 华南理工大学 | 一种基于层次随机森林的多标签分类方法 |
US10558627B2 (en) | 2016-04-21 | 2020-02-11 | Leantaas, Inc. | Method and system for cleansing and de-duplicating data |
US9881053B2 (en) | 2016-05-13 | 2018-01-30 | Maana, Inc. | Machine-assisted object matching |
US10621492B2 (en) | 2016-10-21 | 2020-04-14 | International Business Machines Corporation | Multiple record linkage algorithm selector |
CN106777284A (zh) | 2016-12-29 | 2017-05-31 | 南京邮电大学 | 一种基于标签信息的图游走表示方法 |
US10685293B1 (en) * | 2017-01-20 | 2020-06-16 | Cybraics, Inc. | Methods and systems for analyzing cybersecurity threats |
US10325224B1 (en) | 2017-03-23 | 2019-06-18 | Palantir Technologies Inc. | Systems and methods for selecting machine learning training data |
CN111095308A (zh) * | 2017-05-14 | 2020-05-01 | 数字推理系统有限公司 | 用于快速构建、管理和共享机器学习模型的系统和方法 |
US10719301B1 (en) * | 2018-10-26 | 2020-07-21 | Amazon Technologies, Inc. | Development environment for machine learning media models |
US10977518B1 (en) * | 2019-03-15 | 2021-04-13 | Amazon Technologies, Inc. | Machine learning based adaptive instructions for annotation |
-
2020
- 2020-04-27 US US16/859,107 patent/US11409772B2/en active Active
- 2020-07-24 CN CN202080053513.2A patent/CN114175007A/zh active Pending
- 2020-07-24 GB GB2202201.6A patent/GB2600369A/en not_active Withdrawn
- 2020-07-24 JP JP2022505348A patent/JP7539200B2/ja active Active
- 2020-07-24 WO PCT/IB2020/057001 patent/WO2021024080A1/en active Application Filing
- 2020-07-24 GB GBGB2202201.6D patent/GB202202201D0/en active Pending
- 2020-07-24 DE DE112020002892.5T patent/DE112020002892T5/de active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116561120A (zh) * | 2023-04-21 | 2023-08-08 | 清华大学 | 一种用于时序数据库的数据文件快速合并方法及系统 |
CN116561120B (zh) * | 2023-04-21 | 2023-12-26 | 清华大学 | 一种用于时序数据库的数据文件快速合并方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
DE112020002892T5 (de) | 2022-03-17 |
WO2021024080A1 (en) | 2021-02-11 |
GB2600369A (en) | 2022-04-27 |
US20210042330A1 (en) | 2021-02-11 |
US11409772B2 (en) | 2022-08-09 |
JP2022542920A (ja) | 2022-10-07 |
GB202202201D0 (en) | 2022-04-06 |
JP7539200B2 (ja) | 2024-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11500818B2 (en) | Method and system for large scale data curation | |
US11182433B1 (en) | Neural network-based semantic information retrieval | |
US20200050968A1 (en) | Interactive interfaces for machine learning model evaluations | |
CN106663037B (zh) | 用于管理特征处理的系统和方法 | |
CN106575246B (zh) | 机器学习服务 | |
US9292797B2 (en) | Semi-supervised data integration model for named entity classification | |
US11797593B2 (en) | Mapping of topics within a domain based on terms associated with the topics | |
US20240029086A1 (en) | Discovery of new business openings using web content analysis | |
CN114175007A (zh) | 用于数据匹配的主动学习 | |
US11874798B2 (en) | Smart dataset collection system | |
KR20210048425A (ko) | 데이터 매핑을 위한 방법, 장치 및 시스템 | |
WO2021237082A1 (en) | Neural network-based semantic information retrieval | |
JP6065001B2 (ja) | データ検索装置、データ検索方法およびデータ検索用プログラム | |
US20230064674A1 (en) | Iterative training of computer model for machine learning | |
CN114328973A (zh) | 一种基于大数据的用户数据处理系统 | |
CN114358000A (zh) | 从非结构化文档提取结构化信息 | |
CN115668168A (zh) | 用于处理数据记录的方法和系统 |
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 |