CN113486671B - 基于正则表达式编码的数据扩展方法、装置、设备及介质 - Google Patents

基于正则表达式编码的数据扩展方法、装置、设备及介质 Download PDF

Info

Publication number
CN113486671B
CN113486671B CN202110850687.8A CN202110850687A CN113486671B CN 113486671 B CN113486671 B CN 113486671B CN 202110850687 A CN202110850687 A CN 202110850687A CN 113486671 B CN113486671 B CN 113486671B
Authority
CN
China
Prior art keywords
corpus
historical
regular expression
coding
expanded
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.)
Active
Application number
CN202110850687.8A
Other languages
English (en)
Other versions
CN113486671A (zh
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202110850687.8A priority Critical patent/CN113486671B/zh
Publication of CN113486671A publication Critical patent/CN113486671A/zh
Application granted granted Critical
Publication of CN113486671B publication Critical patent/CN113486671B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了基于正则表达式编码的数据扩展方法、装置、设备及介质,涉及人工智能技术,若历史语料集中每一类型的语料样本量不足,可通过历史语料集训练一个用于扩展语料数据量的对抗网络模型,由训练后的对抗网络模型实现对历史语料集中每一历史语料对应的扩展语料子集以组成扩展语料集。而且在提取扩展语料集中每一条语料对应的语料输入向量,不仅提取语料的正则表达式编码结果,而且提取语料的词嵌入向量,由语料的正则表达式编码结果和词嵌入向量组合成语料输入向量,实现人工编辑的表达式信息,同时又具有基于数据学习的能力。解决了训练数据不足的问题,而且训练数据结合了正则编码信息提升了所训练得到模型的预测准确度。

Description

基于正则表达式编码的数据扩展方法、装置、设备及介质
技术领域
本发明涉及人工智能的智能决策技术领域,尤其涉及一种基于正则表达式编码的数据扩展方法、装置、设备及介质。
背景技术
基于神经网络的文本分类算法,在训练数据量充足的情况,可以获得较好的效果。但是在实际项目中,标注数据的获取经常是非常困难的。在缺少标注数据的情况下,基于神经网络的算法难以获得好的表现。
正则表达式是一种在缺乏训练数据时,常使用的方法,但是这种方式的灵活性较差,而且因为真实场景的表述方式总会出乎编写规则的人的预料,完全依赖正则表达式扩展语料不一定能确保很好扩展效果,这就导致因训练数据的数据量较低而使得神经网络模型未得到充分训练,之后用于预测或分类的准确性较低。
发明内容
本发明实施例提供了一种基于正则表达式编码的数据扩展方法、装置、设备及介质,旨在解决现有技术中基于神经网络的文本分类算法,若依赖正则表达式扩展语料不一定能确保很好扩展效果,这就导致因训练数据的数据量较低而使得神经网络模型未得到充分训练的问题。
第一方面,本发明实施例提供了一种基于正则表达式编码的数据扩展方法,其包括:
响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料;
将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型;
将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集;
获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式;
根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果;
将每一扩展语料进行词嵌入转换,得到词嵌入向量;
获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量;
获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值;
获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络;以及
获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果。
第二方面,本发明实施例提供了一种基于正则表达式编码的数据扩展装置,其包括:
历史语料集获取单元,用于响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料;
第一模型训练单元,用于将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型;
扩展语料集获取单元,用于将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集;
第一映射单元,用于获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式;
正则编码单元,用于根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果;
词嵌入向量获取单元,用于将每一扩展语料进行词嵌入转换,得到词嵌入向量;
向量组合单元,用于获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量;
第二映射单元,用于获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值;
第二模型训练单元,用于获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络;以及
语料分类单元,用于获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于正则表达式编码的数据扩展方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于正则表达式编码的数据扩展方法。
本发明实施例提供了一种基于正则表达式编码的数据扩展方法、装置、设备及介质,若历史语料集中每一类型的语料样本量不足,可以通过历史语料集训练一个用于扩展语料数据量的对抗网络模型,由训练后的对抗网络模型实现对历史语料集中每一历史语料对应的扩展语料子集以组成扩展语料集。而且在提取扩展语料集中每一条语料对应的语料输入向量,不仅提取了语料的正则表达式编码结果,而且提取了语料的词嵌入向量,由语料的正则表达式编码结果和词嵌入向量组合成语料输入向量,是一种能实现人工编辑的表达式信息,同时又具有一定基于数据学习的能力,实现了表达式与网络结合。解决了训练数据不足的问题,而且训练数据结合了正则编码信息提升了所训练得到模型的预测准确度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于正则表达式编码的数据扩展方法的应用场景示意图;
图2为本发明实施例提供的基于正则表达式编码的数据扩展方法的流程示意图;
图3为本发明实施例提供的基于正则表达式编码的数据扩展装置的示意性框图;
图4为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的基于正则表达式编码的数据扩展方法的应用场景示意图;图2为本发明实施例提供的基于正则表达式编码的数据扩展方法的流程示意图,该基于正则表达式编码的数据扩展方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。
如图2所示,该方法包括步骤S101~S110。
S101、响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料。
为了更清楚的理解本申请的技术方案,下面对所涉及的执行主体进行详细介绍。本申请以服务器为执行主体来描述技术方案。
服务器,在服务器中存储了大量的历史语料,这些历史语料组成了历史语料集。若历史语料集中每一类型的语料样本量不足,可以通过历史语料集训练一个用于扩展语料数据量的对抗网络模型,由训练后的对抗网络模型实现对历史语料集中每一历史语料对应的扩展语料子集以组成扩展语料集。而且在提取扩展语料集中每一条语料对应的语料输入向量,不仅提取了语料的正则表达式编码结果,而且提取了语料的词嵌入向量(也可以理解为语义向量),由语料的正则表达式编码结果和词嵌入向量组合成语料输入向量,是一种能实现人工编辑的表达式信息,同时又具有一定基于数据学习的能力,实现了表达式与网络结合。在服务器中基于大量扩展语料集对应语料的语料输入向量和标注值组成大量的训练样本可以对待训练神经网络进行训练,得到训练后的神经网络。最后可以基于得到的训练后的神经网络进行用户分类。
用户端,在用户端中用户可以编辑上传待分类语料,以基于服务器中的训练后的神经网络进行用户分类。
其中,当在服务器中检测到人员操作触发模型训练指令,此时是先在服务器中的指定存储区域(如服务器中的语料数据库)中获取历史语料集,在历史语料集中包括多条历史语料。
S102、将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型。
在本实施例中,训练后的对抗网络模型是极为实用的一种扩展数据集的方法,例如常见的训练后的对抗网络模型有GAN(即生成式对抗网络)、cycle-GAN(即循环式对抗网络)等。
作为本申请中训练后的对抗网络模型的具体实施例,可以选取cycle-GAN模型进行语料集的扩展。cycle-GAN模型本质上是两个镜像对称的GAN模型,构成一个环形网络。在cycle-GAN模型中包括了两个生成器和两个判别器,cycle-GAN模型中的两个GAN模型共享两个生成器,而且两个GAN模型各自带一个判别器。
在一实施例中,步骤S102包括:
获取所述历史语料集中每一历史语料的语义向量;
获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果;其中,所述历史语料集分组结果中包括若干个历史语料集子分组,且分别记为第1历史语料集子分组至第k历史语料集子分组,k为历史语料集分组结果中包括的历史语料集子分组总个数;
统计获取每一历史语料集子分组中对应包括的历史语料总个数,并获取其中包括历史语料总个数最多的历史语料集子分组,作为目标历史语料集子分组;
根据预设的第一取语料个数从目标历史语料集子分组中任意获取两个历史语料的语义向量以对待训练cycle-GAN模型进行训练,当待训练cycle-GAN模型收敛时,停止从目标历史语料集子分组中任意获取两个历史语料的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型;其中,所述第一取语料个数等于2。
在本实施例中,通过将所述历史语料集进行分组后,语义相近的历史语料会被分进同一历史语料集子分组。此时选取多个历史语料集子分组中包括的语料总个数为最大值的历史语料集子分组作为目标历史语料集子分组。此时目标历史语料集子分组可以作为筛选后训练样本对待训练cycle-GAN模型进行训练。
例如,在目标语料集子分组中任意选择的两个初始语料的语义向量分别记为样本a和样本b,此时需要训练出两个生成器GAB、GBA及两个判别器DA、DB,对于样本a,通过生成器GAB生成假样本
Figure BDA0003182373840000061
用判别器DB判别假样本/>
Figure BDA0003182373840000062
是否与样本b近似,并且将假样本/>
Figure BDA0003182373840000063
通过生成器GBA生成样本/>
Figure BDA0003182373840000064
并且判断样本/>
Figure BDA0003182373840000065
是否与原真实样本a近似。同样地,对于样本b,通过生成器GBA生成假样本/>
Figure BDA0003182373840000066
用判别器DA判别假样本/>
Figure BDA0003182373840000067
是与样本a近似,并且将假样本/>
Figure BDA0003182373840000068
通过生成器GAB生成样本/>
Figure BDA0003182373840000069
并且判断样本/>
Figure BDA00031823738400000610
是否与原真实样本b近似。最终通过迭代,使得判别器无法判别生成器生成的样本是否为真实样本。
分别优化训练生成器和判别器,两个生成器共享权重,两个判别器共享权重,最终的目标就是求得使目标最小化的生成器GAB和GBA
当通过历史语料集完成了待训练cycle-GAN模型的训练后,即可得到用于扩展语料集的cycle-GAN模型,从而提高训练集的样本量,避免因训练数据的数据量不够而导致的模型训练不充分。
在一实施例中,所述分组策略为K-means聚类;所述获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果,包括:
获取所述历史语料集根据各历史语料的语义向量之间的欧氏距离,对所述欧氏距离进行K-means聚类,得到历史语料集分组结果。
在本实施例中,对所述历史语料集按照预设的分组策略进行分组时,可以将分组策略设置为K-means聚类,此时预先设定好期望的分类组个数后,即可根据各历史语料的语义向量之间的欧氏距离作为向量相似度进行K-means聚类,得到历史语料集分组结果。K-means聚类为常用的现有技术,此处不再展开赘述。
S103、将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集。
在本实施例中,当完成模型训练而得到训练后的对抗网络模型后,此时仍可以历史语料集作为训练后的对抗网络模型的输入数据从而生成扩展语料集。
S104、获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式。
在本实施例中,当完成了历史语料集的扩展后,每一条历史语料对应扩展出了多条近似的扩展语料数据,例如一条历史语料A及其对应扩展的扩展语料数据是对应同一个正则表达式,也就是每一个扩展语料子集中因为语义比较近似,可以对应同一个预设的正则表达式。
例如,某一历史语料A对应的正则表达式是“(今天|明天|后天)你有(空|时间)吗”(其中“”并不是正则表达式中的字符),该历史语料A对应的扩展语料子集中包括以下文本:(1)小王,明天你有空吗;(2)小王,明天别来了;(3)今天吃啥。此时将正则表达式“(今天|明天|后天)你有(空|时间)吗”与历史语料A对应的扩展语料子集进行映射绑定,通过将每一扩展语料子集绑定对应的正则表达式是为了确保后续进行正则表达式命中编码的编码结果更准确。
S105、根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果。
在本实施例中,为了更准确的进行正则表达式命中编码,需预先设置如下正则表达式命中编码策略:
A1)语料对应的文本的每一字符与对应的正则表达式在命中前均编码为第一编码值(例如具体实施时将第一编码值设置为0);
A2)语料对应的文本的每一字符与对应的正则表达式有部分命中但未完全命中则编码为第二编码值(例如具体实施时将第二编码值设置为1);
A3)语料对应的文本的每一字符与对应的正则表达式有部分命后又有部分未命中则编码为第三编码值(例如具体实施时将第三编码值设置为2);
A4)语料对应的文本的每一字符与对应的正则表达式完全命中则编码为第四编码值(例如具体实施时将第四编码值设置为3)。
例如,仍以上述列举的历史语料A对应的正则表达式是“(今天|明天|后天)你有(空|时间)吗”,且历史语料A对应的扩展语料子集中包括以下文本:(1)小王,明天你有空吗;(2)小王,明天别来了;(3)今天吃啥;(4)你有啥事,此时历史语料A对应的扩展语料子集中各语料继续编码的结果如下:
文本1:小王,明天你有空吗
编码1:0 0 0 1 1 1 1 1 3
文本2:小王,明天别来了
编码2:0 0 0 1 1 2 2 2
文本3:今天吃啥
编码3:1 1 2 2
文本4:你有啥事
编码4:0 0 0 0
通过上述基于正则表达式的编码方式得到的正则表达式编码结果,为每一个语料提供了更多的关键信息,使得作为训练数据的语料得到更多特征的挖掘。
在一实施例中,以获取一个语料对应的正则表达式编码结果为例,步骤S105包括:
将扩展语料按字符进行划分,得到字符划分结果;
依序将字符划分结果中每一字符与扩展语料相应的正则表达式进行比对,确定每一字符是否命中正则表达式;
若确定有字符未命中正则表达式且字符之前的其他字符未命中正则表达式,将字符的子编码结果输出为第一编码值;
若确定有字符命中正则表达式且字符之前的其他字符未完全命中正则表达式,将字符的子编码结果输出为第二编码值;
若确定有字符未命中正则表达式且字符之前的一位字符命中正则表达式,将字符的子编码结果输出为第三编码值;
若确定有字符命中正则表达式且字符之前连续的其他字符全部命中正则表达式,将字符的子编码结果输出为第四编码值;
将依序所获取每一字符的子编码结果进行拼接,得到与扩展语料的正则表达式编码结果。
在本实施例中,参照上述对文本进行正则式编码的过程,需要将语料(也可以理解为文本)先拆成若干个字符,然后以字符为单位与整个正则表达式匹配判断是否命中正则表达式。例如文本“小王,明天你有空吗”拆分成字符后包括“小”、“王”、“,”、“明”、“天”、“你”、“有”、“空”、“吗”这9个字符,该语料对应的正则表达式为“(今天|明天|后天)你有(空|时间)吗”。其中,“小”未命中正则表达式则对应的子编码结果输出为0,“王”未命中正则表达式则对应的子编码结果输出为0,“,”未命中正则表达式则对应的子编码结果输出为0,“明”部分命中正则表达式则对应的子编码结果输出为1,“天”部分命中正则表达式则对应的子编码结果输出为1,“你”部分命中正则表达式则对应的子编码结果输出为1,“有”部分命中正则表达式则对应的子编码结果输出为1,“空”部分命中正则表达式则对应的子编码结果输出为1,“吗”部分命中正则表达式且“吗”与之前的“明”、“天”、“你”、“有”、“空”这6个字符完全命中正则表达式则对应的子编码结果输出为3。将正则表达式编码序列输入神经网络做训练,可以给予其灵活性,即为每一个语料提供了更多的关键信息,使得作为训练数据的语料得到更多特征的挖掘。
S106、将每一扩展语料进行词嵌入转换,得到词嵌入向量。
在本实施例中,当获取了所述扩展语料集中每一语料对应的正则表达式编码结果后,还需要对所述扩展语料集中每一语料做文本序列向量化处理,最常见的处理是将每一语料转化为对应的词嵌入向量(也可以理解为语义向量),这样也能有效提取语料中的换件信息。
在一实施例中,步骤S106包括:
根据预设的词嵌入转换策略对每一扩展语料依次进行分词、关键词抽取、词向量转化及词向量加权求和,得到与每一扩展语料的词嵌入向量。
在本实施例中,通过基于概率统计分词模型对语料进行文本分词得到文本分词结果,通过词频-逆向文件频率模型对文本分词结果进行关键词抽取得到对应的关键词集合,将关键词集合中每一关键词通过Word2Vec模型(是一种现有的词向量转换模型)对应转化为词向量后,结合每一词向量对应的权重值进行加权求和,即可得到该语料对应的词嵌入向量。通过这一语义向量的获取方式,提取了语料中未经多余加工的原始关键信息。
S107、获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量。
在本实施例中,当获取了每一语料对应的词嵌入向量和正则表达式编码结果后,将两者进行组合,即可得到与语料对应的语料输入向量。例如,若语料A对应的词嵌入向量是一个1*300的列向量,语料A对应的正则表达式是一个1*10的列向量,此时可以将两者串接成一个1*310的列向量。通过这一拼接过程,得到了一个兼具语料原始关键信息以及正则表达式编码信息的多维度语料输入向量。
在一实施例中,步骤S107包括:
将每一扩展语料的词嵌入向量和正则表达式编码结果依照词嵌入向量位于正则表达式编码结果之前的顺序,拼接成语料输入向量。
在本实施例中,按照这一顺序拼接语料的词嵌入向量和正则表达式编码结果,使得各语料的输入向量均具有词嵌入向量和正则表达式编码结果这两个维度,得到了一个兼具语料原始关键信息以及正则表达式编码信息的多维度语料输入向量。
S108、获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值。
在本实施例中,为了更加快速的标注每一个语料,可以使同一个扩展语料子集中包括的语料对应相同的标注值,这一标注值继承该扩展语料子集所对应历史语料的标注值。具体时间,一旦确定了某一标注值和扩展语料子集对应相同的历史语料,则将对应相同历史语料的标注值和扩展语料子集行映射绑定,实现了快速将每一扩展语料子集对应进行标注。
S109、获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络。
在本实施例中,当获取了所述扩展语料集中每一语料对应的语料输入向量和标注值后,则由每一条语料对应的语料输入向量和标注值组成与每一语料对应的训练数据,这些训练数据组成训练集对待训练神经网络进行训练,得到训练后的神经网络。其中,所述待训练神经网络可以是BERT模型,这样训练得到的训练后的神经网络具备基于输入语料进行预测分类的过程。
S110、获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果。
在本实施例中,当在服务器中完成了对待训练神经网络进行训练得到训练后的神经网络后,可以检测用户是否上传待分类语料,一旦检测并接收到用户上传的待分类语料,则基于训练后的神经网络对待分类语料进行运算,得到分类结果。
在一实施例中,步骤S110包括:
获取所述待分类语料的待分类词嵌入向量和待分类正则表达式编码结果,组成待分类语料输入向量,将所述待分类语料输入向量输入至训练后的神经网络进行运算得到分类结果。
在本实施中,当获取了用户上传的待分类语料后,也是参考前述获取历史语料的词嵌入向量和正则表达式编码结果的方式先获取待分类词嵌入向量和待分类正则表达式编码结果,之后组成对应的待分类语料输入向量,最后将所述待分类语料输入向量输入至训练后的神经网络进行运算得到分类结果。通过这一融合了词嵌入向量和正则表达式编码结果的输入向量,能更准确的预测分类结果。
该方法通过历史语料集训练一个用于扩展语料数据量的对抗网络模型,由训练后的对抗网络模型对历史语料集中每一历史语料对应扩展语料子集以组成扩展语料集,在提取扩展语料集中每一条语料对应的语料输入向量,不仅提取了语料的正则表达式编码结果,而且提取了语料的词嵌入向量,解决了训练数据不足的问题,而且训练数据结合了正则编码信息提升了所训练得到模型的预测准确度。
本发明实施例还提供一种基于正则表达式编码的数据扩展装置,该基于正则表达式编码的数据扩展装置用于执行前述基于正则表达式编码的数据扩展方法的任一实施例。具体地,请参阅图3,图3是本发明实施例提供的基于正则表达式编码的数据扩展装置的示意性框图。该基于正则表达式编码的数据扩展装置100可以配置于服务器中。
如图3所示,基于正则表达式编码的数据扩展装置100包括:历史语料集获取单元101、第一模型训练单元102、扩展语料集获取单元103、第一映射单元104、正则编码单元105、词嵌入向量获取单元106、向量组合单元107、第二映射单元108、第二模型训练单元109、语料分类单元110。
历史语料集获取单元101,用于响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料。
在本实施例中,当在服务器中检测到人员操作触发模型训练指令,此时是先在服务器中的指定存储区域(如服务器中的语料数据库)中获取历史语料集,在历史语料集中包括多条历史语料。
第一模型训练单元102,用于将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型。
在本实施例中,训练后的对抗网络模型是极为实用的一种扩展数据集的方法,例如常见的训练后的对抗网络模型有GAN(即生成式对抗网络)、cycle-GAN(即循环式对抗网络)等。
作为本申请中训练后的对抗网络模型的具体实施例,可以选取cycle-GAN模型进行语料集的扩展。cycle-GAN模型本质上是两个镜像对称的GAN模型,构成一个环形网络。在cycle-GAN模型中包括了两个生成器和两个判别器,cycle-GAN模型中的两个GAN模型共享两个生成器,而且两个GAN模型各自带一个判别器。
在一实施例中,第一模型训练单元102包括:
语义向量获取单元,用于获取所述历史语料集中每一历史语料的语义向量;
历史语料集分组单元,用于获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果;其中,所述历史语料集分组结果中包括若干个历史语料集子分组,且分别记为第1历史语料集子分组至第k历史语料集子分组,k为历史语料集分组结果中包括的历史语料集子分组总个数;
子分组获取单元,用于统计获取每一历史语料集子分组中对应包括的历史语料总个数,并获取其中包括历史语料总个数最多的历史语料集子分组,作为目标历史语料集子分组;
对抗网络模型训练单元,用于根据预设的第一取语料个数从目标历史语料集子分组中任意获取两个历史语料的语义向量以对待训练cycle-GAN模型进行训练,当待训练cycle-GAN模型收敛时,停止从目标历史语料集子分组中任意获取两个历史语料的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型;其中,所述第一取语料个数等于2。
在本实施例中,通过将所述历史语料集进行分组后,语义相近的历史语料会被分进同一历史语料集子分组。此时选取多个历史语料集子分组中包括的语料总个数为最大值的历史语料集子分组作为目标历史语料集子分组。此时目标历史语料集子分组可以作为筛选后训练样本对待训练cycle-GAN模型进行训练。
例如,在目标语料集子分组中任意选择的两个初始语料的语义向量分别记为样本a和样本b,此时需要训练出两个生成器GAB、GBA及两个判别器DA、DB,对于样本a,通过生成器GAB生成假样本
Figure BDA0003182373840000131
用判别器DB判别假样本/>
Figure BDA0003182373840000132
是否与样本b近似,并且将假样本/>
Figure BDA0003182373840000135
通过生成器GBA生成样本/>
Figure BDA0003182373840000134
并且判断样本/>
Figure BDA0003182373840000133
是否与原真实样本a近似。同样地,对于样本b,通过生成器GBA生成假样本/>
Figure BDA0003182373840000136
用判别器DA判别假样本/>
Figure BDA0003182373840000137
是与样本a近似,并且将假样本/>
Figure BDA0003182373840000138
通过生成器GAB生成样本/>
Figure BDA0003182373840000139
并且判断样本/>
Figure BDA00031823738400001310
是否与原真实样本b近似。最终通过迭代,使得判别器无法判别生成器生成的样本是否为真实样本。
分别优化训练生成器和判别器,两个生成器共享权重,两个判别器共享权重,最终的目标就是求得使目标最小化的生成器GAB和GBA
当通过历史语料集完成了待训练cycle-GAN模型的训练后,即可得到用于扩展语料集的cycle-GAN模型,从而提高训练集的样本量,避免因训练数据的数据量不够而导致的模型训练不充分。
在一实施例中,所述分组策略为K-means聚类,所述历史语料集分组单元还用于:
获取所述历史语料集根据各历史语料的语义向量之间的欧氏距离,对所述欧氏距离进行K-means聚类,得到历史语料集分组结果。
在本实施例中,对所述历史语料集按照预设的分组策略进行分组时,可以将分组策略设置为K-means聚类,此时预先设定好期望的分类组个数后,即可根据各历史语料的语义向量之间的欧氏距离作为向量相似度进行K-means聚类,得到历史语料集分组结果。K-means聚类为常用的现有技术,此处不再展开赘述。
扩展语料集获取单元103,用于将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集。
在本实施例中,当完成模型训练而得到训练后的对抗网络模型后,此时仍可以历史语料集作为训练后的对抗网络模型的输入数据从而生成扩展语料集。
第一映射单元104,用于获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式。
在本实施例中,当完成了历史语料集的扩展后,每一条历史语料对应扩展出了多条近似的扩展语料数据,例如一条历史语料A及其对应扩展的扩展语料数据是对应同一个正则表达式,也就是每一个扩展语料子集中因为语义比较近似,可以对应同一个预设的正则表达式。
例如,某一历史语料A对应的正则表达式是“(今天|明天|后天)你有(空|时间)吗”(其中“”并不是正则表达式中的字符),该历史语料A对应的扩展语料子集中包括以下文本:(1)小王,明天你有空吗;(2)小王,明天别来了;(3)今天吃啥。此时将正则表达式“(今天|明天|后天)你有(空|时间)吗”与历史语料A对应的扩展语料子集进行映射绑定,通过将每一扩展语料子集绑定对应的正则表达式是为了确保后续进行正则表达式命中编码的编码结果更准确。
正则编码单元105,用于根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果。
在本实施例中,为了更准确的进行正则表达式命中编码,需预先设置如下正则表达式命中编码策略:
A1)语料对应的文本的每一字符与对应的正则表达式在命中前均编码为第一编码值(例如具体实施时将第一编码值设置为0);
A2)语料对应的文本的每一字符与对应的正则表达式有部分命中但未完全命中则编码为第二编码值(例如具体实施时将第二编码值设置为1);
A3)语料对应的文本的每一字符与对应的正则表达式有部分命后又有部分未命中则编码为第三编码值(例如具体实施时将第三编码值设置为2);
A4)语料对应的文本的每一字符与对应的正则表达式完全命中则编码为第四编码值(例如具体实施时将第四编码值设置为3)。
例如,仍以上述列举的历史语料A对应的正则表达式是“(今天|明天|后天)你有(空|时间)吗”,且历史语料A对应的扩展语料子集中包括以下文本:(1)小王,明天你有空吗;(2)小王,明天别来了;(3)今天吃啥;(4)你有啥事,此时历史语料A对应的扩展语料子集中各语料继续编码的结果如下:
文本1:小王,明天你有空吗
编码1:0 0 0 1 1 1 1 1 3
文本2:小王,明天别来了
编码2:0 0 0 1 1 2 2 2
文本3:今天吃啥
编码3:1 1 2 2
文本4:你有啥事
编码4:0 0 0 0
通过上述基于正则表达式的编码方式得到的正则表达式编码结果,为每一个语料提供了更多的关键信息,使得作为训练数据的语料得到更多特征的挖掘。
在一实施例中,以获取一个语料对应的正则表达式编码结果为例,正则编码单元105包括:
字符划分单元,用于将扩展语料按字符进行划分,得到字符划分结果;
命中比对单元,用于依序将字符划分结果中每一字符与扩展语料相应的正则表达式进行比对,确定每一字符是否命中正则表达式;
第一编码单元,用于若确定有字符未命中正则表达式且字符之前的其他字符未命中正则表达式,将字符的子编码结果输出为第一编码值;
第二编码单元,用于若确定有字符命中正则表达式且字符之前的其他字符未完全命中正则表达式,将字符的子编码结果输出为第二编码值;
第三编码单元,用于若确定有字符未命中正则表达式且字符之前的一位字符命中正则表达式,将字符的子编码结果输出为第三编码值;
第四编码单元,用于若确定有字符命中正则表达式且字符之前连续的其他字符全部命中正则表达式,将字符的子编码结果输出为第四编码值;
编码组合单元,用于将依序所获取每一字符的子编码结果进行拼接,得到与扩展语料的正则表达式编码结果。
在本实施例中,参照上述对文本进行正则式编码的过程,需要将语料(也可以理解为文本)先拆成若干个字符,然后以字符为单位与整个正则表达式匹配判断是否命中正则表达式。例如文本“小王,明天你有空吗”拆分成字符后包括“小”、“王”、“,”、“明”、“天”、“你”、“有”、“空”、“吗”这9个字符,该语料对应的正则表达式为“(今天|明天|后天)你有(空|时间)吗”。其中,“小”未命中正则表达式则对应的子编码结果输出为0,“王”未命中正则表达式则对应的子编码结果输出为0,“,”未命中正则表达式则对应的子编码结果输出为0,“明”部分命中正则表达式则对应的子编码结果输出为1,“天”部分命中正则表达式则对应的子编码结果输出为1,“你”部分命中正则表达式则对应的子编码结果输出为1,“有”部分命中正则表达式则对应的子编码结果输出为1,“空”部分命中正则表达式则对应的子编码结果输出为1,“吗”部分命中正则表达式且“吗”与之前的“明”、“天”、“你”、“有”、“空”这6个字符完全命中正则表达式则对应的子编码结果输出为3。将正则表达式编码序列输入神经网络做训练,可以给予其灵活性,即为每一个语料提供了更多的关键信息,使得作为训练数据的语料得到更多特征的挖掘。
词嵌入向量获取单元106,用于将每一扩展语料进行词嵌入转换,得到词嵌入向量。
在本实施例中,当获取了所述扩展语料集中每一语料对应的正则表达式编码结果后,还需要对所述扩展语料集中每一语料做文本序列向量化处理,最常见的处理是将每一语料转化为对应的词嵌入向量(也可以理解为语义向量),这样也能有效提取语料中的换件信息。
在一实施例中,词嵌入向量获取单元106还用于:
根据预设的词嵌入转换策略对每一扩展语料依次进行分词、关键词抽取、词向量转化及词向量加权求和,得到与每一扩展语料的词嵌入向量。
在本实施例中,通过基于概率统计分词模型对语料进行文本分词得到文本分词结果,通过词频-逆向文件频率模型对文本分词结果进行关键词抽取得到对应的关键词集合,将关键词集合中每一关键词通过Word2Vec模型(是一种现有的词向量转换模型)对应转化为词向量后,结合每一词向量对应的权重值进行加权求和,即可得到该语料对应的词嵌入向量。通过这一语义向量的获取方式,提取了语料中未经多余加工的原始关键信息。
向量组合单元107,用于获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量。
在本实施例中,当获取了每一语料对应的词嵌入向量和正则表达式编码结果后,将两者进行组合,即可得到与语料对应的语料输入向量。例如,若语料A对应的词嵌入向量是一个1*300的列向量,语料A对应的正则表达式是一个1*10的列向量,此时可以将两者串接成一个1*310的列向量。通过这一拼接过程,得到了一个兼具语料原始关键信息以及正则表达式编码信息的多维度语料输入向量。
在一实施例中,向量组合单元107还用于:
将每一扩展语料的词嵌入向量和正则表达式编码结果依照词嵌入向量位于正则表达式编码结果之前的顺序,拼接成语料输入向量。
在本实施例中,按照这一顺序拼接语料的词嵌入向量和正则表达式编码结果,使得各语料的输入向量均具有词嵌入向量和正则表达式编码结果这两个维度,得到了一个兼具语料原始关键信息以及正则表达式编码信息的多维度语料输入向量。
第二映射单元108,用于获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值。
在本实施例中,为了更加快速的标注每一个语料,可以使同一个扩展语料子集中包括的语料对应相同的标注值,这一标注值继承该扩展语料子集所对应历史语料的标注值。具体时间,一旦确定了某一标注值和扩展语料子集对应相同的历史语料,则将对应相同历史语料的标注值和扩展语料子集行映射绑定,实现了快速将每一扩展语料子集对应进行标注。
第二模型训练单元109,用于获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络。
在本实施例中,当获取了所述扩展语料集中每一语料对应的语料输入向量和标注值后,则由每一条语料对应的语料输入向量和标注值组成与每一语料对应的训练数据,这些训练数据组成训练集对待训练神经网络进行训练,得到训练后的神经网络。其中,所述待训练神经网络可以是BERT模型,这样训练得到的训练后的神经网络具备基于输入语料进行预测分类的过程。
语料分类单元110,用于获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果。
在本实施例中,当在服务器中完成了对待训练神经网络进行训练得到训练后的神经网络后,可以检测用户是否上传待分类语料,一旦检测并接收到用户上传的待分类语料,则基于训练后的神经网络对待分类语料进行运算,得到分类结果。
在一实施例中,基于正则表达式编码的数据扩展装置100还包括:
分类结果获取单元,用于获取所述待分类语料的待分类词嵌入向量和待分类正则表达式编码结果,组成待分类语料输入向量,将所述待分类语料输入向量输入至训练后的神经网络进行运算得到分类结果。
在本实施中,当获取了用户上传的待分类语料后,也是参考前述获取历史语料的词嵌入向量和正则表达式编码结果的方式先获取待分类词嵌入向量和待分类正则表达式编码结果,之后组成对应的待分类语料输入向量,最后将所述待分类语料输入向量输入至训练后的神经网络进行运算得到分类结果。通过这一融合了词嵌入向量和正则表达式编码结果的输入向量,能更准确的预测分类结果。
该装置通过历史语料集训练一个用于扩展语料数据量的对抗网络模型,由训练后的对抗网络模型对历史语料集中每一历史语料对应扩展语料子集以组成扩展语料集,在提取扩展语料集中每一条语料对应的语料输入向量,不仅提取了语料的正则表达式编码结果,而且提取了语料的词嵌入向量,不仅解决了训练数据不足的问题,而且训练数据结合了正则编码信息提升了所训练得到模型的预测准确度。
上述基于正则表达式编码的数据扩展装置可以实现为计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。
请参阅图4,图4是本发明实施例提供的计算机设备的示意性框图。该计算机设备500是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图4,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括存储介质503和内存储器504。
该存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行基于正则表达式编码的数据扩展方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行基于正则表达式编码的数据扩展方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本发明实施例公开的基于正则表达式编码的数据扩展方法。
本领域技术人员可以理解,图4中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质,也可以为易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例公开的基于正则表达式编码的数据扩展方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种基于正则表达式编码的数据扩展方法,其特征在于,包括:
响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料;
将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型;
将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集;其中,所述各扩展语料子集中均包括多条扩展语料;
获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式;
根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果;
将每一扩展语料进行词嵌入转换,得到词嵌入向量;
获取每一扩展语料的词嵌入向量和正则表达式编码结果,由每一扩展语料的词嵌入向量和正则表达式编码结果组成语料输入向量;
获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值;
获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络;以及
获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果;
所述将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型,包括:
获取所述历史语料集中每一历史语料的语义向量;
获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果;其中,所述历史语料集分组结果中包括若干个历史语料集子分组,且分别记为第1历史语料集子分组至第k历史语料集子分组,k为历史语料集分组结果中包括的历史语料集子分组总个数;
统计获取每一历史语料集子分组中对应包括的历史语料总个数,并获取其中包括历史语料总个数最多的历史语料集子分组,作为目标历史语料集子分组;
根据预设的第一取语料个数从目标历史语料集子分组中任意获取两个历史语料的语义向量对待训练cycle-GAN模型进行训练,当待训练cycle-GAN模型收敛时,停止从目标历史语料集子分组中任意获取两个历史语料的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型;其中,所述第一取语料个数等于2;
所述根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果,包括:
将扩展语料按字符进行划分,得到字符划分结果;
依序将字符划分结果中每一字符与扩展语料相应的正则表达式进行比对,确定每一字符是否命中正则表达式;
若确定有字符未命中正则表达式且字符之前的其他字符未命中正则表达式,将字符的子编码结果输出为第一编码值;
若确定有字符命中正则表达式且字符之前的其他字符未完全命中正则表达式,将字符的子编码结果输出为第二编码值;
若确定有字符未命中正则表达式且字符之前的一位字符命中正则表达式,将字符的子编码结果输出为第三编码值;
若确定有字符命中正则表达式且字符之前连续的其他字符全部命中正则表达式,将字符的子编码结果输出为第四编码值;
将依序所获取每一字符的子编码结果进行拼接,得到与扩展语料的正则表达式编码结果。
2.根据权利要求1所述的基于正则表达式编码的数据扩展方法,其特征在于,所述分组策略为K-means聚类;
所述获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果,包括:
获取所述历史语料集根据各历史语料的语义向量之间的欧氏距离,对所述欧氏距离进行K-means聚类,得到历史语料集分组结果。
3.根据权利要求1所述的基于正则表达式编码的数据扩展方法,其特征在于,所述将每一扩展语料进行词嵌入转换,得到词嵌入向量,包括:
根据预设的词嵌入转换策略对每一扩展语料依次进行分词、关键词抽取、词向量转化及词向量加权求和,得到与每一扩展语料的词嵌入向量。
4.根据权利要求1所述的基于正则表达式编码的数据扩展方法,其特征在于,所述获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量,包括:
将每一扩展语料的词嵌入向量和正则表达式编码结果依照词嵌入向量位于正则表达式编码结果之前的顺序,拼接成语料输入向量。
5.根据权利要求1所述的基于正则表达式编码的数据扩展方法,其特征在于,所述将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果,包括:
获取所述待分类语料的待分类词嵌入向量和待分类正则表达式编码结果,组成待分类语料输入向量,将所述待分类语料输入向量输入至训练后的神经网络进行运算得到分类结果。
6.一种基于正则表达式编码的数据扩展装置,其特征在于,包括:
历史语料集获取单元,用于响应于模型训练指令,根据所述模型训练指令获取历史语料集;其中,所述历史语料集中包括多条历史语料;
第一模型训练单元,用于将所述历史语料集作为训练样本对对抗网络模型进行训练,得到训练后的对抗网络模型;
扩展语料集获取单元,用于将所述历史语料集中每一历史语料输入至所述训练后的对抗网络模型进行运算,得到每一历史语料的扩展语料子集,由各扩展语料子集组成扩展语料集;
第一映射单元,用于获取每一历史语料对应预设的正则表达式,将每一历史语料的扩展语料子集根据历史语料的正则表达式设置相应的正则表达式;
正则编码单元,用于根据正则表达式及预设的正则表达式命中编码策略对每一扩展语料进行编码,得到正则表达式编码结果;
词嵌入向量获取单元,用于将每一扩展语料进行词嵌入转换,得到词嵌入向量;
向量组合单元,用于获取每一扩展语料的词嵌入向量和正则表达式编码结果,将每一扩展语料的词嵌入向量和正则表达式编码结果进行组合,得到语料输入向量;
第二映射单元,用于获取每一历史语料对应预设的标注值,将每一历史语料的扩展语料子集根据历史语料的标注值设置相应的标注值;
第二模型训练单元,用于获取每一扩展语料的语料输入向量和标注值组成与每一扩展语料的训练数据,将每一扩展语料的训练数据对待训练神经网络进行训练,得到训练后的神经网络;以及
语料分类单元,用于获取用户端上传的待分类语料,将所述待分类语料输入至训练后的神经网络进行运算,得到分类结果;
所述第一模型训练单元具体用于:
获取所述历史语料集中每一历史语料的语义向量;
获取所述历史语料集中各历史语料的语义向量之间的向量相似度,并根据预设的分组策略对所述历史语料集进行分组,得到历史语料集分组结果;其中,所述历史语料集分组结果中包括若干个历史语料集子分组,且分别记为第1历史语料集子分组至第k历史语料集子分组,k为历史语料集分组结果中包括的历史语料集子分组总个数;
统计获取每一历史语料集子分组中对应包括的历史语料总个数,并获取其中包括历史语料总个数最多的历史语料集子分组,作为目标历史语料集子分组;
根据预设的第一取语料个数从目标历史语料集子分组中任意获取两个历史语料的语义向量对待训练cycle-GAN模型进行训练,当待训练cycle-GAN模型收敛时,停止从目标历史语料集子分组中任意获取两个历史语料的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型;其中,所述第一取语料个数等于2;
所述正则编码单元具体用于:
将扩展语料按字符进行划分,得到字符划分结果;
依序将字符划分结果中每一字符与扩展语料相应的正则表达式进行比对,确定每一字符是否命中正则表达式;
若确定有字符未命中正则表达式且字符之前的其他字符未命中正则表达式,将字符的子编码结果输出为第一编码值;
若确定有字符命中正则表达式且字符之前的其他字符未完全命中正则表达式,将字符的子编码结果输出为第二编码值;
若确定有字符未命中正则表达式且字符之前的一位字符命中正则表达式,将字符的子编码结果输出为第三编码值;
若确定有字符命中正则表达式且字符之前连续的其他字符全部命中正则表达式,将字符的子编码结果输出为第四编码值;
将依序所获取每一字符的子编码结果进行拼接,得到与扩展语料的正则表达式编码结果。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的基于正则表达式编码的数据扩展方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至5任一项所述的基于正则表达式编码的数据扩展方法。
CN202110850687.8A 2021-07-27 2021-07-27 基于正则表达式编码的数据扩展方法、装置、设备及介质 Active CN113486671B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110850687.8A CN113486671B (zh) 2021-07-27 2021-07-27 基于正则表达式编码的数据扩展方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110850687.8A CN113486671B (zh) 2021-07-27 2021-07-27 基于正则表达式编码的数据扩展方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN113486671A CN113486671A (zh) 2021-10-08
CN113486671B true CN113486671B (zh) 2023-06-30

Family

ID=77942869

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110850687.8A Active CN113486671B (zh) 2021-07-27 2021-07-27 基于正则表达式编码的数据扩展方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN113486671B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162770A (zh) * 2018-10-22 2019-08-23 腾讯科技(深圳)有限公司 一种词扩展方法、装置、设备及介质
CN110288980A (zh) * 2019-06-17 2019-09-27 平安科技(深圳)有限公司 语音识别方法、模型的训练方法、装置、设备及存储介质
CN111354354A (zh) * 2018-12-20 2020-06-30 深圳市优必选科技有限公司 一种基于语义识别的训练方法、训练装置及终端设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162770A (zh) * 2018-10-22 2019-08-23 腾讯科技(深圳)有限公司 一种词扩展方法、装置、设备及介质
CN111354354A (zh) * 2018-12-20 2020-06-30 深圳市优必选科技有限公司 一种基于语义识别的训练方法、训练装置及终端设备
CN110288980A (zh) * 2019-06-17 2019-09-27 平安科技(深圳)有限公司 语音识别方法、模型的训练方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113486671A (zh) 2021-10-08

Similar Documents

Publication Publication Date Title
CN110413785B (zh) 一种基于bert和特征融合的文本自动分类方法
CN110188223B (zh) 图像处理方法、装置及计算机设备
CN110351301B (zh) 一种http请求双层递进式异常检测方法
CN111259144A (zh) 多模型融合文本匹配方法、装置、设备和存储介质
CN110222218B (zh) 基于多尺度NetVLAD和深度哈希的图像检索方法
CN112613308A (zh) 用户意图识别方法、装置、终端设备及存储介质
CN112749274B (zh) 基于注意力机制和干扰词删除的中文文本分类方法
CN116049412B (zh) 文本分类方法、模型训练方法、装置及电子设备
CN115037805B (zh) 一种基于深度聚类的未知网络协议识别方法、***、装置及存储介质
CN111985228A (zh) 文本关键词提取方法、装置、计算机设备和存储介质
CN113541834B (zh) 一种异常信号半监督分类方法、***、数据处理终端
US20230281245A1 (en) Video retrieval method and apparatus using post processing on segmented videos
Vulinović et al. Neural networks for file fragment classification
US20230306056A1 (en) Video retrieval method and apparatus using vectorized segmented videos based on key frame detection
CN115392357A (zh) 分类模型训练、标注数据样本抽检方法、介质及电子设备
CN115795065A (zh) 基于带权哈希码的多媒体数据跨模态检索方法及***
CN114332500A (zh) 图像处理模型训练方法、装置、计算机设备和存储介质
CN111130942A (zh) 一种基于消息大小分析的应用流量识别方法
CN114266252A (zh) 命名实体识别方法、装置、设备及存储介质
CN113704473A (zh) 基于长文本特征提取优化的媒体假新闻检测方法及***
CN112926647A (zh) 模型训练方法、域名检测方法及装置
CN113515593A (zh) 基于聚类模型的话题检测方法、装置和计算机设备
CN117235137A (zh) 一种基于向量数据库的职业信息查询方法及装置
CN113486671B (zh) 基于正则表达式编码的数据扩展方法、装置、设备及介质
CN116361788A (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
GR01 Patent grant
GR01 Patent grant