写点什么

AI 系统如何识别重复数据?

  • 2021-07-30
  • 本文字数:1587 字

    阅读完需:约 5 分钟

AI系统如何识别重复数据?

当你同时比较两个 Salesforce 记录或任何其它 CRM 记录时,你可以很容易地确定它们是否重复。然而,当你有 10 万条这样的记录时,你几乎不可能一个一个地筛选它们,并进行这样的比较。这就是为什么很多公司开发了各种工具来自动化这些过程,为了做好工作,机器需要识别这些记录之间的相似性和差异性。在本文中,我们将更仔细地研究数据科学家用来训练机器学习系统识别重复的一些方法。

机器学习系统如何对比记录?


研究人员使用的主要工具之一是字符串度量。当你取数据中的两个字符串时,如果字符串相似,返回一个低值;如果字符串不同,则返回一个高值。这在实践中是如何工作的?让我们来看看下面两个记录:


First Name

Last Name

Email

Company Name

Ron 

Burgundy

ron.burgundy@acme.com

Acme

Ronald

burgundy

ron.burgundy@acme.com

Acme Corp


如果一个人看到这两个记录,很明显能看出来这是重复的。而机器依赖字符串度量来复现人类的思考过程,这就是所谓的人工智能。


最著名的字符串度量之一是汉明距离,它度量将一个字符串转换为另一个字符串所需的替换次数。例如,如果我们返回到上面的两条记录,只需要进行一次替换就可以将“burgundy”变成“Burgundy”,因此汉明距离是 1。

 

还有许多其它的字符串度量可以用来度量两个字符串之间的相似性,它们之间的区别是它们所允许的操作。例如,我们前面提到的汉明距离只允许替换,这意味着这种字符串度量只能应用于长度相等的字符串。而编辑距离(Levenshtein distance)允许删除、插入和替换。

如何消除 Salesforce 重复数据?


人工智能系统有许多方法可以实现 Salesforce 重复数据消除。其中一种方法是分区块,如下所示:


Record 1

Record 2

Ron Burgundy, ron.burgundy@acme.com, Acme

Ronald burgundy,ron.burgundy@acme.com Acme Corp


这种分区块方法具有可扩展性。它的工作方式是,每当你上传新的记录到你的 Salesforce,系统会自动将看起来“相似”的记录分块到一起,比如可以是名字的前三个字母或者任何其它条件。

 

这减少了需要进行比较的次数。例如,假设你的 Salesforce 中有 10 万条记录,而你想要上传一个包含 5 万条记录的 Excel 表。传统的基于规则的重复消除应用程序,需要将每个新记录与已有记录进行比较,那需要做 50 亿(100,000 x 50,000)次比较。想象一下这需要多少时间,并且会增加多少出错的概率。


此外,我们要知道,10 万条记录只是 Salesforce 记录中相当有限的一部分。有很多组织拥有数十万甚至上百万的记录。因此,在尝试适应此类模型时,传统方案的可伸缩性很差。

 

另一种选择是单独比较每个字段:


 

Record 1

Record 2

First Name

Ron

Ronald

Last Name

Burgundy

burgundy

Email

ron.burgundy@acme.com

ron.burgundy@acme.com

Company

Acme

Acme Corp


一旦系统将“相似的”记录分块到一起,它将继续逐字段分析每条记录。这是我们前面讨论的所有字符串度量发挥作用的地方。


除此之外,系统会给每个字段制定一个特定的“权重”或重要性。例如,假设对于你的数据集,“Email”字段是最重要的。你可以自己调整算法,或者当你将记录标记为重复(或不重复)时,系统会自动学习正确的权重。这被称为主动学习(Active Learning),这种方法更可取,因为系统可以精确计算一个字段相对于另一个字段的重要性。

机器学习方法的优点是什么?


机器学习能提供的最大好处是,它能为你做所有的工作。主动学习将自动给每个字段设置必要的权重。这意味着,不需要创建复杂的设置过程或规则。


让我们看看下面的场景。假设其中一个销售代表发现了一个重复记录,并将这个问题通知给 Salesforce 管理员。Salesforce 管理员将创建一个规则,从而防止将来发生此类重复。每次发现一种新的重复使得这一过程不可持续时,需要一遍又一遍地重复这个过程。

 

另外,我们需要记住,Salesforce 中基于重复数据消除的功能也是基于规则的,只是非常有限。例如,你一次只能合并三条记录,不支持自定义对象,以及其它许多限制。


机器学习是一种更智能的方法,因为规则的创建是自动化的,而人工智能和机器学习则试图重现人类的思维过程。在另一篇文章中,讨论了更多机器学习与自动化之间的区别。选择一个简单地扩展了 Salesforce 的功能的去重产品,而不修复整个过程,是没有意义的。这就是为什么机器学习方法是最好的方法。

作者介绍


Ilya Dudkin 是 Softwarium 的业务开发经理。

原文链接


How Do AI Systems Identify Duplicate Data?

2021-07-30 14:461915

评论

发布
暂无评论
发现更多内容

比尔·盖茨最新AI演讲:人工智能时代已经开启

Chares

人工智能 机器学习 微软 ChatGPT

Linux 查看 SELinux 的状态

HoneyMoose

《零代码应用实例》,从案例到使用

明道云

极客时间运维进阶训练营第七周作业

忙着长大#

极客时间

百度获CCIA数安委《数据安全和个人信息保护社会责任指南》首批试点示范单位

百度安全

WordPress 网站 Error Establishing a Database Connection(建立数据库连接时出错)

HoneyMoose

ChatGPT4.0,基础生产力的变革!

老张

人工智能 ChatGPT ChatGPT4

好用的无损播放器:Audirvana v3.5.50中文激活版

真大的脸盆

Mac 软件 音乐播放 无损播放器

Spring事务失效场景

TaurusCode

Spring Boot 事务 java基础 事务失效 事务回滚

5年MacBook用户最常用的Mac软件推荐

Rose

苹果 mac软件下载

发声全球边缘计算大会,火山引擎荣获“最佳边缘云服务商”称号

火山引擎边缘云

火山引擎 边缘云 火山引擎边缘计算

浙江杭州|Hi TECH 2023 年全球青年创业大赛

科兴未来News

数字经济 杭州 新能源 生物医药 #双创赛事#

IT 数字化转型

L3C老司机

数字化转型 产品研发 工程效能 项目交付 胜任力模型

强大的绘图软件:OmniGraffle中文激活版

真大的脸盆

Mac Mac 软件 绘图软件 绘图工具

电商秒杀系统

Ryan

功能全面的数据库软件:DBeaverUltimate 中文旗舰版

真大的脸盆

Mac 数据库管理 Mac 软件 管理数据库 数据库工具

Spring 项目运行提示错误 Not a managed type

HoneyMoose

分享交流丨九科信息董事&产品VP傅恺受邀出席第三届ISIG中国产业智能大会并分享企业优秀案例

九科Ninetech

Jetpack-Compose 学习笔记(三)—— Compose 的自定义“View”

修之竹

android Compose JetPack android jetpack

新能源的B面:下沉市场的机会与变量

Alter

新能源 下沉市场

寻找“乘风破浪”的出海创新势力丨 2023出海企业创新价值榜报名启动

创业邦

百度荣获 CCIA数据安全工作委员会突出贡献奖

百度安全

Jenkins 修改启动的端口

HoneyMoose

CnosDB 2.0 Arrow Flight SQL使用指北

CnosDB

开源 时序数据库 CnosDB Arrow Flight SQL

C++面试必备:常见C++面试题汇总及详细解析

小万哥

面试 软件开发 C/C++ 常见 汇总

ChatGPT研究(一)——AI平民化的里程碑

Chares

人工智能 机器学习 AIGC ChatGPT

IntelliJ IDEA 2023.1 版本添加了包中类的列表功能

HoneyMoose

WordPress 插件 g5plus 修改属性

HoneyMoose

Linux 开启或关闭 SELinux

HoneyMoose

秒懂算法 | 链表

TiAmo

算法 链表 C++ STL 静态链表 动态链表

AI系统如何识别重复数据?_AI&大模型_Ilya Dudkin_InfoQ精选文章