用于检测不同语言中的真实姓名的系统和方法

文档序号:6534000阅读:164来源:国知局
用于检测不同语言中的真实姓名的系统和方法
【专利摘要】描述了用于检测不同语言中的真实姓名的系统和方法,包括:接收候选姓名;确定所述候选姓名的人类语言;通过应用用于所述候选姓名的字符集、含义和格式中的至少一个的规则库来分解所述候选姓名的结构,其中,所述规则库对于所确定的人类语言是唯一的;相对于实际的真实姓名信息来验证所述候选姓名的所分解的结构的至少一部分,以产生所述候选姓名是实际的真实姓名的置信度;以及基于所产生的所述候选姓名是所述实际的真实姓名的置信度来执行行为。
【专利说明】用于检测不同语言中的真实姓名的系统和方法

【技术领域】
[0001] 在此讨论的主题总体上涉及数据处理,并且更具体地涉及用于检测不同语言中的 真实姓名的系统和方法。

【背景技术】
[0002] 在线产品和服务经常要求用户提供他们的真实姓名。虽然一些用户正确地提供了 他们的真实姓名,但是其他用户未正确地提供他们的真实姓名。原因可能是无意的(例如, 打字错误)或有意的(例如,为了隐藏他们的身份)。一些用户可能提供不是真实姓名的姓 名。因此,不存在由用户提供的姓名是否是真实的指示。
[0003] 而且,所提供的姓名可以是以不同的语言,该不同的语言与不同的文化、传统和习 俗相关联。在一些语言中的姓名可能包括姓氏。例如,可以作为第一字、最后字或在第一和 最后字之间的字来提供该姓氏。在一些语言中,没有姓氏的概念。
[0004] 如在线产品和服务中使用的以不同语言的真实姓名难以检测。需要一种解决方 案。


【发明内容】

[0005] 描述了用于检测不同语言中的真实姓名的系统和方法。本主题包括至少一个计算 装置、至少一个计算机产品和至少一种方法,所述方法用于:接收候选姓名;确定所述候选 姓名的人类语言;通过应用用于所述候选姓名的字符集、含义和格式中的至少一个的规则 库来分解所述候选姓名的结构,其中,所述规则库对于所确定的人类语言是唯一的;相对于 实际的真实姓名信息来验证所述候选姓名的所分解的结构的至少一部分,以产生所述候选 姓名是实际的真实姓名的置信度;以及基于所产生的所述候选姓名是所述实际的真实姓名 的置信度来执行行为。

【专利附图】

【附图说明】
[0006] 图IA是其中可以实现和/或操作一些示例实施例的示例在线环境。
[0007] 图IB示出在其中可以处理姓名的示例在线环境中的示例数据流。
[0008] 图2A-E示出一些示例实施例的示例处理流程。
[0009] 图3示出适合于实现至少一个示例实施例的示例过程。
[0010] 图4示出具有适合于实现至少一个示例实施例的示例计算装置的示例计算环境。

【具体实施方式】
[0011] 通过示例实施例来教导在此所述的主题。已经为了清楚并且为了避免混淆本主题 而省略了各种细节。下面示出的示例涉及用于检测不同语言中的真实姓名的系统和方法的 结构和功能。
[0012] 在此使用的"真实姓名"是人的公知或合法的标识符。一些人的公知或合法的标 识符可能相同。对于其他人(例如,艺术家),他们的公知标识符可能与他们的合法标识符 不同。例如,歌手可能通过舞台姓名被公知,该舞台姓名可能与合法姓名(例如,在护照上 的姓名)不同。
[0013] 示例处理环境
[0014] 图IA示出其中可以实现和/或操作一些示例实施例的示例在线环境。环境100 包括装置102-118,每一个经由例如网络180可通信地连接到至少另一个装置。一些装置可 以可通信地连接到一个或多个存储装置118。
[0015] 一个或多个装置102-118的示例可以是计算装置405 (图4)。装置102-118可以 包括但是不限于计算机102 (例如,个人或商用)、在汽车104中的装置、移动装置106 (例 如,智能电话)、电视机108、移动计算机110、服务器或台式计算机112、计算装置114-116、 存储装置118。装置102-118中的任何一个可以访问来自在环境100中所示的一个或多个 装置和/或在环境100中未示出的装置的一个或多个服务,和/或向在环境100中所示的 一个或多个装置和/或在环境100中未示出的装置提供一个或多个服务。
[0016] 图IB示出在其中可以处理姓名的示例在线环境中的示例数据流。在环境125中, 数据可以在用户界面130U40和150和第三方提供商(未示出)和服务提供商(未示出) 之间流动(例如,通过在图1中所示的网络180)。用户界面130、140和150可以被提供在 一些装置(例如,装置102-110,图1A)上,并且可以表示沿着时间线的不同点。该第三方提 供商和服务提供商可以被嵌入在例如装置112-118(图1)和/或未示出的那些中。
[0017] 用户界面(UI) 130图示了用户用于提供他的或她的姓名的机制。用户可以因为任 何原因而提供姓名(例如,对于产品或服务注册、打开账户、响应于调查等)。为了简化,可 以包括其他信息(未示出,例如联系人信息),如本领域内的技术人员可以明白。用户可以 例如使用小组件132(例如,文本框、自动填充特征、语音输入小组件等)来输入他们的姓 名,并且启动控件134来提交或提供他们的姓名。
[0018] UI 140图示了用户可以使用来提供用于支持他的或她的姓名是真实的证据或证 明的机制。例如,用户可以输入证据142,并且使用控件144来提交它。下面更详细地讨论 了 UI 140的另外的细节。
[0019] UI 150图示了管理员或第三方用户可以使用来验证姓名是否是真实的机制。例 如,如果姓名是真实的,则可以使用控件154来确认或验证该姓名。如果姓名不是真实的, 则可以使用控件156来如此指示或拒绝该姓名。可选地,可以利用控件154或156来提供 证据152。下面更详细地讨论了 n 150的另外的细节。
[0020] 示例真实姓名检测处理
[0021] 为了说明一些示例实施例,结合图2A来描述图IB的元件。如图2A中所示,在块 210处,服务提供商(未示出)可以接收用户的姓名。服务提供商可以评估、识别和/或检 测(评估)提供姓名的语言(例如,人类语言)(块215)。例如,可以对于所提供的姓名执 行评估,该所提供的姓名例如是"Glenn Smith"(英语)或"品田A A子"(日语)或另一 种语言的姓名。
[0022] 可以以任何方式来评估该语言。在一些示例实施例中,可以使用Unicode文字 系统(Unicode script)(在因特网上的www.unicode.org处可访问)来执行语言评估。 Unicode具有不同语言或不同组的语言的代码的限定范围。例如,已经在Unicode标准6. 1 版本中对于汉字限定了一个范围(例如,十六进制的4E00-9FCF)。该代码的范围可以用于 表示在汉语、日语和韩语(CJK)中使用的汉字。存在其他CKJ代码范围(例如,CJK扩展A 至CJK扩展D等)、日语代码范围(例如,平假名和片假名)、韩语代码范围(例如,谙文范 围)和多个其他代码范围。
[0023] 为了评估所提供的姓名的语言,例如,识别一个或多个代码范围。使用姓名"品田 ^々子"作为示例,要在CJK范围中识别一些字符(例如,"品田义?子"),并且要在平假名 范围中识别一些字符(例如,"二々共同地,因为日语使用日文汉字(或汉字)并且汉 语不使用任何日语字符,所以可以以高置信度来将姓名"品田二々子"推定为是日语姓名。
[0024] 可以通过识别通过在韩语范围中或在韩语范围和CJK范围的组合中的代码表示 姓名来评估(例如,检测)韩语姓名。可以基于姓名由一个或多个CJK范围表示来检测汉 语姓名。在此使用的术语"语言"或"人类语言"指的是由人在通信中使用的符号的集合。
[0025] 姓名的列表的示例
[0026] 服务提供商可以访问每种语言的姓名信息的一个或多个数据库。例如,对于日 语,可以有可以利用置信度被表征为不是真实姓名的成分的姓名信息的一个或多个数据库 (例如,日语非真实姓名或其成分的"黑名单")。该黑名单可以是先前被确定或检测为非真 实的非真实姓名或其成分的知识库。该黑名单可以包括从一个或多个源(例如,因特网) 收集的非真实姓名或其成分。
[0027] 可以通过任何方法、使用任何机制、使用来自任何源的信息或其任何组合来建立 或扩展该黑名单。例如,可以利用已知假名或假名成分来生成、建立、增加、扩展黑名单,该 已知假名或假名成分位于因特网上、通过垃圾邮件过滤器得出、从政府数据库(例如,欺骗 信息数据库)导入、由服务提供商检测(例如,在确认或验证处理中)或从另一个源或方法 获得。
[0028] 如果基于上述的评估确定检测到所提供的姓名的语言(块220),则服务提供商 可以基于所检测的语言来识别非真实姓名和其成分的"黑名单"(块225)。一旦已经检测 或确定了语言,则可以使用一个或多个语言特定规则和/或数据库来确定所提供的姓名 是否是真实姓名。例如,所检测的所提供姓名的语言可能是日语(例如,以日语文字系统 (Japanese script)或Unicode来编码所提供的姓名)。然后,识别在日语中的候选姓名和 /或其成分的一个或多个数据库或黑名单(例如,识别日语的姓名和/或其成分的数据库, 与英语、韩语、汉语或另一种语言的那些的数据库对照)。可以相对于在日语黑名单数据库 中的非真实姓名和/或其成分比较所提供的姓名或其部分(例如,表示日语的姓氏或名字 的部分)。如果在块230处确定所提供的姓名的至少一部分在黑名单数据库中不为真,则处 理200A流动到块235,如下所述。
[0029] 服务提供商可以访问的用于每种语言服务的姓名信息的一个或多个数据库可以 包括例如一定程度确定的或已知作为一个或多个真实姓名的成分的姓名信息的一个或多 个数据库(例如,"白名单")。该白名单可以是先前被检测或确定为真实姓名或其成分的姓 名或姓名成分的知识库。该白名单可以是从一个或多个源(例如,因特网)收集的已知在 真实姓名中使用的姓名或姓名成分(例如,在给定语言中的最常见的姓氏、在给定语言中 的常见婴儿姓名、在给定语言中的最常见的名字等)。可以通过任何方法、机制或其任何组 合来建立或扩展白名单。
[0030] 可以通过任何方法、使用任何机制、使用来自任何源的信息或其任何组合来建立 或扩展白名单。例如,可以利用已知真实姓名或真实姓名成分来生成、建立、增加、扩展白名 单,该已知真实姓名或真实姓名成分位于因特网上(例如,普通的日语姓名或普通的日语 姓氏等)、从一个或多个目录(例如电话目录)导入的、从政府数据库(例如,驾驶执照或身 份证数据库)导入、从第三方提供商导入(例如,从信用卡发放者购买)、由服务提供商检测 (例如,在确认或验证处理中)或从另一个源或方法获得。
[0031] 服务提供商可以基于所检测的语言来识别真实姓名或其成分的"白名单"(块 235)。例如,将所提供的姓名的语言检测为日语。然后,识别在日语中的候选真实姓名和/ 或其成分的一个或多个数据库或白名单(例如,识别在日语中的姓名和/或姓名成分的数 据库,与诸如英语、韩语、汉语等的另一种语言中的那些的数据库相对)。可以相对于在日语 白名单数据库中的姓名和/或姓名成分比较所提供的姓名或其部分(例如,表示在日语中 的姓氏或名字的部分)。
[0032] 姓名接受处理的示例
[0033] 如图2D中所示,如果已经在图2A的块235中确定所提供的姓名的至少一部分在 白名单数据库中为真,则可以接受所提供的姓名(块295,子处理"A")。接受姓名可以包括 记录姓名、在数据库中存储姓名、授权打开账户或进行在线购买的行为和/或对于姓名执 行其他操作或者基于姓名。在一些示例实施例中,可以存在在接受所提供的姓名作为真实 姓名之前需要的一个或多个另外的操作。
[0034] 接受所提供的姓名作为真实姓名可以基于所提供的姓名或其成分是真实的和/ 或不真实的确定度或置信度(例如,如果姓名或其成分之一的确定度分别是70%肯定真实 和/或55%肯定不真实,则接受或拒绝姓名)。在一些示例实施例中,在将姓名或姓名成 分分别与连续的白名单或黑名单的内容作比较后,姓名或姓名成分真实或不真实的确定度 (例如,概率)可以增大。可以将任何语言的置信度设置或改变为任何阈值或水平,并且不 同语言的置信度可以不同。
[0035] 示例实现方式
[0036] 服务提供商可以实现在识别真实姓名中使用的方法、对象或应用程序接口(API)。 下面是本领域内的技术人员可以明白的、用于检测不同语言中的真实姓名的许多可能实现 示例之一。

【权利要求】
1. 一种检测不同语言中的真实姓名的计算机实现的方法,包括: 使用一个或多个计算装置来接收候选姓名; 使用所述一个或多个计算装置来确定所述候选姓名的人类语言; 使用所述一个或多个计算装置来通过应用用于所述候选姓名的字符集、含义和格式中 的至少一个的规则库来分解所述候选姓名的结构,其中,所述规则库对于所确定的人类语 目是唯一的; 使用所述一个或多个计算装置相对于实际的真实姓名信息来验证所述候选姓名的所 分解的结构的至少一部分,以产生所述候选姓名是实际的真实姓名的置信度;以及 使用所述一个或多个计算装置基于所产生的所述候选姓名是所述实际的真实姓名的 置信度来执行行为。
2. 根据权利要求1所述的方法,其中,当所产生的置信度等于或大于预定义阈值时,所 述行为包括将所述候选姓名存储为所述实际的真实姓名。
3. 根据权利要求1所述的方法,其中,当所产生的置信度低于预定义阈值时,所述行为 包括提供所述候选姓名未被接受为所述实际的真实姓名的指示。
4. 根据权利要求1所述的方法,其中,确定所述候选姓名的人类语言包括:基于 Unicode标准来确定文字系统。
5. 根据权利要求1所述的方法,其中,所述实际的真实姓名信息包括姓名信息的白名 单,并且所述验证包括将所述候选姓名的所分解的结构的所述至少一部分与姓名信息的所 述白名单作比较。
6. 根据权利要求5所述的方法,其中,所产生的所述置信度为一个阈值或高于该阈值。
7. 根据权利要求1所述的方法,其中,所述实际的真实姓名信息包括姓名信息的黑名 单,并且,所述验证包括将所述候选姓名的所分解的结构的所述至少一部分与姓名信息的 所述黑名单作比较。
8. 根据权利要求7所述的方法,其中,所产生的所述置信度低于一个阈值。
9. 根据权利要求1所述的方法,进一步包括在姓名信息的白名单中存储所述候选姓名 的至少一部分。
10. 根据权利要求1所述的方法,进一步包括在姓名信息的黑名单中存储所述候选姓 名的至少一部分。
11. 一种非瞬时计算机可读介质,其中存储有计算机可执行指令,所述计算机可执行指 令用于: 使用一个或多个计算装置来接收候选姓名; 使用所述一个或多个计算装置来确定所述候选姓名的人类语言; 使用所述一个或多个计算装置来通过应用用于所述候选姓名的字符集、含义和格式中 的至少一个的规则库来分解所述候选姓名的结构,其中,所述规则库对于所确定的人类语 目是唯一的; 使用所述一个或多个计算装置相对于实际的真实姓名信息来验证所述候选姓名的所 分解的结构的至少一部分,以产生所述候选姓名是实际的真实姓名的置信度;以及 使用所述一个或多个计算装置基于所产生的所述候选姓名是所述实际的真实姓名的 置信度来执行行为。
12. 根据权利要求11所述的计算机可读介质,其中,当所产生的置信度等于或大于预 定义阈值时,所述行为包括将所述候选姓名存储为所述实际的真实姓名。
13. 根据权利要求11所述的计算机可读介质,其中,当所产生的置信度低于预定义阈 值时,所述行为包括提供所述候选姓名未被接受为所述实际的真实姓名的指示。
14. 根据权利要求11所述的计算机可读介质,其中,确定所述候选姓名的人类语言包 括:基于Unicode标准来确定至少一个文字系统。
15. 根据权利要求11所述的计算机可读介质,其中,所述实际的真实姓名信息包括姓 名信息的白名单,并且所述验证包括将所述候选姓名的所分解的结构的所述至少一部分与 姓名信息的所述白名单作比较。
16. 至少一个计算装置,包括存储和至少一个处理器,所述至少一个处理器被配置为执 行: 使用所述至少一个计算装置来接收候选姓名; 使用所述至少一个计算装置来确定所述候选姓名的人类语言; 使用所述至少一个计算装置来通过应用用于所述候选姓名的字符集、含义和格式中的 至少一个的规则库来分解所述候选姓名的结构,其中,所述规则库对于所确定的人类语言 是唯一的; 使用所述至少一个计算装置相对于实际的真实姓名信息来验证所述候选姓名的所分 解的结构的至少一部分,以产生所述候选姓名是实际的真实姓名的置信度;以及 使用所述至少一个计算装置基于所产生的所述候选姓名是所述实际的真实姓名的置 信度来执行行为。
17. 根据权利要求16所述的至少一个计算装置,其中,当所产生的置信度等于或大于 预定义阈值时,所述行为包括将所述候选姓名存储为所述实际的真实姓名。
18. 根据权利要求16所述的至少一个计算装置,其中,当所产生的置信度低于预定义 阈值时,所述行为包括请求用于支持所述候选姓名是所述实际的真实姓名的验证信息。
19. 根据权利要求16所述的至少一个计算装置,其中,确定所述候选姓名的人类语言 包括:基于Unicode标准来确定两个文字系统,其中,所述人类语言是基于所述两个文字系 统来确定的。
20. 根据权利要求16所述的至少一个计算装置,进一步包括:接收指示所述候选姓名 是所述实际的真实姓名的验证信息。
【文档编号】G06F17/27GK104335204SQ201380026811
【公开日】2015年2月4日 申请日期:2013年5月23日 优先权日:2012年5月24日
【发明者】基思·帕特里克·恩赖特, 安德鲁·斯维尔德洛, 丹·弗雷丁布格 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1