发明内容
为了解决现有技术存在的问题,本发明的至少一个实施例提供了一种验证、模型的训练、模型的共享方法、系统及介质。
第一方面,本发明实施例提供了一种文本数据一致性检测模型的训练方法,所述方法包括:
建立文本数据的第一检测模型,其中,所述第一检测模型为包括至少两个用于执行不同检测任务的特征层的一致性检测模型;
获取至少两组样本对,其中,每组所述样本对包括:两条文本数据,每组所述样本对中的两条文本数据在每条检测任务下的文本参数已知;
通过所述样本对分别对所述第一检测模型中的各特征层进行训练,得到训练完成后的第二检测模型,其中,所述第二检测模型得到的检测结果与相应所述文本参数得到一致性预测损失满足预设条件。
基于上述技术方案,本发明实施例还可以做出如下改进。
结合第一方面,在第一方面的第一种实施例中,所述通过所述样本对分别对所述第一检测模型中的各特征层进行训练,得到训练完成后的第二检测模型,其中,所述第二检测模型得到的检测结果与相应所述文本参数得到一致性预测损失满足预设条件,包括:
将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量;
根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失;
针对每组所述样本对,根据所述样本对在每条检测任务下的所述预测损失,得到所述一致性预测损失;
如果每组所述一致性预测损失均小于或等于预设损失阈值,则判定所述第一检测模型收敛,得到训练完成的所述第二检测模型;
如果任一所述一致性预测损失大于所述损失阈值,则调整所述第一检测模型中的各项参数,直到所述第一检测模型收敛为止。
结合第一方面的第一种实施例,在第一方面的第二种实施例中,所述获取至少两组样本对,包括:
获取语料数据,对所述语料数据进行数据清洗,得到清洗数据;
对所述清洗数据进行格式转换,得到所述文本数据;
针对每条所述文本数据,获取任一所述文本数据与所述文本数据组成所述样本对;
获取每组样本对在每条检测任务下的文本参数;所述文本参数包括:样本对中的文本数据是否相同、样本对中的文本数据是否对应相同目标对象、样本对中的文本数据中的预设关键词是否相同、样本对中的文本数据的最长公共子序列占两条文本数据的平均长度的比值。
结合第一方面的第二种实施例,在第一方面的第三种实施例中,所述获取语料数据,对所述语料数据进行数据清洗,得到清洗数据,包括:
判断每条语料数据的字符数是否符合预设长度范围;
当所述语料数据的字符数不符合所述预设长度范围时,将所述语料数据删除;
判断每条语料数据中是否包含所有预设关键词;
当所述语料数据不包含任一预设关键词,将所述语料数据删除;
将字符数符合预设长度范围,且包含所有预设关键词的语料数据按所述预设关键词进行采样,得到所述清洗数据。
结合第一方面的第二种实施例,在第一方面的第四种实施例中,所述对所述清洗数据进行格式转换,得到所述文本数据,包括:
按预设语料字典,将所述清洗数据中的每个字符转换为对应的整数索引,得到文本数据;其中,语料字典中对应每个字符均设置有相应的整数索引。
结合第一方面的第二种实施例,在第一方面的第五种实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括:
针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第一文本数据;
将每组样本对中的第一文本数据分别输入所述一致性检测模型,分别得到第一特征向量,作为所述特征向量;所述第一特征向量对应的检测任务为:所述样本对中的第一文本数据是否相同。
结合第一方面的第二种实施例,在第一方面的第六种实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括:
将每组样本对中的文本数据分别输入所述一致性检测模型,分别得到第二特征向量,作为所述特征向量;所述第二特征向量对应的检测任务为:所述样本对中的文本数据是否对应相同目标对象。
结合第一方面的第二种实施例,在第一方面的第七种实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括:
将每组样本对中的文本数据分别输入所述一致性检测模型,分别得到第三特征向量,作为所述特征向量;所述第三特征向量对应的检测任务为:所述样本对中的文本数据中的预设关键词是否相同。
结合第一方面的第二种实施例,在第一方面的第八种实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括:
针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第二文本数据;
将每组样本对中的第二文本数据分别输入所述一致性检测模型,分别得到第四特征向量,作为所述特征向量;所述第四特征向量对应的检测任务为:样本对中的第二文本数据的最长公共子序列占两条文本数据的平均长度的比值。
结合第一方面的第二种实施例,在第一方面的第九种实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括:
针对每组所述样本对,将所述样本对中的文本数据进行处理,使得所述样本对中的文本数据的总字符长度符合预设长度;
针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第三文本数据;
将每组样本对中的第三文本数据分别输入所述一致性检测模型,分别得到第五特征向量,作为所述特征向量;所述第五特征向量对应的检测任务为:预测所述样本对中第三文本数据被遮掩替换的字符。
结合第一方面的第二种实施例,在第一方面的第十种实施例中,所述针对每组所述样本对,根据所述样本对在每条检测任务下的所述预测损失,得到所述一致性预测损失,包括:
针对每组所述样本对,获取所述样本对在每条检测任务下的预测损失的预设权重值;
根据所述预测损失和所述预设权重值,得到所述一致性预测损失。
结合第一方面的第四、第五、第六或第七种实施例,在第一方面的第十一种实施例中,所述根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失,包括:
针对每组样本对中的文本数据,基于二分类模型对所述样本对中两条文本数据在每条检测任务下得到的特征向量进行处理,得到每条检测任务下的特征向量的一致性预测结果;
针对每条检测任务,根据所述一致性预测结果与所述文本参数,得到交叉熵损失,作为所述预测损失。
结合第一方面的第八种实施例,在第一方面的第十二种实施例中,所述根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失,包括:
针对每组所述样本对,基于回归模型,根据所述样本对对应的第四特征向量和所述样本对中的两条文本数据的文本参数,得到均方误差损失,作为所述预测损失。
结合第一方面的第四、第五、第六、第七、第八、第九或第十种实施例,在第一方面的第十三种实施例中,所述语料数据包括:地址数据;
所述样本对中的文本数据中的预设关键词包括:文本数据中的预设关键词的所属省份、预设关键词的所属市和预设关键词的所属区县。
第二方面,本发明实施例提供了一种文本数据一致性检测模型的共享方法,应用于至少两个共享单元,所述方法包括:
任一所述共享单元基于自身数据通过第一方面中任一实施例所述的训练方法得到相应的检测模型,并将所述检测模型共享;
其他所述共享单元依次获取所述检测模型作为自身建立的检测模型,并基于自身数据通过第一方面中任一所述的训练方法对所述检测模型进行训练,直至所述检测模型匹配每个所述共享单元的自身数据;
共享匹配每个所述共享单元的自身数据的检测模型。
第三方面,本发明实施例提供了一种录入地址真实性的验证方法,所述方法包括:
获取验证对象录入的地址数据,作为第一文本数据;
获取所述验证对象真实的地址数据,作为第二文本数据;
通过文本数据一致性检测模型得到所述第一文本数据和所述第二文本数据是否一致;其中,所述文本数据一致性检测模型是基于第一方面中任一实施例所述的训练方法训练得到。
第四方面,本发明实施例提供了一种文本数据一致性检测模型的训练系统,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面中任一实施例所述的文本数据一致性检测模型训练方法。
第五方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任一实施例所述的文本数据一致性检测模型训练方法。
第六方面,本发明实施例提供了一种文本数据一致性检测模型的共享系统,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第二方面中任一实施例所述的文本数据一致性检测模型共享方法。
第七方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第二方面中任一所述的文本数据一致性检测模型共享方法。
第八方面,本发明实施例提供了一种录入地址真实性的验证系统,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第三方面中任一实施例所述的录入地址真实性验证方法。
第九方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第三方面中任一实施例所述的录入地址真实性验证方法。
本发明的上述技术方案与现有技术相比具有如下优点:本发明实施例通过构建包括进行不同检测任务的特征层的一致性检测模型,通过样本数据对一致性检测模型进行训练,使得构建的模型可以从多层次确定不同文本数据之间是否一致,通过该模型可以快速确定不同人填写的地址是否一致,提高工作效率,同时提供了一种模型共享方法,在不共享源数据的情况下,通过更多的源数据对模型进行训练,使得模型可以适应更广泛的场景,提高数据安全性。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供的一种文本数据一致性检测模型的训练方法。参照图1,所述方法包括如下步骤:
S11、建立文本数据的第一检测模型,其中,所述第一检测模型为包括至少两个用于执行不同检测任务的特征层的一致性检测模型。
在本实施例中,建立执行不同检测任务的检测模型,通过多种检测任务合并执行使得一致性检测模型可以学习到字语义表征及其上下文环境,其中,检测任务可以包括检测不同文本数据是否一致、不同文本数据所表示的目标对象是否一致,不同文本数据中是否包含相同的关键词、不同文本数据的最长公共子序列占两条文本数据的平均长度的比值,从多维度实现对文本数据一致性的判定,提高检测精度。
S12、获取至少两组样本对,其中,每组所述样本对包括:两条文本数据,每组所述样本对中的两条文本数据在每条检测任务下的文本参数已知。
在本实施例中,获取多组样本对,该样本对可作为上述模型的训练数据,用以对模型进行数据训练,完善模型中的各项参数。文本数据的文本参数对应相应的检测任务,通过对每条检测任务的特征层输出的结果进行验证,确定模型输出的结果的正确性。在本方案中文本参数应当是对应每条检测任务均设置至少一条。
S13、通过所述样本对分别对所述第一检测模型中的各特征层进行训练,得到训练完成后的第二检测模型,其中,所述第二检测模型得到的检测结果与相应所述文本参数得到一致性预测损失满足预设条件。
在本实施例中,通过上述样本对对第一检测模型中的各个特征层进行训练,并得到训练完成的第二检测模型,需要保证的是第二检测模型每次针对样本对所输出的检测结果与相应的文本参数所得到的一致性预测损失应当满足预设条件,即,在每次对第一检测模型进行训练时,将第一检测模型针对样本对输出的检测结果去与相应的文本参数进行计算,得到一致性预测损失,并判断一致性预测损失是否满足预设条件,当一致性预测损失未满足预设条件时,则说明第一检测模型未训练完成,需要调整第一检测模型,直至第一检测模型得到的检测结果与相应的文本参数得到的一致性预测损失满足预设条件。
比如,检测任务为对文本数据是否一致进行判定,例如,可以通过将样本对输入第一检测模型,并输出相应的特征向量,比对两个特征向量之间的相似度值,来判断两条文本数据是否一致,其中,一致包括完全一致和大部分一致的情况,当除了连接词、分词之外的所有词语均一致时,我们就可以认定两条文本数据相同,但是系统并不能区分文本数据之间的区别,所以,可以计算特征向量的空间距离度量,通过特征向量之间的相似度来确定文本数据的相似程度,来判断量小文本数据是否相同,或者,可以通过依次比对两条文本数据中的字或者词来判断两条文本数据是否相同;而对应检测任务为对文本数据是否一致进行判定的两条文本数据的文本参数则为是或者否,即,两条文本数据一致,或两条文本数据不一致,通过该文本参数对特征层输出的结果进行判定,即可完成一次对该检测任务对应的特征层的训练,当样本数据足够多的,且该特征层每次输出的结果均可满足对应的文本参数,可以判定该特征层训练完毕。其他特征层的训练也可参照上述方式。
如图2所示,在一个具体的实施例中,所述通过所述样本对分别对所述第一检测模型中的各特征层进行训练,得到训练完成后的第二检测模型,包括如下步骤:
S21、将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量。
在本实施例中,通过第一检测模型分别处理每组样本对,第一检测模型的每个特征层对应相应的检测任务输出每组样本对对应的特征向量。
在本实施例中,可以在通过第一检测模型处理每组样本对中的文本数据时,在文本数据对应检测任务添加相应的标记,第一检测模型根据相应的标记分别生成每个检测任务所对应的特征向量,通过添加标记的方式提高第一检测模型对文本数据的处理效率。
S22、根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失。
在本实施例中,根据文本数据在检测任务下的特征向量和每条检测人物下已知的文本参数,得到每组样本对中文本数据在每条检测任务下的预测损失,比如,根据特征向量得到的结果为两条文本数据不相似,但是已知的文本参数为两条文本数据相似,则该检测任务对应的预测损失为百分之百或者是1,或者,根据两条特征向量得出两条文本数据相似的概率和不相似的概率,根据相似的概率、不相似的概率和已知的文本参数,也可以计算得到相应的预测损失,或者,根据两条文本数据对应的特征向量得到两条文本数据的相似度,根据相似度和已知的文本参数,得到相应的预测损失。
S23、针对每组所述样本对,根据所述样本对在每条检测任务下的所述预测损失,得到所述一致性预测损失。
在本实施例中,根据样本对在每条检测任务下的预测损失计算得到一致性预测损失,可以通过直接将各项预测损失累加得到该一致性预测损失,也可以将给各项预测损失进行归一化后在进行累加得到该一致性预测损失,也可以通过获取每条预测损失的权重值,进行加权平均得到该一致性预测损失。
在本实施例中,所述一致性预测损失可以通过如下方式得到:针对每组所述样本对,获取所述样本对在每条检测任务下的预测损失的预设权重值;根据所述预测损失和所述预设权重值,得到所述一致性预测损失。
S24、如果每组所述一致性预测损失均小于或等于预设损失阈值,则判定所述第一检测模型收敛,得到训练完成的所述第二检测模型。
在本实施例中,基于上述步骤,针对每组样本对均可得到相应的一致性预测损失,在本方案中,判断每组一致性预测损失是否小于预设损失阈值,并在所有样本对对应的一致性预测损失均小于或等于预设损失阈值时,判定第一检测模型收敛,即第一检测模型训练完成,得到第二检测模型,该第二检测模型可以符合所有的训练样本对。
在本实施例中,为了提高模型的训练效率,且为避免出现样本数据错误,导致模型无法收敛的情况,比如,任一对应样本对设置的已知的文本参数设置错误,导致最终计算的一致性预测损失一直无法满足预设损失阈值,而这条一致性预测损失也会导致模型无法收敛,所以可以设置一预设比例,当小于或等于预设损失阈值的一致性预测损失的数量占所有一致性预测损失的百分比达到该预设比例时,则判定第一检测模型收敛,以提高训练方法的适用性,该预设比例可以根据用户对数据有效性的情况来设定,比如,可以设置为百分之95,或者更高。
S25、如果任一所述一致性预测损失大于所述损失阈值,则调整所述第一检测模型中的各项参数,直到所述第一检测模型收敛为止。
在本实施例中,当出现任一一致性预测损失大于损失阈值时,说明该第一检测模型还无法适用于所有样本对,此时,调整第一检测模型中的参数,直至第一检测模型收敛。
在本实施例中,结合上述实施例,为适应上述步骤中所说的情况,避免因错误数据出现第一检测模型无法收敛的情况,本步骤可以获取大于损失阈值的一致性预测损失的数量,当该数量在所有一致性预测损失的数量的占比达到相应的比例,则认为该第一检测模型还未收敛,对应上述步骤中提供的百分之95,或者更高,本步骤中的比例可以设置为百分之5,或者更低。
如图3所示,结合图1和图2所示实施例,在一个具体的实施例中,所述获取至少两组样本对,包括如下步骤:
S31、获取语料数据,对所述语料数据进行数据清洗,得到清洗数据。
在本实施例中,通过数据清洗减少语料数据中的干扰数据和残缺数据,提高语料数据的辨识度,提高训练数据对模型的训练效果。
S32、对所述清洗数据进行格式转换,得到所述文本数据。
在本实施例中,由于清洗数据的本质还是语料数据,而计算机是无法快速理解清洗数据,为了提高对清洗数据的识别和上下文关联,可以将清洗数据转换为其他已作出相关关联的成熟数据格式,比如,可以按预设置的对应库对文本数据进行转码,得到文本数据中相应字符所对应的整数索引,对于计算机而言,数字更容易被其识别和运算。
S33、针对每条所述文本数据,获取任一所述文本数据与所述文本数据组成所述样本对。
在本实施例中,针对每条文本数据均随机配对一文本数据,组成样本对,以保证数据源中的所有文本数据均被使用,而且也可以实现对数据的打乱,当然,也可以根据预设置的所需数据量,从各个文本数据中随机获取文本数据组成样本对,以减少数据计算量。
S34、获取每组样本对在每条检测任务下的文本参数;所述文本参数包括:样本对中的文本数据是否相同、样本对中的文本数据是否对应相同目标对象、样本对中的文本数据中的预设关键词是否相同、样本对中的文本数据的最长公共子序列占两条文本数据的平均长度的比值。
在本实施例中,获取样本对在检测任务下的文本参数,可以通过用户依次进行配置,或者,所获取的数据一开始就配置了具有共性的数据,比如,数据源可以是物流公司所配送的地址数据,在物流公司进行配送后,针对每个地址数据均在相应的地图上标记坐标,以实现对不同地址数据之间的文本参数进行确定,比如,文本数据中是否对应相同目标对象,由于不同人之间所填写的地址数据会有表述上的区别,但在地图上所对应的是同一位置,则可以认为对应同一位置的地址数据对应的相同的目标对象,对于同一所学校,不同人填写的地址文本可能有差异,但指向的是同一所学校;对于同一小区的同一栋楼,不同住户填写的地址文本可能有差异,但指向的是同一栋楼;而预设关键词可以是地址数据中的省份、市、县区等地理数据,通过地图上的标记可以更容易区分上述预设关键词。
在本实施例中,所述文本数据可以是地址数据,样本对中的文本数据中的预设关键词:文本数据中的预设关键词的所属省份、预设关键词的所属市和预设关键词的所属区县。可从电子商务系统的订单数据库中提取收货地址或从相关涉及填写地址的系统中的提取注册地址、常住地址以及地址对应的省、市、区县。
如图4所示,在本实施例中,步骤S31中,所述获取语料数据,对所述语料数据进行数据清洗,得到清洗数据,包括如下步骤:
S41、判断每条语料数据的字符数是否符合预设长度范围。
S42、当所述语料数据的字符数不符合所述预设长度范围时,将所述语料数据删除。
在本实施例中,字符数过长的数据较难被识别,且处理起来所耗费的时间较多,字符数过短的数据中很难包含所需的所有关键词,且理解难度较大,不具备通用性,所以,在本方案中将字符数不符合预设产股范围的语料数据均删除,以提高数据处理效率。
S43、判断每条语料数据中是否包含所有预设关键词。
S44、当所述语料数据不包含任一预设关键词,将所述语料数据删除。
在本实施例中,设置可以用以提取语料数据中较为重要的数据的预设关键词,比如,针对地址数据,可以设置的预设关键词为省、市、县区等词,若语料数据中未包含所有的关键词,则认定该语料数据不完整,可以将该数据删除,本方案中预设关键词为省、市、县区仅为其中一个实施例,并不做具体限定。
S45、将字符数符合预设长度范围,且包含所有预设关键词的语料数据按所述预设关键词进行采样,得到所述清洗数据。
在本实施例中,将上述步骤处理后的语料数据按预设关键词进行采样,去除数据中的分词、连接词、标点符号等无意义数据,保留关键数据,还可以将字符全角转换为半角,统一不同数据,剔除地址文本中空格、制表符、引号、各种括号等中文标点符号,得到标准预料。为保证模型训练数据的无偏性,将标准化后的地址语料数据按省、市、区县进行分层采样,得到分布均衡的清洗数据。
在本实施例中,步骤S32中,所述对所述清洗数据进行格式转换,得到所述文本数据,可以通过如下方式实现:按预设语料字典,将所述清洗数据中的每个字符转换为对应的整数索引,得到文本数据;其中,语料字典中对应每个字符均设置有相应的整数索引。
如图5所示,在一个具体的实施例中,将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括如下步骤:
S51、针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第一文本数据。
在本实施例中,若完全相同的两条文本数据若输入第一检测模型,则可以直接输出得到检测结果,所以为了使文本数据更好的对文本数据进行识别,通过对样本对中的文本数据进行一定比例的字符遮掩替换,使得模型可以适用于更加复杂的应用环境。其中,预设比例可以是百分之15,当然也可以根据用户的使用需求进行更改,本实施例中不做特别限定。
S52、将每组样本对中的第一文本数据分别输入所述一致性检测模型,分别得到第一特征向量,作为所述特征向量;所述第一特征向量对应的检测任务为:所述样本对中的第一文本数据是否相同。
在本实施例中,在数据预处理的步骤中构建模型训练样本对时,在样本对上预留一个标识位“[CLS1]”,在本实施例中由模型逐层提出语义信息后,在最上层输出的向量矩阵中提取“[CLS1]”对应的多维向量,得到该第一特征向量。
对于相同的两条地址文本,在随机对一定比例(如15%)的单字进行遮掩替换后,子任务1“样本对中的第一文本数据是否相同”约束模型仍需准确判断两条地址文本的关系,从而使模型更好地学习的字语义表征及其上下文环境。
如图6所示,在一个具体的实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括如下步骤:
S61、将每组样本对中的文本数据分别输入所述一致性检测模型,分别得到第二特征向量,作为所述特征向量;所述第二特征向量对应的检测任务为:所述样本对中的文本数据是否对应相同目标对象。
在本实施例中,与图5所示实施例相同,可以在数据预处理的步骤中构建模型训练样本对时,在样本对上预留一个标识位“[CLS2]”,在本实施例中由模型逐层提出语义信息后,在最上层输出的向量矩阵中提取“[CLS2]”对应的多维向量,得到该第二特征向量。
其中,即两条地址是否对应同一物理对象,尽管不同人在地址文本的填写方式上有差异。因此,本发明对预训练语言模型增加了子任务2“文本数据是否对应相同目标对象”的约束,以使模型能够捕捉地址文本之间的空间语义关系以及相同地理实体不同写法在高维空间的对齐。
如图7所示,在一个具体的实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括如下步骤:
S71、将每组样本对中的文本数据分别输入所述一致性检测模型,分别得到第三特征向量,作为所述特征向量;所述第三特征向量对应的检测任务为:所述样本对中的文本数据中的预设关键词是否相同。
在本实施例中,预设关键词可以是:预设关键词的所属省份、预设关键词的所属市和预设关键词的所属区县。
例如,地址1“北京市海淀区青龙桥街道功德寺1号海淀学校后勤管理中心”中,“北京市”、“海淀区”、“青龙桥街道”是存在行政层级及行政层级隶属关系的,而且是地址文本中包含的重要地理信息。地址2“北京市朝阳区大屯路甲11号”中的“朝阳区”与地址1中的“海淀区”是并列的关系。本发明提出在预训练语言模型中通过增加子任务3“所属省份是否相同”、子任务4“所属市是否相同”、子任务5“所属区县是否相同”子任务约束,以将这种外部知识以及行政层级隶属关系编码至文本的语义表征中。
在本实施例中,与图5所示实施例相同,可以在数据预处理的步骤中构建模型训练样本对时,在样本对上分别预留标识位“[CLS3]”、“[CLS4]”、“[CLS5]”,由模型逐层提出语义信息后,在最上层输出的向量矩阵中分别提取“[CLS3]”、“[CLS4]”、“[CLS5]”对应的多维向量,得到对应所属省份是否相同的第三特征向量,对应所属市是否相同的第三特征向量和对应所属区县是否相同的第三特征向量。
如图8所示,在一个具体的实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括如下步骤:
S81、针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第二文本数据。
两条地址文本的最长公共子序列长度占两条地址平均尚度的比例在一定程度上反应了两条地址文本的相似程度,与图5所示实施例的目的相同,为了避免完全相同的两个文本数据的最长公共子序列较容易得到,提供模型的识别能力,可以在对地址进行单字遮掩替换及多层的语义抽象,在本步骤中,预设比例可以是百分之15;当然预设比例也可以是其他值。
S82、将每组样本对中的第二文本数据分别输入所述一致性检测模型,分别得到第四特征向量,作为所述特征向量;所述第四特征向量对应的检测任务为:样本对中的第二文本数据的最长公共子序列占两条文本数据的平均长度的比值。
在本实施例中,在本实施例中,与图5所示实施例相同,可以在数据预处理的步骤中构建模型训练样本对时,在样本对上预留一个标识位“[CLS6]”,在本实施例中由模型逐层提出语义信息后,在最上层输出的向量矩阵中提取“[CLS6]”对应的多维向量,得到该第四特征向量。
如图9所示,在一个具体的实施例中,所述将每组所述样本对分别输入所述第一检测模型中,获取所述第一检测模型各特征层输出的每组所述样本对中文本数据在相应检测任务下的特征向量,包括如下步骤:
S91、针对每组所述样本对,将所述样本对中的文本数据进行处理,使得所述样本对中的文本数据的总字符长度符合预设长度。
S92、针对每组所述样本对,随机对所述样本对中的每条文本数据中的预设比例的字符进行遮掩替换,得到第三文本数据。
在本实施例中,将两条地址文本长度对齐到参数设置的最大长度。当两条地址文本的总长度超过了参数设置的最大长度时,则挑出其中较长的一条,依次随机地删除头部或尾部字符,直至满足最大长度条件;当两条地址文本的总长度小于参数设置的最大长度时,则在末尾补充特殊字符“[PAD]”。然后随机对一定比例(如15%)的单字进行遮掩或替换,即把遮掩替换字中的80%的字替换为“[MASK]”,10%的字保留为原始字,10%的字替换为预料字典中的随机取出的字。
S93、将每组样本对中的第三文本数据分别输入所述一致性检测模型,分别得到第五特征向量,作为所述特征向量;所述第五特征向量对应的检测任务为:预测所述样本对中第三文本数据被遮掩替换的字符。
在本实施例中,为了训练模型对上下文的语义分析,结合语义分析预测相应字符,在本方案中通过对文本数据中被遮掩的字符进行预测,得到相应的预测字符,将该预测字符组成第五特征向量。
在本实施例中,基于第五特征向量和检测任务下已知的文本参数,得到样本对中文本数据在检测任务下的预测损失,可以通过将预测得到的字符组成的特征向量,与原始字符组成的向量计算余弦值,余弦值越大,说明两组向量越相似,即预测损失越小,或者,将第五特征向量中的元素与文本数据的原始字符依次进行比对,根据比对结果确定预测损失,比如,预测损失可以是,预测正确的字符数除以被遮掩的字符的字符数。
如图10所示,在本实施例中,结合如图5、图6或图7所述的实施例,所述根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失,包括:
S101、针对每组样本对中的文本数据,基于二分类模型对所述样本对中两条文本数据在每条检测任务下得到的特征向量进行处理,得到每条检测任务下的特征向量的一致性预测结果。
在本实施例中,可以将图5中的第一特征向量,图6中的第二特征向量和图7中的第三特征向量输入二分类模型,分别得到相应的二分类结果,作为本步骤中的一致性预测结果。
S102、针对每条检测任务,根据所述一致性预测结果与所述文本参数,得到交叉熵损失,作为所述预测损失。
在本实施例中,根据二分类结果和相应检测任务所对应的文本参数,得到交叉熵损失,作为预测损失。交叉熵(Cross Entropy)是Shannon信息论中一个重要概念,主要用于度量两个概率分布间的差异性信息。语言模型的性能通常用交叉熵和复杂度(perplexity)来衡量。交叉熵的意义是用该模型对文本识别的难度,或者从压缩的角度来看,每个词平均要用几个位来编码。复杂度的意义是用该模型表示这一文本平均的分支数,其倒数可视为每个词的平均概率。平滑是指对没观察到的N元组合赋予一个概率值,以保证词序列总能通过语言模型得到一个概率值。
在本方案中,结合二分类模型实现快速获取第一特征向量、第二特征向量和第三特征向量的比对结果,提高数据处理效率。
如图11所示,在本实施例中,结合图7所述的实施例,结合所述根据每组样本对中的文本数据在每条检测任务下的特征向量和在每条检测任务下已知的所述文本参数,得到每组样本对中的文本数据在每条检测任务下的预测损失,包括:
S111针对每组所述样本对,基于回归模型,根据所述样本对对应的第四特征向量和所述样本对中的两条文本数据的文本参数,得到均方误差损失,作为所述预测损失。
在本实施例中,通过回归模型将第四特征向量的均方误差损失进行计算,作为样本对中的第二文本数据的最长公共子序列占两条文本数据的平均长度的比值与两条文本数据的文本参数的预测损失。均方误差(mean-square error,MSE)是反映估计量与被估计量之间差异程度的一种度量。
如图12所示,本发明实施例提供了一种文本数据一致性检测模型的共享方法,应用于至少两个共享单元,所述方法包括如下步骤:
S121、任一所述共享单元基于自身数据通过上述任一实施例所述的训练方法得到相应的检测模型,并将所述检测模型共享。
在本实施例中,其中,共享单元可以是客户端或者服务器端。任一共享单元基于自身所存储的数据,通过上述实施例中提供的训练方法得到相应的检测模型,并将该检测模型上传至云端,该检测模型符合该共享单元的所有原始数据。
S122、其他所述共享单元依次获取所述检测模型作为自身建立的检测模型,并基于自身数据通过第一方面中任一所述的训练方法对所述检测模型进行训练,直至所述检测模型匹配每个所述共享单元的自身数据。
在本实施例中,其他共享单元依次获取检测模型,并基于该检测模型利用自身的数据低该检测模型进行再次训练,使得该检测模型适应自身数据,当该检测模型符合每个共享单元的数据时,该检测模型训练完毕。
本步骤所描述的过程,可以让每个共享单元多次获取检测模型,再出现共享单元从云端获取检测模型时,可以将云端中的检测模型删除,直至该共享单元将该检测模型再次共享至云端,不同检测模型分别依次获取检测模型,直至所有共享单元获取到检测模型且不会对该检测模型进行修改后,则可判定该检测模型训练完毕,再每次出现共享单元对检测模型进行修改时,其他每个共享单元均需要至少获取该检测模型一次。
判定共享单元是否对检测模型进行修改,可以根据共享单元的编号,在共享单元未对检测模型进行修改时,将自身的编号添加进检测模型中,并上传至云端,其他共享单元在确认检测模型添加了该共享单元的编号后,即可确定该共享单元无需在对该检测模型进行修改。
当任一共享单元对检测模型进行训练时出现了对检测模型进行修改的情况,需要对检测模型上的所有编号均删除,其他共享单元知晓这一情况,就可知悉检测模型被进行了修改,需要再次判定新的模型是否符合自身的数据。
S123、共享匹配每个所述共享单元的自身数据的检测模型。
在本实施例中,将上述步骤得到的训练完成的检测模型进行共享。数据是大数据时代的一项重要资产,地址文本数据涉及到隐私,更需要保护。然而,在金融风控、地址商业智能以及城市治理等领域均离不开对地址文本数据的应用与挖掘。本发明提出的地址预训练语言模型,能够按以下几种方式充分挖掘与应用地址数据的价值,又避免了将地址文本直接暴露出来,从而实现对地址文本数据的保护。
通过本方案可以实现对每个共享单元自身的数据进行保护,避免自身数据共享,同时可以得到一个适应性更强的检测模型,提高数据的安全性。
如图13所示,本发明实施例提供了一种录入地址真实性的验证方法,所述方法包括如下步骤:
S131、获取验证对象录入的地址数据,作为第一文本数据。
S132、获取所述验证对象真实的地址数据,作为第二文本数据。
在本实施例中,第一文本数据为验证对象自己录入的地址数据,第二文本数据应该是验证对象真实且无法更改的地址数据,比如身份证地址数据、户口本地址数据,通过验证第一文本数据的真实性,可以确定该验证对象的诚信度,在当面对验证对象进行面试时,十分容易判断第一文本数据是否真实,但是在系统中存储了大量的数据,若需要对系统中存储的数据进行验真,则需要耗费巨大的工作量,而在金融风控场景中,核验申请人的家庭地址或工作地址的真实性以抵抗欺诈风险是一种重要的风控手段。在本发明提出的中文地址预训练语言模型基础上,构建地址验真模型,可减少模型训练对标注数据的依赖,并显著提高准确率和召回率。
S133、通过文本数据一致性检测模型得到所述第一文本数据和所述第二文本数据的检测结果;其中,所述文本数据一致性检测模型是基于上述任一实施例所述的训练方法训练得到。
S134、根据所述检测结果判断所述第一文本数据和第二文本数据是否一致。
在本实施例中,上述实施例提供的训练方法得到的模型可以提取文本数据中多层次的特征向量,在本实施例中,可以将该特征向量输入预先建立的卷积神经网络,判断第一文本数据和第二文本数据是否一致。
比如,在上述实施例提供的检测模型的基础上,提取最上层输出的向量矩阵中“[CLS1][CLS2][CLS3][CLS4][CLS5][CLS6]”对应的向量矩阵,输入到卷积神经网络中,以得到两条地址关系的全局表征向量;提取提取最上层输出的向量矩阵中“[C11]…[C1m][SEP][C11]…[C1n][SEP][PAD]”对应的向量矩阵,输入双向LSTM,然后将卷积神经网络输出的全局表征向量拼接到双向LSTM每个字符对应的向量,其中,长短期记忆网络(LSTM,Long Short-Term Memory)是一种时间循环神经网络,是为了解决一般的RNN(循环神经网络)存在的长期依赖问题而专门设计出来的,所有的RNN都具有一种重复神经网络模块的链式形式。以此输入两层带dropout(随机失活)的全连接层Dense Layer(128)和Dense Layer(2),将真实标签进行编码,与Dense Layer(2)的输出计算交叉熵损失。将训练集分批次输入到上述模型中,进行前向传播过程计算模型损失值。判断所述模型损失是否低于设定阈值。如果低于设定阈值,则结束模型训练,获得训练好的最优预训练语言模型。否则,进行反向传播过程,计算每一层的参数更新梯度,进行权值更新。以上过程多次迭代,直至模型收敛和模型损失值低于设定阈值,从而得到最终的预训练语言模型及最优参数。
S135、当所述第一文本数据和第二文本数据一致时,所述验证对象录入的地址数据为真实数据;或者,所述第一文本数和第二文本数据不一致时,所述验证对象录入的地址数据为虚假数据。
在本实施例中,当确定第一文本数据和第二文本数据一致时,确定验证对象录入的地址数据为真实数据,反之,确定验证对象录入的为虚假数据,可以通过这种方式在大量的数据中确定各个用户的大致信誉的情况。
如图14所示,本发明实施例提供了一种文本数据一致性检测模型的训练系统,包括处理器1110、通信接口1120、存储器1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信;
存储器1130,用于存放计算机程序;
处理器1110,用于执行存储器1130上所存放的程序时,实现如下步骤:
建立文本数据的第一检测模型,其中,所述第一检测模型为包括至少两个用于执行不同检测任务的特征层的一致性检测模型;
获取至少两组样本对,其中,每组所述样本对包括:两条文本数据,每组所述样本对中的两条文本数据在每条检测任务下的文本参数已知;
通过所述样本对分别对所述第一检测模型中的各特征层进行训练,得到训练完成后的第二检测模型,其中,所述第二检测模型得到的检测结果与相应所述文本参数得到一致性预测损失满足预设条件。
上述电子设备提到的通信总线1140可以是外设部件互连标准(PeripheralComponentInterconnect,简称PCI)总线或扩展工业标准结构(ExtendedIndustryStandardArchitecture,简称EISA)总线等。该通信总线1140可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1120用于上述电子设备与其他设备之间的通信。
存储器1130可以包括随机存取存储器1130(RandomAccessMemory,简称RAM),也可以包括非易失性存储器1130(non-volatilememory),例如至少一个磁盘存储器1130。可选的,存储器1130还可以是至少一个位于远离前述处理器1110的存储装置。
上述的处理器1110可以是通用处理器1110,包括中央处理器1110(CentralProcessingUnit,简称CPU)、网络处理器1110(NetworkProcessor,简称NP)等;还可以是数字信号处理器1110(DigitalSignalProcessing,简称DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGateArray,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任一实施例所述的文本数据一致性检测模型训练方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidStateDisk(SSD))等。
本发明实施例提供了一种文本数据一致性检测模型的共享系统,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现如下步骤:
任一所述共享单元基于自身数据通过上述任一实施例所述的训练方法得到相应的检测模型,并将所述检测模型共享;
其他所述共享单元依次获取所述检测模型作为自身建立的检测模型,并基于自身数据通过上述任一实施例所述的训练方法对所述检测模型进行训练,直至所述检测模型匹配每个所述共享单元的自身数据;
共享匹配每个所述共享单元的自身数据的检测模型。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第二方面中任一所述的文本数据一致性检测模型共享方法。
本发明实施例中各元器件的情况可以参照上述实施例中的描述,本方案中不再赘述。
本发明实施例提供了一种录入地址真实性的验证系统,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现如下步骤:
获取验证对象录入的地址数据,作为第一文本数据;
获取所述验证对象真实的地址数据,作为第二文本数据;
通过文本数据一致性检测模型得到所述第一文本数据和所述第二文本数据的检测结果;其中,所述文本数据一致性检测模型是基于上述任一实施例所述的训练方法训练得到;
根据所述检测结果判断所述第一文本数据和第二文本数据是否一致;
当所述第一文本数据和第二文本数据一致时,所述验证对象录入的地址数据为真实数据;或者,大南瓜所述第一文本数和第二文本数据不一致时,所述验证对象录入的地址数据为虚假数据。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第三方面中任一实施例所述的录入地址真实性验证方法。
本发明实施例中各元器件的情况可以参照上述实施例中的描述,本方案中不再赘述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。