CN117952092A - 数据业务类型识别方法、装置、计算机设备及存储介质 - Google Patents

数据业务类型识别方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN117952092A
CN117952092A CN202311823350.3A CN202311823350A CN117952092A CN 117952092 A CN117952092 A CN 117952092A CN 202311823350 A CN202311823350 A CN 202311823350A CN 117952092 A CN117952092 A CN 117952092A
Authority
CN
China
Prior art keywords
pinyin
result
data
service type
automaton
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
CN202311823350.3A
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.)
Hangzhou Meichuang Technology Co ltd
Original Assignee
Hangzhou Meichuang 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 Hangzhou Meichuang Technology Co ltd filed Critical Hangzhou Meichuang Technology Co ltd
Priority to CN202311823350.3A priority Critical patent/CN117952092A/zh
Publication of CN117952092A publication Critical patent/CN117952092A/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/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明实施例公开了数据业务类型识别方法、装置、计算机设备及存储介质。所述方法包括:获取元数据;构建拼音字母表、拼音全拼表以及英文AC自动机;获取待识别数据;对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果输出所述识别结果。通过实施本发明实施例的方法可实现提升数据业务类型的识别准确率以及识别效率,减少人工成本。

Description

数据业务类型识别方法、装置、计算机设备及存储介质
技术领域
本发明涉及数据处理方法,更具体地说是指数据业务类型识别方法、装置、计算机设备及存储介质。
背景技术
企业在发展过程中,业务种类不断增加,数据呈现出复杂性高、多样性强的特点。这就需要企业对数据进行分类分级,从而全面梳理企业拥有的数据资产,保障重要数据的安全。目前对于数据分类分级也做了明确的说明和指示,进一步体现了数据分类分级的重要性和必要性。数据分类分级包含两部分:数据打标和分类分级。数据打标是通过元数据识别出字段的业务类型;数据的业务类型是表示字段含义的标签,已经定义好的,例如:如果给列打上“医生姓名”的业务类型标签,则表示该列的含义是“医生姓名”;分类分级是对于已经识别出业务类型的字段进行分类和指定敏感等级;数据打标作为分类分级的第一步,是否能识别出正确的业务类型是最为重要的。
虽然字段会包含字段注释,字段注释是该字段的详细解释,但可能因为时间久远、人员更替和设计不规范等问题导致字段缺少注释信息,也存在很多样本数据无法使用字典、正则识别出数据的业务类型的情况。
因此,有必要设计一种新的方法,实现提升数据业务类型的识别准确率以及识别效率,减少人工成本。
发明内容
本发明的目的在于克服现有技术的缺陷,提供数据业务类型识别方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:数据业务类型识别方法,包括:
获取元数据;
构建拼音字母表、拼音全拼表以及英文AC自动机;
获取待识别数据;
对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;
输出所述识别结果。
其进一步技术方案为:所述构建拼音字母表、拼音全拼表以及英文AC自动机,包括:
加载所有业务类型,以得到加载结果;
根据所述加载结果构建拼音字母表;
根据所述加载结果构建拼音全拼表;
根据英文字典结合所述加载结果构建英文AC自动机。
其进一步技术方案为:所述根据所述加载结果构建拼音字母表,包括:
选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果;
对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;
选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
其进一步技术方案为:所述英文AC自动机包括goto表、fail表以及result表;所述goto表为字典树;results表是给定一个状态,根据已知所述状态是否对应某个或某些模式串,决定是否输出模式串以及对应的值;fail表保存的是状态间一对一的关系,存储状态转移失败后应当回退的指定状态。
其进一步技术方案为:所述对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果,包括:
将所述待识别数据中的字段名转化为小写,以得到转化结果;
对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;
判断所述第一查询结果是否是存在对应的拼音首字母;
若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。
其进一步技术方案为:所述判断所述查询结果是否是存在对应的拼音首字母之后,还包括:
若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;
判断所述第二查询结果是否是存在对应的拼音;
若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。
其进一步技术方案为:所述判断所述第二查询结果是否是存在对应的拼音之后,还包括:
通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果;
对所述分词结果所对应的中文确定向量,以得到字段向量;
将所述字段向量与所述加载结果所对应的向量计算相似度;
筛选相似度符合要求的加载结果,以得到识别结果。
本发明还提供了数据业务类型识别装置,包括:
元数据获取单元,用于获取元数据;
构建单元,用于构建拼音字母表、拼音全拼表以及英文AC自动机;
待识别数据获取单元,用于获取待识别数据;
类型识别单元,用于对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;
输出单元,用于输出所述识别结果。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过从元数据构建的拼音字母表、拼音全拼表以及英文AC自动机,利用拼音字母表、拼音全拼表以及英文AC自动机对待识别数据进行业务类型的识别和确定,实现提升数据业务类型的识别准确率以及识别效率,减少人工成本。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据业务类型识别方法的应用场景示意图;
图2为本发明实施例提供的数据业务类型识别方法的流程示意图;
图3为本发明实施例提供的数据业务类型识别方法的子流程示意图;
图4为本发明实施例提供的数据业务类型识别方法的子流程示意图;
图5为本发明实施例提供的数据业务类型识别方法的子流程示意图;
图6为本发明实施例提供的数据业务类型识别装置的示意性框图;
图7为本发明实施例提供的数据业务类型识别装置的构建单元的示意性框图;
图8为本发明实施例提供的数据业务类型识别装置的第一构建子单元的示意性框图;
图9为本发明实施例提供的数据业务类型识别装置的类型识别单元的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的数据业务类型识别方法的应用场景示意图。图2为本发明实施例提供的数据业务类型识别方法的示意性流程图。该数据业务类型识别方法应用于服务器中。该服务器与终端进行数据交互,通过加载所有元数据,利用元数据已知的业务类型构建拼音字母表、拼音全拼表以及英文AC自动机,采用构建的内容对待识别数据进行业务类型识别,以输出识别结果,实现提升数据业务类型的识别准确率以及识别效率,减少人工成本。比如,数据库即终端里面的字段叫做ysxm,服务器通过数据库连接(jdbc)获取到该字段;匹配到“医生姓名”这个业务类型。
图2是本发明实施例提供的数据业务类型识别方法的流程示意图。如图2所示,该方法包括以下步骤S110至S150。
S110、获取元数据。
在本实施例中,元数据是指数据库的schema、表格和列。其中表格包含表注释,列包含列名、列注释、样本数据等基础信息。
S120、构建拼音字母表、拼音全拼表以及英文AC自动机。
在本实施例中,拼音字母表是指拼音首字母与业务术语的映射关系构成的表格,业务术语则为业务类型的业务术语。
拼音全拼表是指拼音全拼与业务术语的映射关系构成的表格;所述英文AC自动机包括goto表、fail表以及result表;所述goto表为字典树;results表是给定一个状态,根据已知所述状态是否对应某个或某些模式串,决定是否输出模式串以及对应的值;fail表保存的是状态间一对一的关系,存储状态转移失败后应当回退的指定状态。
在一实施例中,请参阅图3,上述的步骤S120可包括步骤S121~S124。
S121、加载所有业务类型,以得到加载结果。
在本实施例中,加载结果是指所有业务类型,具体地,业务类型表示事先定义好的字段含义的标签。
S122、根据所述加载结果构建拼音字母表。
在一实施例中,请参阅图4,上述的步骤S122可包括步骤S1221~S1223。
S1221、选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果。
在本实施例中,筛选结果是指所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语。
S1222、对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;
S1223、选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
具体地,部分业务数据的业务类型名称可能带有字母、数组或者符号,这里是通过拼音首字母识别业务术语,要求业务术语名称为全中文。拼音声母总共23个,只算首字母仅有20个,那么通过20个首字母组合长度越短越容易重复。在尽可能提高业务术语名称首字母匹配字段名的成功率的前提下,也要降低相同拼音首字母对应多个业务术语名称的情况,所以需要限制业务术语名称的最小长度,当然限制了业务术语名称长度能有效减低这种情况,但是不能完全排除。在前面两种情况的考虑下,选取业务术语名称都为中文并且大于等于四个字的业务术语。生成业务术语的拼音首字母的逻辑为:业务术语名称按照每个汉字拆分,分别生成对应的拼音,取拼音中的首字母,最后拼接为在一起,并保留拼音首字母与业务术语的映射关系,将该数据结构称为业务术语拼音首字母表,简称拼音首字母表。用JSON表示具体数据格式如下:
{
"ysxm":["医生姓名","医师姓名",……]
……
}。
S123、根据所述加载结果构建拼音全拼表。
在本实施例中,拼音全拼表构建时,选取业务术语的名称也必须都为全中文。这里不需要限制业务术语名称的数量,因为拼音全拼相比于拼音首字母重复的概率比较小。生成业务术语的拼音全拼表的逻辑为:业务术语名称按照每个汉字拆分,分别生成对应的拼音,拼接为在一起,并保留拼音首字母与业务术语的映射关系,将该数据结构称为业务术语拼音全拼表,简称拼音全拼表。
用JSON表示具体数据格式如下:
{
"yishixingming":["医师姓名","医士姓名",……]
……
}。
S124、根据英文字典结合所述加载结果构建AC自动机。
具体地,根据内置的英文字典,将英文单词构建AC自动机。
内置的英文字典是key、value结构。用JSON表示具体数据格式如下:
{
"doctor":"医生",
"name":"姓名"
}。
AC自动机在前缀树的基础上,为前缀树上的每个节点建立一棵后缀树,比如name这个单词构建前缀树就是n-a-m-e,其中n为根节点,而构建后缀树为e-m-a-n,其中e为根节点。节省了大量查询。AC自动机由goto表、fail表和result表组成。goto表就是前缀树,即字典树。results给定一个状态,需要知道该状态是否对应某个或某些模式串,以决定是否输出模式串以及对应的值。failure表保存的是状态间一对一的关系,存储状态转移失败后应当回退的最佳状态。最佳状态指的是能记住已匹配上的字符串的最长后缀的那个状态。用JSON表示具体数据格式如下:
{"root":{"children":[{"children":[{"children":[{"children":[{"children":[{"childr en":[{"children":[],"failure":{"$ref":"$.root"},"name":"r","results":[{"len":6,"v":"doc tor"}]}],"failure":{"$ref":"$.root"},"name":"o","results":[]}],"failure":{"$ref":"$.root"},"name":"t","results":[]}],"failure":{"$ref":"$.root"},"name":"c","results":[]}],"failu re":{"$ref":"$.root"},"name":"o","results":[]}],"failure":{"$ref":"$.root"},"name":"d","results":[]},{"children":[{"children":[{"children":[{"children":[],"failure":{"$ref":"$.root"},"name":"e","results":[{"len":4,"v":"name"}]}],"failure":{"$ref":"$.root"},"name":"m","results":[]}],"failure":{"$ref":"$.root"},"name":"a","results":[]}],"failure":{"$ref":"$.root"},"name":"n","results":[]}],"name":"","results":[]}}
S130、获取待识别数据。
在本实施例中,待识别数据是指需要进行业务类型识别的数据。
S140、对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果。
在本实施例中,识别结果是指待识别数据的业务类型。
在一实施例中,请参阅图5,上述的步骤S140可包括步骤S141~S1411。
S141、将所述待识别数据中的字段名转化为小写,以得到转化结果。
在本实施例中,转化结果是指将待识别数据的字段名转化为小写字母的结果。
S142、对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;
S143、判断所述第一查询结果是否是存在对应的拼音首字母;
S144、若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。
具体地,在拼音字母表中查询key也就是该转化结果所对应的拼音字母是否存在,如果存在则取该拼音字母对应的值value的第一个业务类型,表示识别该业务类型成功。
S145、若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;
S146、判断所述第二查询结果是否是存在对应的拼音;
S147、若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。
具体地,首字母更容易误匹配,所以会限制业务类型名称长度,要业务类型名称都为中文并且大于等于四个字的业务类型。但是全拼就会做这个限制。比如说:“身份证”不会出现首字母匹配中,但是会出现在全拼中。
在本实施例中,在拼音全拼表中查询key即拼音全拼是否存在,如果存在则取所述拼音对应的值value的第一个业务类型,并且该业务类型没有在拼音首字母表中识别出来,则表示识别该业务类型成功。
S148、通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果。
在本实施例中,分词结果是指转化结果进行词语切分形成的结果。
通过AC自动机根据双向最长匹配算法分词,如果分词都能在英文字典中找到,则表示翻译成功,否则进入结束步骤。
具体地,双向最长匹配算法分词是一个分词算法,比如说把username拆分为user、name、username。而AC自动机本质是字典,这里其实就是在字典里面找是否存在user、name、username。如果三个单词都能在字典中找到,那么根据最长匹配,那么会username当作一个单词,而不是拆分为user、name
S149、对所述分词结果所对应的中文确定向量,以得到字段向量。
在本实施例中,字段向量是指分词结果所对应的中文进行向量确定得到的结果。
将分词后单词对应的中文去内置向量字典中,查找对应的向量,未查找到向量的中文忽略。内置向量字典的格式为:
姓名-0.011410 0.118206 0.360038 0.622496 -0.183756 0.249871……
医生0.236311 -0.211533 -0.126339 0.352886 0.314047 0.072861……
具体的,内置是指该字典在***中是预先训练和定义好的。向量字段的格式为:中文向量1向量2向量……。每一个向量是表示中文的一个特征,这个特征是对该中文的描述。举个例子,可以将中文的字数、中文的笔画总数当作特征,这里只是举个例子,并不是说一定是把字数和笔画总数当作特征。
S1410、将所述字段向量与所述加载结果所对应的向量计算相似度;
S1411、筛选相似度符合要求的加载结果,以得到识别结果。
在本实施例中,遍历所有的业务类型,将业务类型名称分词,查找对应的向量,未查找到向量的中文忽略。将字段向量与业务类型的向量做预先相似度计算,具体地,这里的相似度算法是余弦相似度。例如在二维坐标系中计算余弦相似度,A(x1,y1)、B(x1,y2)的余弦相似度为(x1*x2+y1*y2)/((x1*x1+x2*x2)开平方+(y1*y1+y2*y2)开平方);如果达到相似度阈值,且该业务类型没有在拼音首字母或者拼音全拼识别中识别出来,则表示识别成功。
S150、输出所述识别结果。
在本实施例中,当字段没有字段注释,并且样本数据也难以通过字典、正则表达式等特征识别的时候,通过对字段名拼音首字母、拼音全拼、英文翻译并通过NLP相似度计算等方式识别业务类型,其本质上是针对于字段名的命名规律识别业务类型。这样也可以达到不错的效果,降低人工干预,提高字段的识别率和准确率,为后续的分类分级打下坚实的基础。
本实施例的方法通过字段名识别出业务类型也是一条路径,因为字段命名也是存在一定的语义和合理性的,与字段的含义存在一定的关系。
上述的数据业务类型识别方法,通过从元数据构建的拼音字母表、拼音全拼表以及英文AC自动机,利用拼音字母表、拼音全拼表以及英文AC自动机对待识别数据进行业务类型的识别和确定,实现提升数据业务类型的识别准确率以及识别效率,减少人工成本。
图6是本发明实施例提供的一种数据业务类型识别装置300的示意性框图。如图6所示,对应于以上数据业务类型识别方法,本发明还提供一种数据业务类型识别装置300。该数据业务类型识别装置300包括用于执行上述数据业务类型识别方法的单元,该装置可以被配置于服务器中。具体地,请参阅图6,该数据业务类型识别装置300包括元数据获取单元301、构建单元302、待识别数据获取单元303、类型识别单元304以及输出单元305。
元数据获取单元301,用于获取元数据;构建单元302,用于构建拼音字母表、拼音全拼表以及英文AC自动机;待识别数据获取单元303,用于获取待识别数据;类型识别单元304,用于对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;输出单元305,用于输出所述识别结果。
在一实施例中,如图7所示,所述构建单元302包括类型加载子单元3021、第一构建子单元3022、第二构建子单元3023以及第三构建子单元3024。
类型加载子单元3021,用于加载所有业务类型,以得到加载结果;第一构建子单元3022,用于根据所述加载结果构建拼音字母表;第二构建子单元3023,用于根据所述加载结果构建拼音全拼表;第三构建子单元3024,用于根据英文字典结合所述加载结果构建英文AC自动机。
在一实施例中,如图8所示,所述第一构建子单元3022包括选取模块30221、拆分模块30222以及字母拼接模块30223。
选取模块30221,用于选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果;拆分模块30222,用于对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;字母拼接模块30223,用于选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
在一实施例中,如图9所示,所述类型识别单元304包括转化子单元3041、第一查询子单元3042、第一判断子单元3043、第一确定子单元3044、第二查询子单元3045、第二判断子单元3046、第二确定子单元3047、分词子单元3048、向量确定子单元3049、计算子单元30410以及筛选子单元30411。
转化子单元3041,用于将所述待识别数据中的字段名转化为小写,以得到转化结果;第一查询子单元3042,用于对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;第一判断子单元3043,用于判断所述第一查询结果是否是存在对应的拼音首字母;第一确定子单元3044,用于若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。第二查询子单元3045,用于若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;第二判断子单元3046,用于判断所述第二查询结果是否是存在对应的拼音;第二确定子单元3047,用于若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。分词子单元3048,用于通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果;向量确定子单元3049,用于对所述分词结果所对应的中文确定向量,以得到字段向量;计算子单元30410,用于将所述字段向量与所述加载结果所对应的向量计算相似度;筛选子单元30411,用于筛选相似度符合要求的加载结果,以得到识别结果。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述数据业务类型识别装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述数据业务类型识别装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器,其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图10,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种数据业务类型识别方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种数据业务类型识别方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取元数据;构建拼音字母表、拼音全拼表以及英文AC自动机;获取待识别数据;对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;输出所述识别结果。
在一实施例中,处理器502在实现所述构建拼音字母表、拼音全拼表以及英文AC自动机步骤时,具体实现如下步骤:
加载所有业务类型,以得到加载结果;根据所述加载结果构建拼音字母表;根据所述加载结果构建拼音全拼表;根据英文字典结合所述加载结果构建英文AC自动机。
其中,所述英文AC自动机包括goto表、fail表以及result表;所述goto表为字典树;results表是给定一个状态,根据已知所述状态是否对应某个或某些模式串,决定是否输出模式串以及对应的值;fail表保存的是状态间一对一的关系,存储状态转移失败后应当回退的指定状态。
在一实施例中,处理器502在实现所述根据所述加载结果构建拼音字母表步骤时,具体实现如下步骤:选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果;对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
在一实施例中,处理器502在实现所述对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果步骤时,具体实现如下步骤:
将所述待识别数据中的字段名转化为小写,以得到转化结果;对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;判断所述第一查询结果是否是存在对应的拼音首字母;若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。
在一实施例中,处理器502在实现所述判断所述查询结果是否是存在对应的拼音首字母步骤之后,还实现如下步骤:
若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;判断所述第二查询结果是否是存在对应的拼音;若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。
在一实施例中,处理器502在实现所述判断所述第二查询结果是否是存在对应的拼音步骤之后,还实现如下步骤:
通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果;对所述分词结果所对应的中文确定向量,以得到字段向量;将所述字段向量与所述加载结果所对应的向量计算相似度;筛选相似度符合要求的加载结果,以得到识别结果。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取元数据;构建拼音字母表、拼音全拼表以及英文AC自动机;获取待识别数据;对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;输出所述识别结果。
在一实施例中,所述处理器在执行所述计算机程序而实现所述构建拼音字母表、拼音全拼表以及英文AC自动机步骤时,具体实现如下步骤:
加载所有业务类型,以得到加载结果;根据所述加载结果构建拼音字母表;根据所述加载结果构建拼音全拼表;根据英文字典结合所述加载结果构建英文AC自动机。
其中,所述英文AC自动机包括goto表、fail表以及result表;所述goto表为字典树;results表是给定一个状态,根据已知所述状态是否对应某个或某些模式串,决定是否输出模式串以及对应的值;fail表保存的是状态间一对一的关系,存储状态转移失败后应当回退的指定状态。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述加载结果构建拼音字母表步骤时,具体实现如下步骤:
选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果;对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果步骤时,具体实现如下步骤:
将所述待识别数据中的字段名转化为小写,以得到转化结果;对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;判断所述第一查询结果是否是存在对应的拼音首字母;若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。
在一实施例中,所述处理器在执行所述计算机程序而实现所述判断所述查询结果是否是存在对应的拼音首字母步骤之后,还实现如下步骤:
若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;判断所述第二查询结果是否是存在对应的拼音;若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。
在一实施例中,所述处理器在执行所述计算机程序而实现所述判断所述第二查询结果是否是存在对应的拼音步骤之后,还实现如下步骤:
通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果;对所述分词结果所对应的中文确定向量,以得到字段向量;将所述字段向量与所述加载结果所对应的向量计算相似度;筛选相似度符合要求的加载结果,以得到识别结果。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.数据业务类型识别方法,其特征在于,包括:
获取元数据;
构建拼音字母表、拼音全拼表以及英文AC自动机;
获取待识别数据;
对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;
输出所述识别结果。
2.根据权利要求1所述的数据业务类型识别方法,其特征在于,所述构建拼音字母表、拼音全拼表以及英文AC自动机,包括:
加载所有业务类型,以得到加载结果;
根据所述加载结果构建拼音字母表;
根据所述加载结果构建拼音全拼表;
根据英文字典结合所述加载结果构建英文AC自动机。
3.根据权利要求2所述的数据业务类型识别方法,其特征在于,所述根据所述加载结果构建拼音字母表,包括:
选取所述加载结果中业务术语名称为中文并且名称的字数不少于四个的业务术语,以得到筛选结果;
对所述筛选结果按照每个汉字拆分,以分别生成对应的拼音;
选取拼音中的首字母,并进行拼接,保留拼音首字母与业务术语的映射关系,以得到拼音字母表。
4.根据权利要求2所述的数据业务类型识别方法,其特征在于,所述英文AC自动机包括goto表、fail表以及result表;所述goto表为字典树;results表是给定一个状态,根据已知所述状态是否对应某个或某些模式串,决定是否输出模式串以及对应的值;fail表保存的是状态间一对一的关系,存储状态转移失败后应当回退的指定状态。
5.根据权利要求2所述的数据业务类型识别方法,其特征在于,所述对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果,包括:
将所述待识别数据中的字段名转化为小写,以得到转化结果;
对所述转化结果作为搜索条件从所述拼音字母表查询对应的拼音首字母,以得到第一查询结果;
判断所述第一查询结果是否是存在对应的拼音首字母;
若所述第一查询结果是存在对应的拼音首字母,则确定所述拼音首字母对应的值为业务类型,以得到识别结果。
6.根据权利要求5所述的数据业务类型识别方法,其特征在于,所述判断所述查询结果是否是存在对应的拼音首字母之后,还包括:
若所述第一查询结果是不存在对应的拼音首字母,则对所述转化结果作为搜索条件从所述拼音全拼表查询对应的拼音,以得到第二查询结果;
判断所述第二查询结果是否是存在对应的拼音;
若所述第二查询结果是存在对应的拼音,则确定所述拼音对应的值为业务类型,以得到识别结果。
7.根据权利要求6所述的数据业务类型识别方法,其特征在于,所述判断所述第二查询结果是否是存在对应的拼音之后,还包括:
通过AC自动机根据双向最长匹配算法对所述转化结果进行分词,以得到分词结果;
对所述分词结果所对应的中文确定向量,以得到字段向量;
将所述字段向量与所述加载结果所对应的向量计算相似度;
筛选相似度符合要求的加载结果,以得到识别结果。
8.数据业务类型识别装置,其特征在于,包括:
元数据获取单元,用于获取元数据;
构建单元,用于构建拼音字母表、拼音全拼表以及英文AC自动机;
待识别数据获取单元,用于获取待识别数据;
类型识别单元,用于对所述待识别数据采用拼音字母表、拼音全拼表以及英文AC自动机识别业务类型,以得到识别结果;
输出单元,用于输出所述识别结果。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
CN202311823350.3A 2023-12-27 2023-12-27 数据业务类型识别方法、装置、计算机设备及存储介质 Pending CN117952092A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311823350.3A CN117952092A (zh) 2023-12-27 2023-12-27 数据业务类型识别方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311823350.3A CN117952092A (zh) 2023-12-27 2023-12-27 数据业务类型识别方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN117952092A true CN117952092A (zh) 2024-04-30

Family

ID=90797081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311823350.3A Pending CN117952092A (zh) 2023-12-27 2023-12-27 数据业务类型识别方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN117952092A (zh)

Similar Documents

Publication Publication Date Title
CN110837550B (zh) 基于知识图谱的问答方法、装置、电子设备及存储介质
CN108460014B (zh) 企业实体的识别方法、装置、计算机设备及存储介质
KR102532396B1 (ko) 데이터 세트 처리 방법, 장치, 전자 기기 및 저장 매체
CN110929125B (zh) 搜索召回方法、装置、设备及其存储介质
CN112035599B (zh) 基于垂直搜索的查询方法、装置、计算机设备及存储介质
US20220129448A1 (en) Intelligent dialogue method and apparatus, and storage medium
CN112115232A (zh) 一种数据纠错方法、装置及服务器
CN110969517B (zh) 一种招投标生命周期关联方法、***、存储介质及计算机设备
CN112925883B (zh) 搜索请求处理方法、装置、电子设备及可读存储介质
CN112988784B (zh) 数据查询方法、查询语句生成方法及其装置
CN113128209B (zh) 用于生成词库的方法及装置
CN111274822A (zh) 语义匹配方法、装置、设备及存储介质
CN113836314B (zh) 知识图谱构建方法、装置、设备以及存储介质
CN112784009B (zh) 一种主题词挖掘方法、装置、电子设备及存储介质
CN114495143A (zh) 一种文本对象识别方法、装置、电子设备及存储介质
CN114547301A (zh) 文档处理、识别模型训练方法、装置、设备及存储介质
CN112560425A (zh) 模板生成方法、装置、电子设备及存储介质
CN110309258B (zh) 一种输入检查方法、服务器和计算机可读存储介质
CN113553410B (zh) 长文档处理方法、处理装置、电子设备和存储介质
CN115373982A (zh) 基于人工智能的测试报告分析方法、装置、设备及介质
CN117952092A (zh) 数据业务类型识别方法、装置、计算机设备及存储介质
CN110083817B (zh) 一种命名排歧方法、装置、计算机可读存储介质
CN116361517B (zh) 一种企业字号查重方法、装置、设备和介质
CN109408713A (zh) 一种基于用户反馈信息的软件需求检索***
CN115934921B (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