CN112084308A - 用于文本类型数据识别的方法、系统及存储介质 - Google Patents

用于文本类型数据识别的方法、系统及存储介质 Download PDF

Info

Publication number
CN112084308A
CN112084308A CN202010974941.0A CN202010974941A CN112084308A CN 112084308 A CN112084308 A CN 112084308A CN 202010974941 A CN202010974941 A CN 202010974941A CN 112084308 A CN112084308 A CN 112084308A
Authority
CN
China
Prior art keywords
module
classifier
training
rank
fields
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
CN202010974941.0A
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.)
China Academy of Information and Communications Technology CAICT
Original Assignee
China Academy of Information and Communications Technology CAICT
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 China Academy of Information and Communications Technology CAICT filed Critical China Academy of Information and Communications Technology CAICT
Priority to CN202010974941.0A priority Critical patent/CN112084308A/zh
Publication of CN112084308A publication Critical patent/CN112084308A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • 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
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • G06F18/24155Bayesian classification
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

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

Abstract

本发明涉及用于文本类型数据识别的方法、系统及存储介质。在该方法中首先获取数据表中的各个字段,将所有字段信息进行连接得到字段集合,然后构建训练集,对训练集中的字段集合进行基于字节的1‑gram特征的提取,将提取的特征输入bayes分类器进行训练,最后对待识别的数据表进行特征的提取,将提取的特征输入分类器中进行识别,分类器输出分类识别结果。该方法使用单汉字或者单词为语义单位作为分类特征,避免了特征在训练样本中的稀疏性问题,将类别所有字段内容连接为一个大文件进行处理,且将贝叶斯概率计算用于该分类问题,将字段的先验概率、1‑gram的类别条件概率作为计算概率的主要变量,分类中使用对数运算实现得分的相加,提高了识别准确率。

Description

用于文本类型数据识别的方法、系统及存储介质
技术领域
本发明属于机器学习技术领域,更具体地,涉及一种用于文本类型数据识别的方法、系统及存储介质。
背景技术
随着数字经济时代的来临,数据作为新型生产要素,加速与传统产业生产力融合发展,推动经济发展质量变革、效率变革、动力变革。在此背景下,我国高度重视数据安全保护工作,为国家数据经济发展保驾护航。我国积极借鉴国外数据安全管理先进经验,出台《网络安全法》等法律法规,明确提出数据分类、加密等安全保障要求,将数据资产梳理、数据分级分类管理等作为数据安全保护基础措施与前置条件正式纳入到企业数据安全管理责任义务中进行要求。由于数据体量大、更新快、种类多等特点,使得人工梳理数据无法满足数据资产管理与分级分类的要求,因此,研发数据资产识别自动化工具,有助于高效、准确的完成数据资产识别与梳理,对于推动全行业提升网络数据安全保护能力,共筑国家数据安全防线有重要积极意义。
目前相关主体单位对于数据库、大数据平台等存储的数据主要采用基于正则表达式判定的方式进行数据分级分类识别。即需要人工预先根据数据的类型、内容、长度等数据特征建立该数据的正则表达式,进而通过计算数据与正则表达式的匹配程度,实现对数据级别和类别的识别。而现有的基于正则表达式的分级分类识别方法,主要存在以下问题:一是适用范围有限,该算法仅可对数据特征明显的数字型数据和二进制型数据等进行分类识别,如身份证号、电话号、帐号、密码等数字类型数据,无法识别姓名、公司名、健康状况、爱好等无明显数据特征,难以建立正则表达式的文本类型数据;二是前期需要人工定义数据识别规则,工作耗时长,工作效率低。
发明内容
提供了本公开以解决现有技术中存在的上述问题。
本公开使用单汉字或者单词为语义单位作为分类特征,避免了特征在训练样本中的稀疏性问题;将类别所有字段内容连接为一个大文件进行处理;将贝叶斯概率计算用于该分类问题,特别是将字段的先验概率、1-gram的类别条件概率作为计算概率的主要变量;训练过程中生成先验概率和条件概率;分类中使用对数运算实现得分的相加,解决了传统正则表达式数据资产梳理方法无法有效适用于大部分文本类型数据的问题。提高了识别准确率,省去了人工设置数据识别规则的时间,工作耗时短,运行效率较高。
根据本公开的第一方面,提供了一种用于文本类型数据识别的方法,包括以下步骤:
S1、获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
S2、构建训练集,训练集为步骤S1中的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
S3、将步骤S2提取的特征输入bayes分类器进行训练;
S4、对待识别的数据表按照步骤S1-S2进行特征的提取,然后将提取的特征输入分类器中进行识别,分类器输出分类识别结果。
根据本公开的第二方面,所述步骤S2中,进行基于字节的1-gram特征的提取的具体步骤如下:
S21、设步骤S1中的字段包括字节B1B2B3…BN,对字节B1B2B3…BN进行基于1-gram的字节级分词处理;
S22、对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
S23、计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
根据本公开的第三方面,所述步骤S3进行分类器训练的具体步骤如下:
S31.给定的类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
S32.对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure BDA0002685433440000031
其中
Figure BDA0002685433440000032
为ci类中字段的数量;
S33.对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure BDA0002685433440000033
其中
Figure BDA0002685433440000034
为ri出现在ci类中的次数;
S34.输出训练结果:PR={pr[ci]},条件概率PC={pc[ri][cj]}。
根据本公开的第四方面,所述步骤S4的具体步骤如下:
S41.对于待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
S42.计算先验概率对数,累计先验概率得分:s[ci]+=log pr[ci];
S43.对于d中的所有语义项ri,累计条件概率得分:s[ci]+=log pc[ri][ci];
S44.输出得分最大的类别为分类结果:arg max s[ci]。
根据本公开的第五方面,提供了一种用于文本类型数据识别的系统,包括获取模块、特征提取模块、分类器训练模块及分类器识别模块:
获取模块:用于获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
特征提取模块:用于构建训练集,训练集为获取模块得到的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
分类器训练模块:用于将特征提取模块提取的特征输入bayes分类器进行训练;
分类器识别模块:用于对待识别的数据表,按照获取模块得到字段集合,然后特征提取模块进行特征的提取,最后将提取的特征输入分类器中进行识别,分类器输出分类识别结果。
根据本公开的第六方面,提供了一种用于文本类型数据识别的系统,其中特征提取模块包括分词模块、排序模块、第一计算模块:
分词模块:对获取模块得到的字段包括字节B1B2B3…BN进行基于1-gram 的字节级分词处理;
排序模块:用于对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
第一计算模块:用于计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
根据本公开的第七方面,提供了一种用于文本类型数据识别的系统,其中分类器训练模块包括:词典建立模块、第二计算模块、第三计算模块、第一输出模块:
词典建立模块:给定类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
第二计算模块:用于对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure BDA0002685433440000041
其中
Figure BDA0002685433440000042
为ci类中字段的数量;
第三计算模块:用于对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure BDA0002685433440000043
其中
Figure BDA0002685433440000044
为ri出现在ci类中的次数;
第一输出模块:用于输出训练结果:PR={pr[ci]},条件概率PC={pc[ri][cj]}。
根据本公开的第八方面,提供了一种用于文本类型数据识别的系统,其中分类器识别模块包括第四计算模块、第五计算模块、第六计算模块、第二输出模块:
第四计算模块:用于对待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
第五计算模块:用于计算先验概率对数,累计先验概率得分: s[ci]+=log pr[ci];
第六计算模块:用于对d中的所有语义项ri,累计条件概率得分: s[ci]+=log pc[ri][ci];
第二输出模块:用于输出得分最大的类别为分类结果:arg max s[ci]。
根据本公开的第九方面,本公开还提供了一种存储介质,其内部存储有计算机程序,上述计算机程序运行时实现本公开第一方面至第四方面的用于文本类型数据识别的方法中的步骤。
根据本公开的第十方面,本公开还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开第一方面至第四方面的用于文本类型数据识别的方法中的步骤。
本发明的有益效果为:
(1)本发明弥补了传统基于正则表达式规则识别的算法无法识别大部分文本型数据字段的局限性,具有适用范围广、数据字段覆盖率高的特点。
(2)本算法基于机器学习技术,在大量学习的基础上,可以科学、准确的建立数据分类学习模型,具有较高的识别准确率。
(3)本算法在训练阶段和分类阶段的算法清晰、简单,且省去了人工设置数据识别规则的时间,工作耗时短,运行效率较高。
附图说明
图1示出了根据本发明实施例的用于文本类型数据识别的方法的流程图;
图2示出了根据本发明实施例的基于字节的1-gram特征提取的流程图;
图3示出了根据本发明实施例的分类器训练的流程图;
图4示出了根据本发明实施例的分类器识别的流程图;
图5示出了根据本发明实施例的用于文本类型数据识别的系统的示意图;
图6示出了根据本发明实施例的特征提取模块的示意图;
图7示出了根据本发明实施例的分类器训练模块的示意图;
图8示出了根据本发明实施例的分类器识别模块的示意图。
具体实施方式
为使本领域技术人员更好的理解本发明的技术方案,下面结合附图和具体实施方式对本公开作详细说明。下面结合附图和具体实施例对本公开的实施例作进一步详细描述,但不作为对本公开的限定。
下面对本公开的具体实施方式进行描述,以便于本技术领域的技术人员理解本公开,但应该清楚,本公开不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本公开的精神和范围内,这些变化是显而易见的,一切利用本公开构思的发明创造均在保护之列。
实施例1
图1是根据本发明实施例的用于文本类型数据识别的方法,如图1所示,包括以下步骤:
S1、获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
数据源中会存在多张数据表,每个数据表中存在多个字段,将所有数据表中的所有字段以拼接的方式得到字段集合。
S2、构建训练集,训练集为步骤S1中的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
贝叶斯分类算法在对文本进行分析时,依据条件独立假设,假设文本中各词语之间是相互独立的,不依赖于文本中其他相邻的词语。例如,文本d由 l个特征组成,表示成d=(x1,x2,...,xl),则该文本在语料库中出现的概率
Figure BDA0002685433440000071
式中xi为文档的第i个特征。
N-gram模型建立在独立性假设基础上,假设文本中第n个词的出现与前 n-1个词相关,此时文本d在语料库中出现的概率
Figure BDA0002685433440000072
式中
Figure BDA0002685433440000073
其中 A(xi-n+1,...,xi)为文本d中连续词组xi-n+1,...,xi在语料库中出现的总数,使用拉普拉斯平滑进行处理,采用公式
Figure BDA0002685433440000074
式中A(n) 为语料库中所有不重复的n元词组的总数,根据N-gram模型,文本d在语料库中出现的概率
Figure BDA0002685433440000075
本公开采用基于字节的1-gram特征的提取,数据表中的字段中的中文汉字、英文单词是语义独立的。
S3、将步骤S2提取的特征输入bayes分类器进行训练;
将提取的特征输入bayes分类器进行训练,首先计算每个类别的先验概率,然后计算字段中的语义项出现在每个类别中的条件概率,最终输出训练结果,训练结果为每个字属于各个类别的条件概率,得到训练好的分类模型。
S4、对待识别的数据表按照步骤S1-S2进行特征的提取,然后将提取的特征输入分类器中进行识别,分类器输出分类识别结果;
对于待识别的数据表,首先获取数据表中的各个字段,将所有字段信息进行连接得到字段集合,然后对字段集合进行基于字节的1-gram特征的提取,将提取的特征输入已经训练好的分类器中进行识别,最终输出分类识别结果。
图2是根据本发明实施例的基于字节的1-gram特征提取流程图,如图2 所示,进行基于字节的1-gram特征的提取的具体步骤如下:
S21、设步骤S1中的字段包括字节B1B2B3…BN,对字节B1B2B3…BN进行基于1-gram的字节级分词处理;
S22、对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
S23、计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
图3是根据本发明实施例的分类器训练的流程图,分类器训练的具体步骤如下:
S31.给定的类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
S32.对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure BDA0002685433440000081
其中
Figure BDA0002685433440000082
为ci类中字段的数量;
S33.对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure BDA0002685433440000083
其中
Figure BDA0002685433440000084
为ri出现在ci类中的次数;
S34.输出训练结果:PR={pr[ci]},条件概率PC={pc[ri][cj]}。
图4是根据本发明实施例的分类器识别的流程图,具体步骤如下:
S41.对于待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
S42.计算先验概率对数,累计先验概率得分:s[ci]+=logpr[ci];
S43.对于d中的所有语义项ri,累计条件概率得分:s[ci]+=logpc[ri][ci];
S44.输出得分最大的类别为分类结果:argmaxs[ci]。
实施例2
图5是根据本发明实施例的用于文本类型数据识别的系统,如图2所示,包括以下模块:
获取模块51、特征提取模块52、分类器训练模块53及用于分类器识别模块54。
获取模块51用于获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
特征提取模块52用于构建训练集,训练集为获取模块51得到的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
分类器训练模块53用于将特征提取模块52提取的特征输入bayes分类器进行训练;
分类器识别模块54对待识别的数据表经获取模块51和特征提取模块52 处理后进行特征的提取,然后将提取的特征输入分类器中进行识别,分类器输出分类识别结果。
图6示出了根据本发明实施例的特征提取模块的示意图,如图6所示,包括以下模块:
分词模块61:用于对获取模块得到的字段包括字节B1B2B3…BN进行基于 1-gram的字节级分词处理;
排序模块62:用于对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
第一计算模块63:用于计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
图7示出了根据本发明实施例的分类器训练模块的示意图,如图7所示,包括以下模块:
词典建立模块71:给定类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
第二计算模块72:用于对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure BDA0002685433440000101
其中
Figure BDA0002685433440000102
为ci类中字段的数量;
第三计算模块73:用于对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure BDA0002685433440000103
其中Tciri为ri出现在ci类中的次数;
第一输出模块74:用于输出训练结果:PR={pr[ci]},条件概率 PC={pc[ri][cj]}。
图8示出了根据本发明实施例的分类器识别模块的示意图,如图8所示,包括以下模块:
第四计算模块81:用于对待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
第五计算模块82:用于计算先验概率对数,累计先验概率得分: s[ci]+=logpr[ci];
第六计算模块83:用于对d中的所有语义项ri,累计条件概率得分: s[ci]+=logpc[ri][ci];
第二输出模块84:用于输出得分最大的类别为分类结果:argmaxs[ci]。
实施例3
假设训练集包括两个类别,各有一个数据表如下:
表1 c1类:个人信息
姓名 地址
张三 朝阳路
李四 人民路
王五 文化路
朱六 学院路
赵七 李宁路
表2 c2类:企业信息
企业名 地址
中安威士 中关村南大街
奇虎科技 望京街道
百度科技 西二旗
新浪科技 中关村
阿里集团 杭州
将每个类别的两个字段内容全部合并得到字段集合,视为一个大文件。在训练阶段需要计算每个语义项对各个类别的条件概率,作为分类模型。
类别为:C={个人信息,企业信息};
字段总数为N=4,字典大小为54,c1、c2总字数分别为25、38。
先验概率pr(c1)=2/4=0.5,pr(c2)=2/4=0.5;
分别对两个类别中的所有单字进行概率计算,比如:
pc[张|c1]=(1+1)/(25+54)=0.025;
pc[张|c2]=(0+1)/(38+54)=0.01;
pc[李|c1]=(1+1)/(25+54)=0.025;
pc[李|c2]=(0+1)/(38+54)=0.01;
……
最后,得到一张字与类别的条件概率表,也就是分类模型。如下所示:
表3条件概率表
个人信息 企业信息
0.025 0.01
0.025 0.01
…… …… ……
在分类阶段,根据这个概率表,对待分类字段、表、或者记录中出现的每一个字,计算所属类别的可能性。
假设有两个只有一条记录的待分类表:[张良,学院路]与[安信科技,北京]。
使用上述模型进行类型判别,分别为:
1)对于[张良,学院路],其在两个类别上的相关概率为:
pc[张|c1]=0.025;pc[张|c2]=0.01;
pc[良|c1]=0.01;pc[良|c2]=0.01;
pc[学|c1]=0.025;pc[学|c2]=0.01;
pc[院|c1]=0.025;pc[院|c2]=0.01;
pc[路|c1]=0.063;pc[路|c2]=0.01;
计算其在两个类别上的得分:
s[c1]=log(pc[张|c1])+log(pc[良|c1])+log(pc[学|c1])+log(pc[院|c1])+log(pc[路|c1])+log(pr[c1])
=log(0.025)+log(0.01)+log(0.025)+log(0.025)+log(0.063)+log(0.5)
=-1.602-2-1.602-1.201-0.301=-8.308
s[c2]=log(pc[张|c2])+log(pc[良|c2])+log(pc[学|c2])+log(pc[院|c2])+log(pc[路|c2])+log(pr[c2])
=log(0.01)+log(0.01)+log(0.01)+log(0.01)+log(0.01)+log(0.5)
=-2-2-2-2-2-0.301=-10.301
分类结果:由于s[c1]>s[c2],所以[张良,学院路]的分类结果为c1,即个人信息。
2)对于[安信科技,北京],其相关概率为:
pc[安|c1]=0.01;pc[安|c2]=0.01;
pc[信|c1]=0.01;pc[信|c2]=0.01;
pc[科|c1]=0.01;pc[科|c2]=0.043;
pc[技|c1]=0.01;pc[技|c2]=0.043;
pc[北|c1]=0.01;pc[北|c2]=0.01;
pc[京|c1]=0.01;pc[京|c2]=0.01
计算其在两个类别上的得分:
s[c1]=log(pc[安|c1])+log(pc[信|c1])+log(pc[科|c1])+log(pc[技|c1])+log(pc[北|c1])+log(pc[京|c1]) +log(pr[c1])
=log(0.01)+log(0.01)+log(0.01)+log(0.01)+log(0.01)+log(0.01)+log(0.5)
=-2-2-2-2-2-2-0.301=-12.308
s[c2]=log(pc[安|c2])+log(pc[信|c2])+log(pc[科|c2])+log(pc[技|c2])+log(pc[北|c2])+log(pc[京|c2]) +log(pr[c2])
=log(0.01)+log(0.01)+log(0.043)+log(0.043)+log(0.01)+log(0.01)+log(0.5)
=-2-2-1.367-1.367-2-2-0.301=11.035
分类结果:由于s[c2]>s[c1],所以[安信科技,北京]的分类结果为c2,即企业信息。
本发明使用单汉字或者单词为语义单位作为分类特征,避免了特征在训练样本中的稀疏性问题;将类别所有字段内容连接为一个大文件进行处理;将贝叶斯概率计算用于该分类问题,特别是将字段的先验概率、1-gram的类别条件概率作为计算概率的主要变量;训练过程中生成先验概率和条件概率;分类中使用对数运算实现得分的相加,提高了识别准确率,省去了人工设置数据识别规则的时间,工作耗时短,运行效率较高。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。虽然以上结合附图描述了本发明的具体实施方式,但是本领域普通技术人员应当理解,这些仅是举例说明,可以对这些实施方式做出多种变形或修改,而不背离本发明的原理和实质。本发明的范围仅由所附权利要求书限定。

Claims (10)

1.一种用于文本类型数据识别的方法,其特征在于:包括以下步骤:
S1、获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
S2、构建训练集,训练集为步骤S1中的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
S3、将步骤S2提取的特征输入bayes分类器进行训练;
S4、对待识别的数据表按照步骤S1-S2进行特征的提取,然后将提取的特征输入分类器中进行识别,分类器输出分类识别结果。
2.根据权利要求1所述的用于文本类型数据识别的方法,其特征在于:所述步骤S2中,进行基于字节的1-gram特征的提取的具体步骤如下:
S21、设步骤S1中的字段包括字节B1B2B3…BN,对字节B1B2B3…BN进行基于1-gram的字节级分词处理;
S22、对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
S23、计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
3.根据权利要求2所述的用于文本类型数据识别的方法,其特征在于,所述步骤S3进行分类器训练的具体步骤如下:
S31.给定的类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
S32.对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure FDA0002685433430000011
其中
Figure FDA0002685433430000012
为ci类中字段的数量;
S33.对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure FDA0002685433430000021
其中
Figure FDA0002685433430000022
为ri出现在ci类中的次数;
S34.输出训练结果:PR={pr[ci]},条件概率
Figure FDA0002685433430000023
4.根据权利要求3所述的用于文本类型数据识别的方法,其特征在于,所述步骤S4的具体步骤如下:
S41.对于待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
S42.计算先验概率对数,累计先验概率得分:s[ci]+=logpr[ci];
S43.对于d中的所有语义项ri,累计条件概率得分:s[ci]+=logpc[ri][ci];
S44.输出得分最大的类别为分类结果:arg max s[ci]。
5.一种用于文本类型数据识别的系统,其特征在于:包括获取模块、特征提取模块、分类器训练模块及分类器识别模块:
获取模块:用于获取数据表中的各个字段,将所有字段信息进行连接得到字段集合;
特征提取模块:用于构建训练集,训练集为获取模块得到的字段集合,对训练集中的字段集合进行基于字节的1-gram特征的提取;
分类器训练模块:用于将特征提取模块提取的特征输入bayes分类器进行训练;
分类器识别模块:用于对待识别的数据表,按照获取模块得到字段集合,然后特征提取模块进行特征的提取,最后将提取的特征输入分类器中进行识别,分类器输出分类识别结果。
6.根据权利要求5所述的用于文本类型数据识别的系统,其特征在于:特征提取模块包括分词模块、排序模块、第一计算模块:
分词模块:用于对获取模块得到的字段包括字节B1B2B3…BN进行基于1-gram的字节级分词处理;
排序模块:用于对字节B1B2B3…BN分词后的结果进行统计计数,将各计数按照从大到小进行排序,排名最前的编号为1,并记rank为1;随后的编号为2,并记rank为2;依此向下编号;
第一计算模块:用于计算字段的排名特征:
F-gram-rank(S)=rank(B1)+rank(B2)+rank(B3)+…+rank(Bn)。
7.根据权利要求5所述的用于文本类型数据识别的系统,其特征在于:分类器训练模块包括:词典建立模块、第二计算模块、第三计算模块、第一输出模块:
词典建立模块:给定类别集合为C={c1,c2,…,cm},m为类别的个数,给定的训练集为字段集合T={t1,t2,…,tN},N为字段总数,将训练集中的所有汉字单字和英文单词作为独立的语义项,组成字典V;
第二计算模块:用于对于C中的每一类别ci,对其中所有字段,计算先验概率
Figure FDA0002685433430000031
其中
Figure FDA0002685433430000032
为ci类中字段的数量;
第三计算模块:用于对所有字段中的语义项ri,计算其出现在ci类中的条件概率
Figure FDA0002685433430000033
其中
Figure FDA0002685433430000034
为ri出现在ci类中的次数;
第一输出模块:用于输出训练结果:PR={pr[ci]},条件概率
Figure FDA0002685433430000035
8.根据权利要求5所述的用于文本类型数据识别的系统,其特征在于,分类器识别模块包括第四计算模块、第五计算模块、第六计算模块、第二输出模块:
第四计算模块:用于对待分类的表或者字段d,对于每个类别ci,记其得分为s[ci]=0;
第五计算模块:用于计算先验概率对数,累计先验概率得分:s[ci]+=logpr[ci];
第六计算模块:用于对d中的所有语义项ri ri,累计条件概率得分:s[ci]+=logpc[ri][ci];
第二输出模块:用于输出得分最大的类别为分类结果:arg max s[ci]。
9.一种存储介质,其内部存储有计算机程序,其特征在于,所述计算机程序运行时执行权利要求1~4中任一所述的方法。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
CN202010974941.0A 2020-09-16 2020-09-16 用于文本类型数据识别的方法、系统及存储介质 Pending CN112084308A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010974941.0A CN112084308A (zh) 2020-09-16 2020-09-16 用于文本类型数据识别的方法、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010974941.0A CN112084308A (zh) 2020-09-16 2020-09-16 用于文本类型数据识别的方法、系统及存储介质

Publications (1)

Publication Number Publication Date
CN112084308A true CN112084308A (zh) 2020-12-15

Family

ID=73737262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010974941.0A Pending CN112084308A (zh) 2020-09-16 2020-09-16 用于文本类型数据识别的方法、系统及存储介质

Country Status (1)

Country Link
CN (1) CN112084308A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032494A (zh) * 2021-03-08 2021-06-25 浙江大华技术股份有限公司 一种数据表分类、模型训练方法、装置、设备及介质
CN113822021A (zh) * 2021-08-23 2021-12-21 太原市高远时代科技有限公司 一种实现测试用例文件格式转换的方法及系统
CN115017270A (zh) * 2022-08-08 2022-09-06 广东电网有限责任公司佛山供电局 一种基于工作票识别的机房布控方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391772A (zh) * 2017-09-15 2017-11-24 国网四川省电力公司眉山供电公司 一种基于朴素贝叶斯的文本分类方法
CN109165294A (zh) * 2018-08-21 2019-01-08 安徽讯飞智能科技有限公司 一种基于贝叶斯分类的短文本分类方法
CN109299357A (zh) * 2018-08-31 2019-02-01 昆明理工大学 一种老挝语文本主题分类方法
CN109299255A (zh) * 2018-09-12 2019-02-01 东莞数汇大数据有限公司 基于朴素贝叶斯的案件文本分类方法、系统和存储介质
CN109902173A (zh) * 2019-01-31 2019-06-18 青岛科技大学 一种中文文本分类方法
CN109934251A (zh) * 2018-12-27 2019-06-25 国家计算机网络与信息安全管理中心广东分中心 一种用于小语种文本识别的方法、识别系统及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391772A (zh) * 2017-09-15 2017-11-24 国网四川省电力公司眉山供电公司 一种基于朴素贝叶斯的文本分类方法
CN109165294A (zh) * 2018-08-21 2019-01-08 安徽讯飞智能科技有限公司 一种基于贝叶斯分类的短文本分类方法
CN109299357A (zh) * 2018-08-31 2019-02-01 昆明理工大学 一种老挝语文本主题分类方法
CN109299255A (zh) * 2018-09-12 2019-02-01 东莞数汇大数据有限公司 基于朴素贝叶斯的案件文本分类方法、系统和存储介质
CN109934251A (zh) * 2018-12-27 2019-06-25 国家计算机网络与信息安全管理中心广东分中心 一种用于小语种文本识别的方法、识别系统及存储介质
CN109902173A (zh) * 2019-01-31 2019-06-18 青岛科技大学 一种中文文本分类方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032494A (zh) * 2021-03-08 2021-06-25 浙江大华技术股份有限公司 一种数据表分类、模型训练方法、装置、设备及介质
CN113822021A (zh) * 2021-08-23 2021-12-21 太原市高远时代科技有限公司 一种实现测试用例文件格式转换的方法及系统
CN113822021B (zh) * 2021-08-23 2024-03-01 太原市高远时代科技有限公司 一种实现测试用例文件格式转换的方法及系统
CN115017270A (zh) * 2022-08-08 2022-09-06 广东电网有限责任公司佛山供电局 一种基于工作票识别的机房布控方法及系统

Similar Documents

Publication Publication Date Title
CN107045496B (zh) 语音识别后文本的纠错方法及纠错装置
CN109101477B (zh) 一种企业领域分类及企业关键词筛选方法
CN112084308A (zh) 用于文本类型数据识别的方法、系统及存储介质
CN106599054B (zh) 一种题目分类及推送的方法及系统
CN108664474B (zh) 一种基于深度学习的简历解析方法
CN108628822B (zh) 无语义文本的识别方法及装置
CN110851598A (zh) 文本分类方法、装置、终端设备及存储介质
CN111177532A (zh) 一种垂直搜索方法、装置、计算机系统及可读存储介质
CN110134777B (zh) 问题去重方法、装置、电子设备和计算机可读存储介质
CN112883730B (zh) 相似文本匹配方法、装置、电子设备及存储介质
CN109446299B (zh) 基于事件识别的搜索电子邮件内容的方法及系统
US20160283582A1 (en) Device and method for detecting similar text, and application
CN114266256A (zh) 一种领域新词的提取方法及系统
CN110705281B (zh) 一种基于机器学习的简历信息抽取方法
Gupta et al. SMPOST: parts of speech tagger for code-mixed indic social media text
CN113987125A (zh) 基于神经网络的文本结构化信息提取方法、及其相关设备
CN109344233B (zh) 一种中文人名识别方法
CN110489759B (zh) 基于词频的文本特征加权及短文本相似性计算方法、系统和介质
CN106776724B (zh) 一种题目分类方法及系统
CN110705285B (zh) 一种政务文本主题词库构建方法、装置、服务器及可读存储介质
CN111985212A (zh) 文本关键字识别方法、装置、计算机设备及可读存储介质
CN109947932B (zh) 一种推送信息分类方法及系统
Swapna et al. Impact of stemming on telugu text classification
CN111538805A (zh) 一种基于深度学习和规则引擎的文本信息抽取方法及系统
CN113900995A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201215

RJ01 Rejection of invention patent application after publication