基于tf-idf词向量的银行名称批量校正方法及系统

文档序号:1087393 发布日期:2020-10-20 浏览:8次 >En<

阅读说明:本技术 基于tf-idf词向量的银行名称批量校正方法及系统 (TF-IDF word vector-based bank name batch correction method and system ) 是由 李振 张刚 鲍东岳 尹正 刘昊霖 彭加欣 陈厚霖 陈婷 潘仕林 黑小波 王豫丰 于 2020-07-09 设计创作,主要内容包括:本发明提供了一种基于TF-IDF词向量的银行名称批量校正方法及系统,涉及数据查询技术领域,能够实现银行名称批量校正,准确率高、速度快,能大幅提升企业和银行批量转账效率;该方法包括S1、采用TF-IDF算法训练处理后银行名称库得到第一词向量矩阵;S2、逐行做归一化处理得到第一归一化矩阵;S3、处理待矫正银行名得到每个银行名对应2字词组集;S4、采用TF-IDF算法训练词组集得到第二词向量矩阵,逐行归一化得到第二归一化矩阵;S4、计算两个归一化矩阵的余弦相似度,选择银行全称作为匹配结果替换对应的待较正银行名称,并附加上对应行号作为较正结果输出。本发明提供的技术方案适用于银行名称批量校正的过程中。(The invention provides a bank name batch correction method and system based on TF-IDF word vectors, relates to the technical field of data query, can realize the batch correction of bank names, has high accuracy and high speed, and can greatly improve the batch transfer efficiency of enterprises and banks; the method comprises the steps of S1, obtaining a first word vector matrix by a bank name library after the training processing of the TF-IDF algorithm; s2, carrying out normalization processing line by line to obtain a first normalization matrix; s3, processing the bank names to be corrected to obtain 2 word group sets corresponding to each bank name; s4, training the word group set by adopting a TF-IDF algorithm to obtain a second word vector matrix, and normalizing line by line to obtain a second normalized matrix; s4, calculating cosine similarity of the two normalization matrixes, selecting a full bank name as a matching result to replace a corresponding bank name to be corrected, and adding a corresponding line number as a correction result to output. The technical scheme provided by the invention is suitable for the batch correction process of the bank names.)

基于TF-IDF词向量的银行名称批量校正方法及系统

【技术领域】

本发明涉及数据查询技术领域,尤其涉及一种基于TF-IDF词向量技术的银行名称批量校正方法及系统。

【背景技术】

转账是一种十分常见的银行货币结算方式,按照转账的账户数目可以把转账分为单笔划拨和多笔批量,单笔转账常见于个人客户,而多笔批量转账常发生于企业和银行,例如企业利用银企直连的批量支付、银行代发员工工资、银行批量支付货款等。批量支付涉及数家甚至数十家银行,为保证转账顺利完成,需要确保银行名称及对应行号准确无误,目前主流的批量支付方式以人工核对银行名称和手动输入为主,这种方式需要业务人员手动选定银行、省市、地区等关键词,然后在给出的一系列银行名称里找到目标银行并选定,存在操作步骤多、速度慢以及不可批量处理的缺点。当面对一大批转账需求时,光是查询银行名称就要花费业务人员数小时的时间。

因此,有必要研究一种基于TF-IDF词向量技术的银行名称批量校正系统来应对现有技术的不足,以解决或减轻上述一个或多个问题。

发明内容

有鉴于此,本发明提供了一种基于TF-IDF词向量技术的银行名称批量校正方法及系统,能够实现银行名称批量校正和行号自动匹配,并且具有准确率高、校正速度快的优点,能够大幅度提升企业和银行的批量转账效率,节省企业时间成本。

一方面,本发明提供一种基于TF-IDF词向量技术的银行名称批量校正方法,其特征在于,所述方法的步骤包括:

S1、对银行名称库进行处理后作为第一训练集,采用TF-IDF算法处理第一训练集,得到第一词向量矩阵;

S2、对第一词向量矩阵的每一行分别做归一化处理得到第一归一化矩阵;

S3、批量导入待校正的银行名称,并对银行名称进行多线程批量预处理,获得每个银行名称对应的第二训练集;

S4、采用TF-IDF算法对第二训练集进行处理,得到每个银行名称对应的第二词向量矩阵,并对第二词向量矩阵每一行分别做归一化处理得到第二归一化矩阵;

S5、计算第一归一化矩阵和第二归一化矩阵的余弦相似度,根据余弦相似度选择银行全称作为匹配结果替换对应的待较正银行名称,并附加上对应行号作为较正结果批量输出。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,根据余弦相似度选择银行全称作为匹配结果的具体内容为:第二归一化矩阵与第一归一化矩阵的转置做点乘,选择相乘结果中每一行最大值所在位置对应的银行全称作为匹配结果。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,步骤S1中对银行名称库做的处理包括:

S11、过滤掉银行名称中的非关键文字;

S12、对过滤后的银行名称做切分和重新组合,获得多个单字和多个2字词组。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,步骤S2或步骤S4中的归一化处理为L2范数归一化处理,使每一行向量的模等于1。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,L2范数归一化处理的计算方式为:

Figure BDA0002577294060000032

其中,norm2(x)为L2范数,xi为第一或第二词向量矩阵中的元素,x′i为对应的第一或第二归一化矩阵中的元素;x1、x2...xn为向量中的各个值,代表银行名称对应的TF-IDF值。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,TF-IDF算法具体为:TF-IDF=TFIDF;

TF为某一词的词频,IDF为逆向文件频率。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,TF的计算公式为:IDF的计算公式为:

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法的步骤还包括:S5、将新增银行名称加入到银行名称库中,重新进行S1-S4。

另一方面,本发明提供一种基于TF-IDF词向量技术的银行名称批量校正系统,其特征在于,能够实现如上任一所述的较正方法的步骤;

所述校正系统包括:

IO模块,用于批量导入待较正银行名称以及较正结果的批量输出;

模型模块,负责对银行名称库和待较正银行名称批量地做前期处理,以及获取每个银行名称的词向量矩阵;

存储计算模块,用于存储银行名称库和词向量矩阵,并进行计算,计算内容包括归一化处理、余弦相似度计算以及根据余弦相似度计算结果进行结果匹配。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述系统进行银行名称校正的准确率达到99.9%以上。

再一方面,本发明提供一种基于TF-IDF词向量技术的金融机构名称批量校正方法,其特征在于,所述校正方法针对包括银行在内的金融机构,步骤如上任一所述的校正方法的步骤,但需将银行名称、银行全称、银行简称等改为对应的金融机构名称、全称或简称。

与现有技术相比,本发明可以获得包括以下技术效果:能够实现银行名称批量校正和行号自动匹配,并且具有准确率高、校正速度快的优点,能够大幅度提升企业和银行的批量转账效率,节省企业时间成本。

当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有技术效果。

【附图说明】

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1是本发明一个实施例提供的银行名称批量校正方法中TF-IDF词向量训练步骤的具体流程图;

图2是本发明一个实施例提供的银行名称批量校正系统工作逻辑图。

具体实施方式

为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

针对现有技术的不足,本发明提供一种基于TF-IDF词向量技术的银行名称批量校正系统,该系统可实现银行名称批量校正和行号自动匹配,并且具有准确率高、校正速度快等优点,能够大幅度提升企业和银行的批量转账效率,节省企业时间成本。系统包括三个模块,分别为输入输出模块、模型模块以及计算和存储模块。输入输出模块提供批量行名的输入和校正结果的输出,模型模块负责预处理输入数据并把数据转换成TF-IDF词向量,计算和存储模块负责行名校正和行号匹配。

银行名称批量校正方法具体内容包括:

步骤1:对银行名称库的所有银行全称做预处理得到训练数据。

预处理内容具体包括:

过滤:过滤银行全称中无关键信息的文字,包括但不限于有限公司,股份有限公司,银行和支行;

切分:对过滤后的银行全称做分词,并把全称按字为单位切分开;

组合:将切分后的每个字按照顺序两两排列组合,逆序的词不要,得到“2字词组”,“2字词组”加上前一步切分后的所有词语,共同组成训练集。

例如中国工商北京市顺义切分组合后变成[中国、工商、北京、顺义、中工、工顺、京顺...]。

步骤2:运用TF-IDF算法,输入训练集得到词向量矩阵,然后将词向量归一化,并将归一化后的矩阵X保存于存储和计算系统,同时也得到了训练好的TF-IDF模型,将TF-IDF模型保存于模型系统中;TF-IDF模型即为保存内容,包含了训练集中每个词和字的TF和IDF信息,以及词和字的序号。完成以上步骤后,就可以进行行名的批量校正和行号匹配了。

TF-IDF计算方式为:TF-IDF=TFIDF;TF为词频,IDF为逆向文件频率;

其中,TF的计算公式为:

Figure BDA0002577294060000061

IDF的计算公式为:

Figure BDA0002577294060000062

对词向量进行归一化具体为对词向量矩阵中的每一行分别做归一化处理,归一化处理采用L2范数归一化。

L2范数归一化的计算方式为:

其中,norm2(x)为L2范数;xi为TF-IDF矩阵中的元素,x′i为对应的归一化矩阵中的元素;范数公式中的x1、x2...xn分别是一个向量中的各个值,代表这某个银行名称组合切分后的TF-IDF值;

步骤3:输入需要校正的批量行名(行名可以是银行简称,或缺省、包含错误信息的行名等),比如以Excel表的形式导入,每一行是一个行名。

步骤4:将该表传输进入模型系统,预处理表中的每个行名,预处理方法同步骤1。例如,输入的工商银行顺义,过滤切分组合后变成:[工商,顺义,工顺,工义…]

步骤5:将预处理后的数据输入训练好的TF-IDF模型,得到TF-IDF词向量,并归一化记为Y。

步骤6:将步骤5中矩阵Y乘以S2中矩阵X的转置,即做余弦相似度计算,得到新的矩阵Z,找到Z每一行中最大值的位置对应的银行全称和行号;

步骤7:将找到的银行全称替代原来输入的行名,并加上行号作为校正结果输出。

批量校正与单个校正从技术上的区别在于:批量校正是对用户上传的名称查询表格做快速的一次计算匹配,具体为将多个简称多线程预处理得到TF-IDF矩阵,再单个校正得到的一行向量,然后直接将该TF-IDF矩阵与保存的矩阵X做计算,一次性找到所有的匹配结果,相比于单个循环查询速度大大提高,适用于批量匹配的业务场景。

本申请的内容也可适用于其他金融机构名称的批量较正过程。

本发明的有益效果如下:

1)、本发明可实现银行名称的批量校正,只需要一键导入批量行名,即可得到自动校正后的银行全称以及正确匹配的行号,操作步骤简单、高效,可替代业务人员的大量重复性工作,提升企业和银行的工作效率。

2)、本发明涉及到的模型量级轻,算法简洁,可以很容易地嵌入到企业银企直连或相关财务系统中。

3)、本发明采取矩阵计算的方式,相比循环计算方式,计算速度大幅度提升,对于数千条名称也可在短短几分钟内校正完毕,相比人工校对数以小时计的开销,本发明可以大幅提高生产力。

4)、本发明校对准确性高,经对14万条数据测试后发现准确率达到99.9%。

以上对本申请实施例所提供的一种基于TF-IDF词向量技术的银行名称批量校正系统,进行了详细介绍。以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

如在说明书及权利要求书当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求书并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求书当中所提及的“包含”、“包括”为一开放式用语,故应解释成“包含/包括但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求书所界定者为准。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

上述说明示出并描述了本申请的若干优选实施例,但如前所述,应当理解本申请并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述申请构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本申请的精神和范围,则都应在本申请所附权利要求书的保护范围内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种数据处理方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!