CN117077674A - 一种准确率高的企业高效去重名方法 - Google Patents

一种准确率高的企业高效去重名方法 Download PDF

Info

Publication number
CN117077674A
CN117077674A CN202311012768.6A CN202311012768A CN117077674A CN 117077674 A CN117077674 A CN 117077674A CN 202311012768 A CN202311012768 A CN 202311012768A CN 117077674 A CN117077674 A CN 117077674A
Authority
CN
China
Prior art keywords
name
enterprise
same
person
enterprises
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
Application number
CN202311012768.6A
Other languages
English (en)
Inventor
郭海涛
徐笑微
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Zhiyuxin Information Technology Co ltd
Original Assignee
Anhui Zhiyuxin Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Anhui Zhiyuxin Information Technology Co ltd filed Critical Anhui Zhiyuxin Information Technology Co ltd
Priority to CN202311012768.6A priority Critical patent/CN117077674A/zh
Publication of CN117077674A publication Critical patent/CN117077674A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种准确率高的企业高效去重名方法,包括以下步骤:S1、特征选取;S2、数据预处理;S3、特征和训练样本构造;S4、模型训练与评估。与现有技术相比的优点在于:本发明提出一种去重名模型,用于给工商企业数据库中出现的自然人编写唯一标识(PID),再结合工商企业的相关信息,可以进一步分析挖掘出个人关联企业、企业间关联关系等模型,服务各类业务场景。模型主要使用与个人关联的企业信息:关联企业注册地址相似性,共同企业股东,共同主要人员,共同联系方式,企业关系,企业名称相似性,以及个人特征:个人姓氏和姓名出现的概率,等特征,通过NLP技术,将文本特征转为数值特征。

Description

一种准确率高的企业高效去重名方法
技术领域
本发明涉及企业去重名技术领域,具体是指一种准确率高的企业高效去重名方法。
背景技术
工商企业数据库中会出现自然人名(包括法定代表人、董事、监事、高级管理人员等),但由于自然人存在重名且缺乏唯一标识信息,难以对这些自然人名做出区分。
当前去重名的方法,大多基于人工规则,这种方法缺少统计依据,且使用的特征组合方式也比较简单,难以真正有效利用数据特征,识别准确率较低。
因此,继续一种去重名模型,能够用于给工商企业数据库中出现的自然人编写唯一标识(PID),再结合工商企业的相关信息,可以进一步分析挖掘出个人关联企业、企业间关联关系等模型,服务各类业务场景。
发明内容
本发明要解决的技术问题是克服以上技术困难,提供一种准确率高的企业高效去重名方法,其提出一种去重名模型,用于给工商企业数据库中出现的自然人编写唯一标识(PID),再结合工商企业的相关信息,可以进一步分析挖掘出个人关联企业、企业间关联关系等模型,服务各类业务场景。
模型主要使用与个人关联的企业信息:关联企业注册地址相似性,共同企业股东,共同主要人员,共同联系方式,企业关系,企业名称相似性,以及个人特征:个人姓氏和姓名出现的概率,等特征,通过NLP技术,将文本特征转为数值特征,使用机器学习算法构建分类模型,判断是否与存量人员是否为同一个人。与基于人工规则的方法相比,我们的方法有更高的识别准确率。
为解决上述技术问题,本发明提供的技术方案为:
一种准确率高的企业高效去重名方法,包括以下步骤:
S1、特征选取
我们从相关渠道获取了一部分较为准确的个人唯一标识数据,用于构建正负样本、模型训练和模型验证;测试集结果将用人工质检的方式进行检查和反馈;该模型所选用特征的共同逻辑,是同名自然人各自的“关联企业”之间是否存在某种联系或相似性;
“关联企业”,指的是与自然人以某一种或多种关系相关联的企业,关系类型包括自然人为企业的法定代表人、主要人员(董事、监事、高管)、自然人股东或者最终受益人等;
S2、数据预处理
数据中可能存在两个同一个人名,它们所关联的企业中存在相同的企业,这些人名却有不同的PID,这样的人我们认为应该是同一个人,对于这样的样本,我们使用图论算法,提前合并这些样本,主要步骤如下:
第一步、以人名为键值,个人名下所有公司的uid集合为值,构造字典对;
第二步、定义相关性矩阵join_matrix,对字典中任意两个元素,如果它们的公司uid集合的交集不空,则两元素的join_matrix值为1;否则,为0;
第三步、以join_matrix为关联矩阵,构造一个无向图,关联矩阵值为1表示两个结点之间有一条边相连;值为0表示两个结点间没有边相连;
第四步、找出图中的所有最大团(MaximumClique),这些最大团表示团中所有元素应该对应同一个人;
第五步、对每一个团,合并该团中所有的元素,所对应的企业,归集到同一个PID下;归集PID取个人名下企业数最多的那个个人PID,若数量都相同,则直接取其中任一个;
S3、特征和训练样本构造
训练样本构造
用于建模的基础数据主要为个人信息和相关的企业信息;具体地,其数据格式为:簇名,人名,公司名,公司uid,股东,主要人员,法人名,注册地址,年报-tel,年报-email;数据每一行对应个人所关联的一个企业信息;定义簇为同一个名字,具有不同PID,及其对应公司集的样本集;
为了接近实际的预测场景,使得数据的分布与实际一致,我们的样本构造操作,限制在同一个簇内,样本具体构造过程如下:
首先,构造的样本输出格式:簇名,Query,Keys,label;Query表示新人员所对应企业,Keys表示某个同名存量人员名下所有企业,是个集合,Query和Keys的具体值,用基础数据的索引来表示,显然地,在计算Query和Keys上的指标时,需要一个聚合函数,Label为标签,1:表示正样本,两个人是同一个人;0:表示负样本,两个人不是同一个人;
然后,以簇名为第一键值,以PID为第二键值,对表进行聚合分组,得到同一个PID下所有公司,以下称为分组;
构造正样本:对簇中的每个分组,如果包含的企业个数大于1,则对该分组,遍历分组中的所有企业元素,元素作为Query,企业集合-{该元素},作为Keys;
构造负样本:针对同一个PID中每个企业,以该企业Query,其它分组,为Keys,构造一个样本,作为负样本;
去重:对于Keys中元素数为1的样本,如果和Query合并后,由于后续特征构造的所有计算,都满足交换律,导致两个样本算出的所有特征都相同,所以这两个样本,只需要保留其中一个;
特征构造
特征1:企业注册地址相似性,包括;
地址标准化,以2021年国家标准地址库,作为基础,对企业注册地址进行标准化;具体过程如下:
第一步、基于正则提取出道路、建筑物号等信息;
第二不、省、市、区/县的匹配,过程如下:
首先,为所使用的国家标准地址库建立倒排索引,以支持快速检索;接着,从待标准化地址文本的起始位置开始,采用最大长度优先的方式匹配文本中的所有文本片段;最后,对所有匹配结果进行标准行政区域从属关系校验,并补全缺失的父级地址;
地址匹配,过程如下:
第一步、对输入的两个地址进行标准化,标准化的地址表示为:省,市,区/县,剩余的详细地址;
第二不、将标准化后的地址,从前往后逐级匹配,每匹配一级,分数+1,若失配,则退出匹配;直到匹配到剩余的详细地址,最终的地址相似性分值,会加上该部分的相似性分值;剩余的详细地址部分的匹配分值,计算过程为:
首先,对其中所包含的道路号,建筑号进行语义处理,分配权重;接着,对剩余文本使用jieba进行分词;最后,对两个地址结果集使用余弦相似度算法计算相似度,聚合函数为取最大值;
特征2:共同的企业股东、以及特征3:共同的个人
给定企业股东列表,其通常包含个人和企业股东,为了区分两者,我们构建了一个股东类型二分类器,以判断企业所有股东列表中每个股东,是个人还是企业;分类器直接使用股东名文本作为输入特征,采用预训练模型bert+linear层的模型;采用共同的企业股东数量来作为特征;聚合函数为取最大值;
共同的个人,则采用人名列表所对应的tf-idf向量的相似性,作为特征;具体地,对个人列表,将每个个人名,看做一个词,人名列表看做一个文档,构造人名列表的tf-idf向量,计算两个文档tf-idf向量的余弦相似性,将该余弦相似性作为两个人名列表的相似性;其中,idf取全局值,即本公司企业数据中所有高管人名库的人名出现概率,也即为本节中特征7的构造中所用的企业高管人名库;
考虑到个人人名数量的庞大,以及个人人名在所有人名中的稀疏性,即:向量中的大部分位置都是0,在具体实现时,我们使用向量的稀疏表示,来存储节省空间;
特征4:相同的公开联系方式
采用共同的电话号码数量和email数量构建2个特征;聚合函数都为取最大值;
特征5:企业间的关系
大部分的关系可以直接从公司名称推断;这里我们直接使用公司已有的企业关系表;基于该关系表,我们构建了4类关系:是母公司,是同一母公司分支,是分支,以及None关系(表示不存在关系);并约定关系的序关系:是母公司==是分支>是同一母公司分支>None关系;聚合函数取最大值;
特征6:企业名称相似性
公司名称拆分为4个部分:地名、字号、行业/经营特点、组织形式;
公司名的拆分,我们采用NLP中命名实体识别抽取模型来做;模型采用预训练模型bert+crf,模型输入为公司名称的BIO标签标注的数据,具体为:{'O','I-LOC','B-LOC','I-NAME','I-INDU','I-ORG','B-NAME','B-INDU','B-ORG'},其中LOC,NAME,INDU,ORG分别对应地名、字号、行业/经营特点、组织形式,基于已有的数据,标注1万条数据,来训练模型;
特征构建:使用除组织形式外的其他部分;
共构造两类特征,作为模型的特征;这两类特征的构造过程,如下所示:
第一类:
第一步、使用公司名称拆分算法,将企业名称分为四部分;
第二不、取企业名称分割后的前3个部分:地名、字号、行业/经营特点,作为一个3元组;
第三步、对该3元组的每个部分的文本,分别使用句向量模型(sentenceembedding)text2vec-large-chinese,生成对应的文本embedding;
第四步、计算目标样本,在每个部分上的相似性,该相似性为点积,计算两个3元组的余弦相似度,作为两个企业名称相似性值;聚合函数为取最大值;
第二类:
使用text2vec-large-chinese模型,对每个部分计算其embedding,计算与目标的相似值,该相似值,为两embedding的余弦距离,将每部分看作一个单独的特征;聚合函数为取最大值;
特征7:名字和姓氏的概率
为了得到个人姓名的出现的全局概率,我们使用公司已有所有企业的高管人名库,来计算其出现概率;若查不到人名时,返回缺省值,缺省值定义为:1/企业高管名字库名字数;
姓氏提取,基于所搜集的中国姓氏录;若查不到姓氏时,返回缺省值,缺省值定义为:1/企业高管名字库名字数;
特征8:所在行业相似性
行业取一级-二级-三级,进行多级匹配:若一级行业相同则赋值1,若二级行业相同则赋值2,三级行业相同则赋值3;皆不相同赋值0,聚合函数为取最大值;
S4、模型训练与评估
自定义损失函数
我们在使用LightGBM时,引入自定义二分类的FocalLoss函数(LightGBM库本身并未提供);根据LightGBM接口定义,引入自定义Loss函数时,需要:定义初始化值求解函数,Loss函数的一阶导和二阶导以及评估损失计算函数;
在使用前述,特征和样本的构造方法后,得到训练样本;在这些样本上进行模型的训练,模型的训练,遵循一般的模型训练过程:划分训练集合验证集;模型基于5折交叉验证的网格搜索方法,选出最好的模型;并在验证集上进行验证,确定最终的模型。
本发明与现有技术相比的优点在于:本发明提出一种去重名模型,用于给工商企业数据库中出现的自然人编写唯一标识(PID),再结合工商企业的相关信息,可以进一步分析挖掘出个人关联企业、企业间关联关系等模型,服务各类业务场景。
附图说明
图1是本发明的流程框架图。
图2是本发明的自然人对应“关联企业”的整体结构示意图。
图3是本发明的自然人具体对应“关联企业”的结构示意图一。
图4是本发明的自然人具体对应“关联企业”的结构示意图二。
图5是本发明的自然人具体对应“关联企业”的结构示意图三。
图6是本发明的自然人具体对应“关联企业”的结构示意图四。
图7是本发明的自然人具体对应“关联企业”的结构示意图五。
图8是本发明的自然人具体对应“关联企业”的结构示意图六。
具体实施方式
在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。另外,术语“包括”及其任何变形,意图在于覆盖不排他的包含。
下面结合实施方式和说明书附图对本发明做进一步的详细说明。
一、特征选取
所提方法的核心——去重名模型,是一种有监督的分类模型。首先,我们从相关渠道获取了一部分较为准确的个人唯一标识数据,用于构建正负样本、模型训练和模型验证;测试集结果将用人工质检的方式进行检查和反馈。
该模型所选用特征的共同逻辑,是同名自然人各自的“关联企业”之间是否存在某种联系或相似性。
“关联企业”,指的是与自然人以某一种或多种关系相关联的企业,关系类型包括自然人为企业的法定代表人、主要人员(董事、监事、高管)、自然人股东或者最终受益人等。
如图2所示,企业A-F均为某一自然人的“关联企业”。
经过数据分析,模型特征确定为以下8类。
如图3所述,新人员A的关联企业与同名存量人员“A”的关联企业,是否具有相同的注册地址。
如图4所示,新人员A的关联企业与同名存量人员“A”的关联企业,具有相同的企业股东。
如图5所示,新人员A的关联企业与同名存量人员“A”的关联企业,除A以外,是否还有其他同名自然人。
如图6所述,新人员A的关联企业与同名存量人员“A”的关联企业,是否具有相同的公开联系方式:电话或者email。
如图7所示,新人员A的关联企业,是否为同名存量人员“A”的关联企业的分支机构或办事处。两企业是否互为分支机构,或者同为第三企业的分支机构。
如图8所示,新人员A的关联企业与同名存量人员“A”的关联企业,是否企业名称相似。
企业名称一般由四个部分组成:地名+字号+行业/经营特点+组织形式,根据分割部分判定相似性。
“A”的重名率作为新的特征入模,重名率指出现某个名字的概率(例如,有100个不同的自然人,其中有5个自然人都叫“张三”,则“张三”这个名字的重名率为5%)。
新人员A的关联企业与同名存量人员“A”的关联企业,是否属于相同的行业。这里的行业我们取到3级。
二、数据预处理
数据中可能存在两个同一个人名,它们所关联的企业中存在相同的企业,这些人名却有不同的PID,这样的人我们认为应该是同一个人。对于这样的样本,根据负样本的构造方式,会把本来应该属于正样本的数据,变成负样本。这对模型的训练会造成严重干扰。为了去除这样的干扰,我们使用图论算法,提前合并这些样本,主要步骤如下:
S1.以人名为键值,个人名下所有公司的uid集合为值,构造字典对;
S2.定义相关性矩阵join_matrix,对字典中任意两个元素,如果它们的公司uid集合的交集不空,则两元素的join_matrix值为1;否则,为0;
S3.以join_matrix为关联矩阵,构造一个无向图,关联矩阵值为1表示两个结点之间有一条边相连;值为0表示两个结点间没有边相连;
S4.找出图中的所有最大团(MaximumClique),这些最大团表示团中所有元素应该对应同一个个人;
S5.对每一个团,合并该团中所有的元素,所对应的企业,归集到同一个PID下;归集PID取个人名下企业数最多的那个个人PID,若数量都相同,则直接取其中任一个。
三、特征和训练样本构造
训练样本构造
为了采用有监督的方式训练模型,我们需要构造训练样本。
用于建模的基础数据主要为个人信息和相关的企业信息。具体地,其数据格式为:簇名,人名,公司名,公司uid,股东,主要人员,法人名,注册地址,年报-tel,年报-email。数据每一行对应个人所关联的一个企业信息。
定义簇为同一个名字,具有不同PID,及其对应公司集的样本集。
为了接近实际的预测场景,使得数据的分布与实际一致,我们的样本构造操作,限制在同一个簇内,样本具体构造过程如下:
构造的样本输出格式:簇名,Query,Keys,label。Query表示新人员所对应企业。Keys表示某个同名存量人员名下所有企业,是个集合。Query和Keys的具体值,用基础数据的索引来表示。显然地,在计算Query和Keys上的指标时,需要一个聚合函数。Label为标签,1:表示正样本,两个人是同一个人;0:表示负样本,两个人不是同一个人。
以簇名为第一键值,以PID为第二键值,对表进行聚合分组,得到同一个PID下所有公司,以下称为分组。
S1.构造正样本:
对簇中的每个分组,如果包含的企业个数大于1,则对该分组,遍历分组中的所有企业元素,元素作为Query,企业集合-{该元素},作为Keys。
S2.构造负样本:
针对同一个PID中每个企业,以该企业Query,其它分组,为Keys,构造一个样本,作为负样本。
S3.去重
对于Keys中元素数为1的样本,如果和Query合并后。由于后续特征构造的所有计算,都满足交换律,导致两个样本算出的所有特征都相同,所以这两个样本,只需要保留其中一个。
例如,如下两个样本:
index,簇名,Query,Keys,Label
23181,丁世栋,9097,(9098,),1
23182,丁世栋,9098,(9097,),1
以Label和合并项为键值,去重。
特征构造
特征1:企业注册地址相似性
地址标准化
以2021年国家标准地址库,作为基础,对企业注册地址进行标准化。具体过程如下:
S1.基于正则提取出道路、建筑物号等信息;
S2.省、市、区/县的匹配,过程如下:
首先,为所使用的国家标准地址库建立倒排索引,以支持快速检索;
接着,从待标准化地址文本的起始位置开始,采用最大长度优先的方式匹配文本中的所有文本片段;
最后,对所有匹配结果进行标准行政区域从属关系校验,并补全缺失的父级地址。
地址匹配,其过程如下:
S1.对输入的两个地址进行标准化,标准化的地址表示为:省,市,区/县,剩余的详细地址;
S2.将标准化后的地址,从前往后逐级匹配,每匹配一级,分数+1,若失配,则退出匹配;直到匹配到剩余的详细地址,最终的地址相似性分值,会加上该部分的相似性分值。剩余的详细地址部分的匹配分值,计算过程为:
首先,对其中所包含的道路号,建筑号进行语义处理,分配权重;
接着,对剩余文本使用jieba进行分词;
最后,对两个地址结果集使用余弦相似度算法计算相似度。
聚合函数为取最大值。
特征2:共同的企业股东和特征3:共同的个人
给定企业股东列表,其通常包含个人和企业股东,为了区分两者,我们构建了一个股东类型二分类器,以判断企业所有股东列表中每个股东,是个人还是企业。分类器直接使用股东名文本作为输入特征,采用预训练模型bert+linear层的模型。
采用共同的企业股东数量来作为特征。聚合函数为取最大值。
共同的个人,则采用人名列表所对应的tf-idf向量的相似性,作为特征。具体地,对个人列表,将每个个人名,看做一个词,人名列表看做一个文档。构造人名列表的tf-idf向量,计算两个文档tf-idf向量的余弦相似性,将该余弦相似性作为两个人名列表的相似性。其中,idf取全局值,即本公司企业数据中所有高管人名库的人名出现概率,也即为本节中特征7的构造中所用的企业高管人名库。
考虑到个人人名数量的庞大,以及个人人名在所有人名中的稀疏性,即:向量中的大部分位置都是0,在具体实现时,我们使用向量的稀疏表示,来存储节省空间。
特征4:相同的公开联系方式
采用共同的电话号码数量和email数量构建2个特征;聚合函数都为取最大值。
特征5:企业间的关系
大部分的关系可以直接从公司名称推断。这里我们直接使用公司已有的企业关系表。基于该关系表,我们构建了,如下的4类关系:是母公司,是同一母公司分支,是分支,以及None关系(表示不存在关系)。并约定关系的序关系:是母公司==是分支>是同一母公司分支>None关系。聚合函数取最大值。
特征6:企业名称相似性
公司名称拆分为4个部分:地名、字号、行业/经营特点、组织形式。
公司名的拆分,我们采用NLP中命名实体识别抽取模型来做。模型采用预训练模型bert+crf,模型输入为公司名称的BIO标签标注的数据,具体为:{'O','I-LOC','B-LOC','I-NAME','I-INDU','I-ORG','B-NAME','B-INDU','B-ORG'},其中LOC,NAME,INDU,ORG分别对应地名、字号、行业/经营特点、组织形式。基于已有的数据,标注1万条数据,来训练模型。
特征构建:使用除组织形式外的其他部分。
共构造两类特征,作为模型的特征。这两类特征的构造过程,如下所示:
第一类:
S1.使用公司名称拆分算法,将企业名称分为四部分;
S2.取企业名称分割后的前3个部分:地名、字号、行业/经营特点,作为一个3元组。
S3.对该3元组的每个部分的文本,分别使用句向量模型(sentenceembedding)text2vec-large-chinese,生成对应的文本embedding。
S4.计算目标样本,在每个部分上的相似性,该相似性为点积。计算两个3元组的余弦相似度,作为两个企业名称相似性值。聚合函数为取最大值。
第二类:
首先,使用text2vec-large-chinese模型,对每个部分计算其embedding,计算与目标的相似值,该相似值,为两embedding的余弦距离,将每部分看作一个单独的特征。聚合函数为取最大值。
特征7:名字和姓氏的概率
为了得到个人姓名的出现的全局概率,我们使用公司已有所有企业的高管人名库,来计算其出现概率;若查不到人名时,返回缺省值,缺省值定义为:1/企业高管名字库名字数。
姓氏提取,基于所搜集的中国姓氏录;若查不到姓氏时,返回缺省值,缺省值定义为:1/企业高管名字库名字数。
特征8:所在行业相似性
行业取一级-二级-三级,进行多级匹配:若一级行业相同则赋值1,若二级行业相同则赋值2,三级行业相同则赋值3;皆不相同赋值0。聚合函数为取最大值。
四、模型训练与评估
自定义损失函数
为了处理正负样本存在严重的不均衡的问题。我们在使用LightGBM时,引入自定义二分类的FocalLoss函数(LightGBM库本身并未提供)。根据LightGBM接口定义,引入自定义Loss函数时,需要:定义初始化值求解函数,Loss函数的一阶导和二阶导以及评估损失计算函数。
在使用前述,特征和样本的构造方法后,得到训练样本。在这些样本上进行模型的训练。模型的训练,遵循一般的模型训练过程:划分训练集合验证集。模型基于5折交叉验证的网格搜索方法,选出最好的模型;并在验证集上进行验证,确定最终的模型。
以上对本发明及其实施方式进行了描述,这种描述没有限制性。如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似实施例,均应属于本发明的保护范围。

Claims (2)

1.一种准确率高的企业高效去重名方法,其特征在于,包括以下步骤:
S1、特征选取
我们从相关渠道获取了一部分较为准确的个人唯一标识数据,用于构建正负样本、模型训练和模型验证;测试集结果将用人工质检的方式进行检查和反馈;该模型所选用特征的共同逻辑,是同名自然人各自的“关联企业”之间是否存在某种联系或相似性;
“关联企业”,指的是与自然人以某一种或多种关系相关联的企业,关系类型包括自然人为企业的法定代表人、主要人员(董事、监事、高管)、自然人股东或者最终受益人等;
S2、数据预处理
数据中可能存在两个同一个人名,它们所关联的企业中存在相同的企业,这些人名却有不同的PID,这样的人我们认为应该是同一个人,对于这样的样本,我们使用图论算法,提前合并这些样本,主要步骤如下:
第一步、以人名为键值,个人名下所有公司的uid集合为值,构造字典对;
第二步、定义相关性矩阵join_matrix,对字典中任意两个元素,如果它们的公司uid集合的交集不空,则两元素的join_matrix值为1;否则,为0;
第三步、以join_matrix为关联矩阵,构造一个无向图,关联矩阵值为1表示两个结点之间有一条边相连;值为0表示两个结点间没有边相连;
第四步、找出图中的所有最大团(MaximumClique),这些最大团表示团中所有元素应该对应同一个人;
第五步、对每一个团,合并该团中所有的元素,所对应的企业,归集到同一个PID下;归集PID取个人名下企业数最多的那个个人PID,若数量都相同,则直接取其中任一个;
S3、特征和训练样本构造
训练样本构造
用于建模的基础数据主要为个人信息和相关的企业信息;具体地,其数据格式为:簇名,人名,公司名,公司uid,股东,主要人员,法人名,注册地址,年报-tel,年报-email;数据每一行对应个人所关联的一个企业信息;定义簇为同一个名字,具有不同PID,及其对应公司集的样本集;
为了接近实际的预测场景,使得数据的分布与实际一致,我们的样本构造操作,限制在同一个簇内,样本具体构造过程如下:
首先,构造的样本输出格式:簇名,Query,Keys,label;Query表示新人员所对应企业,Keys表示某个同名存量人员名下所有企业,是个集合,Query和Keys的具体值,用基础数据的索引来表示,显然地,在计算Query和Keys上的指标时,需要一个聚合函数,Label为标签,1:表示正样本,两个人是同一个人;0:表示负样本,两个人不是同一个人;
然后,以簇名为第一键值,以PID为第二键值,对表进行聚合分组,得到同一个PID下所有公司,以下称为分组;
构造正样本:对簇中的每个分组,如果包含的企业个数大于1,则对该分组,遍历分组中的所有企业元素,元素作为Query,企业集合-{该元素},作为Keys;
构造负样本:针对同一个PID中每个企业,以该企业Query,其它分组,为Keys,构造一个样本,作为负样本;
去重:对于Keys中元素数为1的样本,如果和Query合并后,由于后续特征构造的所有计算,都满足交换律,导致两个样本算出的所有特征都相同,所以这两个样本,只需要保留其中一个;
特征构造
特征1:企业注册地址相似性,包括;
地址标准化,以2021年国家标准地址库,作为基础,对企业注册地址进行标准化;具体过程如下:
第一步、基于正则提取出道路、建筑物号等信息;
第二不、省、市、区/县的匹配,过程如下:
首先,为所使用的国家标准地址库建立倒排索引,以支持快速检索;接着,从待标准化地址文本的起始位置开始,采用最大长度优先的方式匹配文本中的所有文本片段;最后,对所有匹配结果进行标准行政区域从属关系校验,并补全缺失的父级地址;
地址匹配,过程如下:
第一步、对输入的两个地址进行标准化,标准化的地址表示为:省,市,区/县,剩余的详细地址;
第二不、将标准化后的地址,从前往后逐级匹配,每匹配一级,分数+1,若失配,则退出匹配;直到匹配到剩余的详细地址,最终的地址相似性分值,会加上该部分的相似性分值;剩余的详细地址部分的匹配分值,计算过程为:
首先,对其中所包含的道路号,建筑号进行语义处理,分配权重;接着,对剩余文本使用jieba进行分词;最后,对两个地址结果集使用余弦相似度算法计算相似度,聚合函数为取最大值;
特征2:共同的企业股东、以及特征3:共同的个人
给定企业股东列表,其通常包含个人和企业股东,为了区分两者,我们构建了一个股东类型二分类器,以判断企业所有股东列表中每个股东,是个人还是企业;分类器直接使用股东名文本作为输入特征,采用预训练模型bert+linear层的模型;采用共同的企业股东数量来作为特征;聚合函数为取最大值;
共同的个人,则采用人名列表所对应的tf-idf向量的相似性,作为特征;具体地,对个人列表,将每个个人名,看做一个词,人名列表看做一个文档,构造人名列表的tf-idf向量,计算两个文档tf-idf向量的余弦相似性,将该余弦相似性作为两个人名列表的相似性;其中,idf取全局值,即本公司企业数据中所有高管人名库的人名出现概率,也即为本节中特征7的构造中所用的企业高管人名库;
考虑到个人人名数量的庞大,以及个人人名在所有人名中的稀疏性,即:向量中的大部分位置都是0,在具体实现时,我们使用向量的稀疏表示,来存储节省空间;
特征4:相同的公开联系方式
采用共同的电话号码数量和email数量构建2个特征;聚合函数都为取最大值;
特征5:企业间的关系
大部分的关系可以直接从公司名称推断;这里我们直接使用公司已有的企业关系表;基于该关系表,我们构建了4类关系:是母公司,是同一母公司分支,是分支,以及None关系(表示不存在关系);并约定关系的序关系:是母公司==是分支>是同一母公司分支>None关系;聚合函数取最大值;
特征6:企业名称相似性
公司名称拆分为4个部分:地名、字号、行业/经营特点、组织形式;
公司名的拆分,我们采用NLP中命名实体识别抽取模型来做;模型采用预训练模型bert+crf,模型输入为公司名称的BIO标签标注的数据,具体为:{'O','I-LOC','B-LOC','I-NAME','I-INDU','I-ORG','B-NAME','B-INDU','B-ORG'},其中LOC,NAME,INDU,ORG分别对应地名、字号、行业/经营特点、组织形式,基于已有的数据,标注1万条数据,来训练模型;
特征构建:使用除组织形式外的其他部分;
共构造两类特征,作为模型的特征;这两类特征的构造过程,如下所示:
第一类:
第一步、使用公司名称拆分算法,将企业名称分为四部分;
第二不、取企业名称分割后的前3个部分:地名、字号、行业/经营特点,作为一个3元组;
第三步、对该3元组的每个部分的文本,分别使用句向量模型(sentenceembedding)text2vec-large-chinese,生成对应的文本embedding;
第四步、计算目标样本,在每个部分上的相似性,该相似性为点积,计算两个3元组的余弦相似度,作为两个企业名称相似性值;聚合函数为取最大值;
第二类:
使用text2vec-large-chinese模型,对每个部分计算其embedding,计算与目标的相似值,该相似值,为两embedding的余弦距离,将每部分看作一个单独的特征;聚合函数为取最大值;
特征7:名字和姓氏的概率
为了得到个人姓名的出现的全局概率,我们使用公司已有所有企业的高管人名库,来计算其出现概率;若查不到人名时,返回缺省值,缺省值定义为:1/企业高管名字库名字数;
姓氏提取,基于所搜集的中国姓氏录;若查不到姓氏时,返回缺省值,缺省值定义为:1/企业高管名字库名字数;
特征8:所在行业相似性
行业取一级-二级-三级,进行多级匹配:若一级行业相同则赋值1,若二级行业相同则赋值2,三级行业相同则赋值3;皆不相同赋值0,聚合函数为取最大值;
S4、模型训练与评估
自定义损失函数
我们在使用LightGBM时,引入自定义二分类的FocalLoss函数(LightGBM库本身并未提供);根据LightGBM接口定义,引入自定义Loss函数时,需要:定义初始化值求解函数,Loss函数的一阶导和二阶导以及评估损失计算函数;
在使用前述,特征和样本的构造方法后,得到训练样本;在这些样本上进行模型的训练,模型的训练,遵循一般的模型训练过程:划分训练集合验证集;模型基于5折交叉验证的网格搜索方法,选出最好的模型;并在验证集上进行验证,确定最终的模型。
2.根据权利要求1所述的一种准确率高的企业高效去重名方法,其特征在于,所述S1中,经过数据分析,模型特征确定为以下8类:
新人员A的关联企业与同名存量人员“A”的关联企业,是否具有相同的注册地址;
新人员A的关联企业与同名存量人员“A”的关联企业,具有相同的企业股东;
新人员A的关联企业与同名存量人员“A”的关联企业,除A以外,是否还有其他同名自然人;
新人员A的关联企业与同名存量人员“A”的关联企业,是否具有相同的公开联系方式:电话或者email;
新人员A的关联企业,是否为同名存量人员“A”的关联企业的分支机构或办事处;两企业是否互为分支机构,或者同为第三企业的分支机构;
新人员A的关联企业与同名存量人员“A”的关联企业,是否企业名称相似;
企业名称一般由四个部分组成:地名+字号+行业/经营特点+组织形式,根据分割部分判定相似性;
“A”的重名率作为新的特征入模,重名率指出现某个名字的概率(例如,有100个不同的自然人,其中有5个自然人都叫“张三”,则“张三”这个名字的重名率为5%)
新人员A的关联企业与同名存量人员“A”的关联企业,是否属于相同的行业;这里的行业我们取到3级。
CN202311012768.6A 2023-08-12 2023-08-12 一种准确率高的企业高效去重名方法 Pending CN117077674A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311012768.6A CN117077674A (zh) 2023-08-12 2023-08-12 一种准确率高的企业高效去重名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311012768.6A CN117077674A (zh) 2023-08-12 2023-08-12 一种准确率高的企业高效去重名方法

Publications (1)

Publication Number Publication Date
CN117077674A true CN117077674A (zh) 2023-11-17

Family

ID=88705427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311012768.6A Pending CN117077674A (zh) 2023-08-12 2023-08-12 一种准确率高的企业高效去重名方法

Country Status (1)

Country Link
CN (1) CN117077674A (zh)

Similar Documents

Publication Publication Date Title
CN111428054B (zh) 一种网络空间安全领域知识图谱的构建与存储方法
US11615093B2 (en) Fuzzy data operations
CN109657947B (zh) 一种面向企业行业分类的异常检测方法
CN111831824A (zh) 一种舆情正负面分类方法
CN111158641B (zh) 基于语义分析和文本挖掘的事务类功能点自动识别方法
MX2012011923A (es) Asignacion de atributis aplicables para datos que describen la identidad personal.
KR20160149050A (ko) 텍스트 마이닝을 활용한 순수 기업 선정 장치 및 방법
CN117473431A (zh) 一种基于知识图谱的机场数据分类分级方法及系统
CN115794798A (zh) 一种市场监管信息化标准管理与动态维护系统及方法
CN107992613A (zh) 一种基于机器学习的文本挖掘技术消费维权指标分析方法
CN110659365A (zh) 一种基于多层次结构词典的畜产品安全事件文本分类方法
Budzynska et al. Argument Mining.
CN113920366A (zh) 一种基于机器学习的综合加权主数据识别方法
Leung et al. Counting protests in news articles: A dataset and semi-automated data collection pipeline
Spichakova et al. Application of Machine Learning for Assessment of HS Code Correctness.
CN115545437A (zh) 一种基于多源异构数据融合的金融企业经营风险预警方法
CN116205296A (zh) 一种融合自顶向下与自底向上的abac策略工程方法
CN117077674A (zh) 一种准确率高的企业高效去重名方法
CN112966901B (zh) 面向检察业务协同流程的世系数据质量分析与验证方法
CN116128275A (zh) 一种事件推演预测系统
CN112818215A (zh) 产品数据的处理方法、装置、设备及存储介质
AU2017201787B2 (en) Fuzzy data operations
CN105138544B (zh) 一种重塑逻辑演绎链的搜索方法
Januzaj et al. An application of data mining to identify data quality problems
CN117150245B (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