CN111400449B - 一种正则表达式抽取方法及装置 - Google Patents
一种正则表达式抽取方法及装置 Download PDFInfo
- Publication number
- CN111400449B CN111400449B CN202010171848.6A CN202010171848A CN111400449B CN 111400449 B CN111400449 B CN 111400449B CN 202010171848 A CN202010171848 A CN 202010171848A CN 111400449 B CN111400449 B CN 111400449B
- Authority
- CN
- China
- Prior art keywords
- regular expression
- characters
- matching degree
- regular
- total number
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种正则表达式抽取方法,包括:将待抽取属性值的目标文本进行预处理,得到字符文本;获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数;依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数;根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
Description
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种正则表达式抽取方法及装置。
背景技术
面对现今互联网上已发布的海量信息,其中包含了丰富的有价值的数据,也涵盖了大量的虚假信息。如何从互联网发布的信息中提取关键信息便是属性值抽取任务的内容范畴。实体属性和属性值是描述实体内在本质的必要信息,例如特征人物的姓名,性别,商品的保质期,生成厂家与构成成分等,这些信息的属性值对于知识图谱的创建,智能问答系统与推荐系统的建立等多种智能应用都是必要的元素。因此近些年来对于属性值抽取任务,大量研究人员投身于该研究之中,取得了很大的进展。其中一些研究工作为了简化抽取,会在限定条件下进行属性值抽取共工作,限定条件包括特定的领域范围,特定类别的实体,特定类别的属性值等。此外,根据人工参与的程度不同,可将实体属性值抽取的方法大致分为三个类别:
第一大类别是以模式匹配为主的无监督方法,在第一类方法中,基于词汇句法的模式匹配方法和基于依存路径的模式受到较多研究人员的关注,使用范围广泛,对属性值的抽取具有良好的效果。其中,基于词汇句法的模式匹配方法是根据实体和属性信息的分布规律,由人工总结编写大量的关于规律的正则表达式,并使用正则表达式作为抽取属性值的触发词,匹配抽取出文本信息中的关键属性值。例如:“奥巴马的国籍是美国”的句法模式是:“某实体人物的国籍是某属性值”,故可编辑正则表达是为“./国籍是(./?)”,此种方式是目前使用最广泛,效率最高的属性值抽取模式。而基于依存路径的模式是把各个描述实体属性的语句做依存关系解析,然后挑选出实体与属性名称的依存关系,它的实质是词语和依存关系组合在一起的字符串,将其作为匹配模式。
对于第一大类以模式匹配为主的无监督方法,尽管这一类方法得到了广泛使用,但是在构建模式系统的过程中,需要耗费大量的人力资源去总结归纳语言的语法规律,进而编写大量的正则表达式构成模式匹配系统,并且每次从文本中抽取一句话进行所有的正则表达式匹配来抽取关键的属性值,由于模式系统中的每一条正则表达式都会对一句话返回一条属性值的抽取结果,大量的冗余信息存在于抽取结果当中,其中包含一条较为合理的属性值抽取结果。所以对抽取获得的结果还需要另外的过滤筛选,仅保留其中一条较为合理的抽取结果。以上所述的内容即是第一类方法的劣势,简单的讲,若想使用该方法达到比较好的效果,需要对句法的分析,编写正则表达式的规模有较高的要求,抽取的结果也会出现的冗余数据,真实有效数据相对较少,这也导致数据的稀疏问题。为了解决这些问题,一些研究工作者提出一种新颖的方案,通过借助搜索引擎利用网络数据的冗余性来提高抽取性能评估的召回率,但是采用搜索引擎的查询限定也制约了实际应用。
第二大类方法是以训练学习模型为主的监督方法,第二类方法是采用有监督的机器学习方法,该方法主要是结合统计机器学习和深度学习技术。对于结合了统计机器学习技术的有监督属性值抽取方法,该类技术的通用思想是利用机器学习模型对每个属性值进行训练,进而能够识别特定属性的属性值内容,常用的机器学习模型有:支持向量机模型(SVM),隐马尔可夫模型(HMM),条件随机场模型(CRF),最大熵模型(MaxEnt)。相关研究人员对以上介绍提到的常用模型在属性值抽取任务执行的效果做了对比实验,实验过程严格控制特征条件的恒定性,即特征条件不随模型的更改而变化。最终的分析结果表明,运用HMM模型的性能效果较差,其他模型的性能并无明显差异。对于结合了深度学习技术的有监督属性值抽取方法主要可以分成两个类别,即是深度神经网络(DNN)和长短期记忆网络(LSTM)。由于自然语言常以时间轴为主线展开描述,而长短期记忆网络属于序列模型,非常适合处理含有时间特征的文本。因此,很多研究人员使用长短期记忆网络来做属性值抽取任务,并取得了很好的效果。例如以下举例的几个典型的研究现状,Liu等人提出一种基于注意力机制的循环神经网络模型,并将对其信息融合到模型中,提高属性抽取性能。后来随之自然语言处理技术的发展,Yao等人利用Word2Vec模型获取词向量表示,作为循环神经网络模型的输入,进而在中文语料中抽取人物的属性信息。
对于第二类使用机器学习方法,其缺陷也较为明显,它需要人工定义特征,这种做法一方面增加了人工成本,另一方面特征集难以覆盖所有实例,降低了抽取性能。得到的属性值的准确率比较低,建立模型的鲁棒性弱。基于分类器的方法,它依赖多文本间的语义相似度,将内容相似的文本归为一类,给出对于该类文本的某些常见的属性触发词,作为该类别的固定的抽取方式。它的不足之处在于分类器的生成过程,需要大量的人工标注的训练语料,抽取结果的好坏不仅取决于人工标注的训练语料的规模,而且依赖人工标注的语料的准确性。
第三类方法是通过自动构建训练语料而产生的弱监督方法,第三类方法是以自动构建训练语料而产生的弱监督机器学习方法,现有的研究中,Wu等人利用维基百科信息框中的属性信息,从正文中回标语句,来自动构建训练语料,然后训练CRF模型抽取属性值。Probst等人将属性值抽取转化为分类问题,并利用词汇短语间的互信息,制定启发式规则,进而获取包含属性值和属性名的文本片段,并结合预构建的属性值词典自动标注数据,作为朴素贝叶斯分类器的训练语料,并提出一种半监督的co-EM算法来提高分类效果。
对于第三类方法中,自动构建训练语料的弱监督机器学习方法虽然降低了标注数据的成本,但是需要机器自动学习获取训练语料的标签信息。一般而言,机器执行标注的标签信息的准确率要低于人工标记的结果,因此,使用混合了机器标注信息的训练集去学习得到的模型,其性能要比在第二种方法中学习获得的模型性能要低许多。这样低性能的模型最终也必将导致属性值抽取结果的准确性相对降低。
因此,目前市面上亟需一种可以针对待提取属性值的语句,在该语句相关的语法规则表达式集合中,程序化地自动识别挑选出最适合用于抽取该条语句包含的属性值所对应的正则表达式的抽取方法。
发明内容
本发明提供了一种正则表达式抽取方法,可以针对待提取属性值的目标文本,在预设的多个正则表达式中,自动识别挑选出最适合用于抽取该目标文本包含的属性值所对应的最优正则表达式。
为了解决上述技术问题,本发明实施例提供了一种正则表达式抽取方法,包括:
将待抽取属性值的目标文本进行预处理,得到字符文本;
获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数;
依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数;
根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;
根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
作为优选方案,所述将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
作为优选方案,所述计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
作为优选方案,所述选择匹配度最高的正则表达式的数量为两个;即,选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
本发明实施例还提供了一种正则表达式抽取装置,包括:
预处理模块,用于将待抽取属性值的目标文本进行预处理,得到字符文本;
字符总数模块,用于获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数;
匹配总数模块,用于依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数;
匹配度计算模块,用于根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;
表达式选择模块,用于根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
作为优选方案,所述预处理模块用于将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
作为优选方案,所述匹配度计算模块用于计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
作为优选方案,所述表达式选择模块用于选择匹配度最高的正则表达式的数量为两个;即,表达式选择模块具体用于选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如上述任一项所述的正则表达式抽取方法。
本发明实施例还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如上述任一项所述的正则表达式抽取方法。
相比于现有技术,本发明实施例具有如下有益效果:
使用本发明可以针对待提取属性值的目标文本,在预设的多个正则表达式中,自动识别挑选出最适合用于抽取该目标文本包含的属性值所对应的最优正则表达式,以使工作人员只需要将筛选出来的最优正则表达式放入抽取程序中,则可生成目标文本所对应的属性值结果,提高了抽取效率和提升了结果准确度。
附图说明
图1:为本发明实施例中的正则表达式抽取方法的步骤流程图;
图2:为本发明实施例中的正则表达式抽取装置的结构示意图;
图3:为现有技术中的执行属性值抽取任务的传统方法流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,本发明优选实施例提供了一种正则表达式抽取方法,包括:
S1,将待抽取属性值的目标文本进行预处理,得到字符文本;在本实施例中,所述将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
S2,获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数。
S3,依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数。
S4,根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;在本实施例中,所述计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
S5,根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。在本实施例中,所述选择匹配度最高的正则表达式的数量为两个;即,选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
通过使用本发明可以针对待提取属性值的目标文本,在预设的多个正则表达式中,自动识别挑选出最适合用于抽取该目标文本包含的属性值所对应的最优正则表达式,以使工作人员只需要将筛选出来的最优正则表达式放入抽取程序中,则可生成目标文本所对应的属性值结果,提高了抽取效率和提升了结果准确度。
下面结合具体实施例,对本发明进行详细说明。
如图1所示,对于同目标属性值相关的模式匹配集合中的规则,使用变量i表示模式集合中的第i条规则,使用变量pi表示该集合中规则数目的总数,变量ni表示第i条规则中所有字符的数量,变量mi对于每一条规则,初始值置为0,该变量的作用是统计规则式中的字符在待抽取文本中出现的匹配数目,即遍历规则式中的每个字符,将其和待抽取文本做比较,每个字符若在待抽取文本中出现,则匹配数目变量mi加1,遍历一个规则式中的所有字符后,便可得到该规则式与待抽取文本的匹配字符总数mi。cij即表示第i个规则式中的第j个字符,该字符变量的作用是为了便于理解规则式中的字符与遍历待抽取文本中的文字过程。变量si=mi/ni,si即是匹配度概念,它表示第i个规则式与待抽取文本的匹配度数值,取值区间在[0,1],数值越趋近1说明第i个规则式对于该文本的抽取属性值工作越合适。
对于待抽取属性值的文本执行分句,分词等数据预处理的基本操作,以便后续使用模式匹配法可以方便地识别出待抽取文本中的触发词。在第二步中对引入一些变量,并初始化这些变量的初值。然后开始进行遍历计算目标属性值相关的模式匹配集合中的每个模式与待抽取属性值语句的匹配度。
匹配度计算方法:从模式集合中依次取出第i条模式规则,统计规则中的中文字符数量为ni,将规则中的每个中文字符与待抽取语句匹配比较,若规则中的中文字符在语句中出现,匹配字数mi加一,遍历规则中的每个中文字符,遍历结束后,匹配度si=mi/ni,将该数值存储到匹配度列表L中,对匹配度列表L中的数值做比较,选出匹配度数值较大的前两个数值,并找到对应的正则表达式作为待抽取语句最适合的模式规则,将挑选出的模式规则放入后续的抽取工作中,可快速得到准确的结果。
其中,匹配比较是完全一样,指规则中的一个字符和待抽取语句中的所有文字比较,在待抽取语句中是否出现过相同的字符,重复这个步骤,循环遍历规则中的所有字符。判断匹配方法的实质是查看两个字符是否相等,即采用判断语句,若两个字符相等,即该规则中的一个字符和待抽取语句是匹配的,若两个字符不相同,则该规则中的一个字符和带抽取语句不匹配。
应当说明的是,选择匹配度最高的正则表达式的数量是不受限制的,可以选择一个或两个数值等等。每个数值都对应了一个规则与待抽取语句的匹配度,即对应着一个规则式。在优选实施例中使用两个数值,即是为了使用两个规则式去做抽取工作。理论上,使用一个匹配度数值最高的规则式做抽取工作即可得到最好的结果,但是谨慎起见,为避免出现一些未考虑周全的情况,使用两个较好的规则式,以避免匹配度数值最高的规则式做提取工作时出现意外情况。若两个匹配度数值较高的规则式都无法获得很好的抽取结果,原因可以归结为规则式集合不完善,而不是因为抽取工作本身的问题。
本发明技术方案针对说明书背景技术中提到的第一类常见的属性值抽取方法进行改进,本发明技术方案可以针对需要抽取属性值的语句,在人工编辑完善的大量正则表达式集合中挑选出最适合用于该语句抽取属性值的正则表达式。然后在后续的提取属性值的任务中,只需要将挑选出来的正则表达式放入相应的抽取属性值程序中,最终将生成一个较为准确的抽取结果。而通常应用第一类方法的过程,是把所有的正则表达式集合中的匹配式逐条放入属性值抽取程序中,程序会对每一条抽取匹配式输出相应的属性值抽取结果,生成大量的抽取结果,工作人员对大量的结果还需要进行过滤筛选,最终选择一条最合理的抽取信息作为该语句抽取获得的最终结果。综上所述,使用本发明可以针对待提取属性值的语句,在该语句相关的语法规则表达式集合中,程序化地自动识别挑选出最适合用于抽取该条语句包含的属性值的正则表达式,然后只需要将筛选出来的这一条匹配规则式放入抽取程序中,最终只生成一条最好的属性值结果,无需一般方法中对多个属性值结果的过滤筛选等附加工作,提高抽取效率和结果准确度。
相应地,请参照图2,本发明实施例还提供了一种正则表达式抽取装置,包括:
预处理模块,用于将待抽取属性值的目标文本进行预处理,得到字符文本;在本实施例中,所述预处理模块用于将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
字符总数模块,用于获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数。
匹配总数模块,用于依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数。
匹配度计算模块,用于根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;在本实施例中,所述匹配度计算模块用于计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
表达式选择模块,用于根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。在本实施例中,所述表达式选择模块用于选择匹配度最高的正则表达式的数量为两个;即,表达式选择模块具体用于选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
为了进一步体现本发明技术方案的优点,下面对现有技术中的执行属性值抽取任务的传统方案进行描述:
在自然语言处理领域中,处理非结构化文本以形成便于计算机存储的结构化数据一直是长期探索的难题。解决这个问题,常常需要从纯文本数据中提取出关键的属性值数据,大量的科研工作者对该属性值抽取问题进行了深入研究,现已形成一套较为通用合理的方法流程。在整个非结构化数据转化为结构化数据的过程中,属性值抽取工作是一个关键的任务,抽取结果的质量直接决定了最终生成结构化数据的质量。
如图3所示,具体为:(1)文本预处理:在第一阶段的过程中,我们首先需要从网页上获取相关的中文百科文本,然后对百科的文章进行分句、分词、词性标注和实体标注等自然语言的预处理过程,以方便后续进行的分析工作。(2)属性名抽取:在第二阶段的过程中,我们把属性值当作命名实体,使用诸如K元模式提取等频繁模式挖掘方法,进一步处理并分析命名实体标注与部分词项间的关联信息。通过分析关联信息的结果,我们将某些与命名实体的关联性很强的词语或者短语定义为属性。(3)触发词提取:在第三阶段的过程中,对于第二阶段中定义的属性,考虑采用自扩展的方法获取属性的触发词。(4)模式挖掘:在第四阶段的过程中,根据上一阶段获取的属性触发词,并结合含有属性值的尸体标注的句子,从中挖掘属性值抽取模式。通过聚类等方法过滤可信度低的模式。(5)属性值抽取:在第五阶段的过程中,根据上一阶段挖掘获取的高质量的属性值抽取模式,应用于文本的句子分析,从而获取属性值。
针对以上流程图中第五阶段的属性值抽取任务,本发明技术对该研究点的通用方法进行改进提高。属性值抽取任务的通用方法在以上现有技术部分已进行详细介绍。简单的讲,该任务的处理方法可分为传统属性值抽取方法和新兴的属性值抽取方法两大类,传统方法主要包括模式匹配方法,基于机器学习的分类器方法和使用第三方结构化知识库方法;新兴方法即是伴随计算机存储能力和运算能力的提升而大方光彩的深度学习方法。本发明技术针对模式匹配方法做属性值抽取工作进行改进,通用方法使用与目标属性值相关的正则表达式集合,在对待抽取属性值语句进行抽取的过程中遍历集合中的每一条匹配规则式,输出获得多条属性值结果,其中大部分结果都重复冗余或只有残缺信息。使用本发明技术,可以在数据预处理阶段中,从模式匹配集合中挑选出适合待抽取属性值文本的模式,在后续抽取过程中,不用遍历模式集合中的每个模式去做抽取工作,只需使用挑选出来的模式去做抽取即可获得准确高效的抽取结果。
本发明与现有技术方案的区别在于:在属性值抽取工作结合该发明技术,可以解决一般属性值抽取工作中正则表达式集合的大规模性带来的抽取结果冗余且难以过滤筛选出最佳抽取结果的难题。而对于通常基于模式匹配的属性值抽取方法,由于没有对正则表达式集合中的各个规则式进行判别筛选等处理工作便全部放到抽取程序中,抽取结果必然会导致大量的重复冗余信息以及抽取信息残缺不完整等情况出现。此外,基于本发明提出的正则表达式与待提取属性值的文本的匹配度概念,对该概念定义的内容可以进一步拓展或者使用其他的方法对该匹配度概念进行更合理更科学地定义,使得挑选出来的正则表达式对待抽取属性值的文本的代表性更强,从而提高抽取结果的精度和效率。故基于本发明技术可以深层次的挖掘,思考进一步的改良方案,以便在属性值抽取过程张呈现更好的性能效果。因此,使用本发明技术可以有效地提高属性值抽取任务的效率,简化后续人工对属性值抽取结果的筛选过滤工作。
可见,通过上述与现有技术的对比,本发明技术方案的优点在于:
1.对于第一类常用的属性值抽取方法,本发明可以提高属性值抽取工作的效率和精度。一般来讲,使用第一类属性值抽取方法需要使用大量的正则表达式去匹配抽取,获得的结果包含大量的冗余重复信息,只有少数条目信息属于属性值抽取的较为准确的结果。因此第一类方法需要后续进行过滤筛选工作。而本发明的创新点是在数据预处理过程中引入了一个匹配度的概念。具体的定义方法如下,对每条待抽取的语句,和与其相关的正则表达式集合中的每条正则表达式做匹配度计算。匹配度的计算方法是将每条正则表达式的每个字符逐一与待抽取语句中的每个字符做比较,若待抽取语句中存在该字符,则规定一个用于计数器的变量加一,将正则表达式中的每个字符和语句中的所有字符做完对比后,使用计数器变量的迭代值除以正则表达式中字符的总数,便可以算出一个取值区间在0至1区间的小数,将该数值的含义定义为这一条正则表达式相对于该条语句的匹配度。将与该语句相关的正则表达式集合中每条正则表达式都计算出与该语句相关的一个匹配度数值,存储一个列表当中,对这个列表中数值大小进行比较,取出数值较大的两个匹配度对应的正则表达式,它们便是对该语句的某一特定属性值抽取任务最合适的正则匹配模式,将其放入到抽取程序,便可得到较为准确的属性值抽取结果。
2.本发明对于属性值抽取工作的准确度提升提出了一个全新的改进方案,相关研究人员可以遵从本发明提出的匹配度概念,进一步改善匹配度的定义内容,使该匹配度的概念能够更加贴切符合该条正则表达式与待抽取语句的紧密程度。由此进一步做匹配度对比,筛选出匹配度最高的正则表达式去做抽取工作,最终会得到更加精准的抽取结果。
3.本发明通过提出的正则表达式与待提取文本的匹配度的概念,解决了一般抽取工作中正则表达式集合的大规模性带来的抽取结果冗余且难以过滤筛选出最佳抽取结果的难题。并且正则表达式集合的规模数量越大,本发明的作用体现得越明显。因为正则表达式集合越大,说明该集合包含的语法情况越丰富,涵盖的语句表达范围越广泛,这样的大规模集合中的模式元素更有可能满足待抽取语句的语法规则,使得抽取结果中必然出现最合适的抽取结果。然后再结合本发明的技术,一定能够在抽取工作之前将集合中最符合待抽取语句的模式给筛选出来,使得后续的抽取过程能够直接得出精确的抽取结果,不需要再进行筛选过滤工作。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行上述任一实施例所述的正则表达式抽取方法。
本发明实施例还提供了一种终端设备,所述终端设备包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现上述任一实施例所述的正则表达式抽取方法。
优选地,所述计算机程序可以被分割成一个或多个模块/单元(如计算机程序、计算机程序),所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,通用处理器可以是微处理器,或者所述处理器也可以是任何常规的处理器,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接所述终端设备的各个部分。
所述存储器主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等,数据存储区可存储相关数据等。此外,所述存储器可以是高速随机存取存储器,还可以是非易失性存储器,例如插接式硬盘,智能存储卡(SmartMedia Card,SMC)、安全数字(Secure Digital,SD)卡和闪存卡(Flash Card)等,或所述存储器也可以是其他易失性固态存储器件。
需要说明的是,上述终端设备可包括,但不仅限于,处理器、存储器,本领域技术人员可以理解,上述终端设备仅仅是示例,并不构成对终端设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种正则表达式抽取方法,其特征在于,包括:
将待抽取属性值的目标文本进行预处理,得到字符文本;
获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数;
依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数;
根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;
根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
2.如权利要求1所述的正则表达式抽取方法,其特征在于,所述将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
3.如权利要求1所述的正则表达式抽取方法,其特征在于,所述计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
4.如权利要求1所述的正则表达式抽取方法,其特征在于,所述选择匹配度最高的正则表达式的数量为两个;即,选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
5.一种正则表达式抽取装置,其特征在于,包括:
预处理模块,用于将待抽取属性值的目标文本进行预处理,得到字符文本;
字符总数模块,用于获取多个正则表达式,并对每个正则表达式的字符数进行统计,得到每个正则表达式所对应的字符总数;
匹配总数模块,用于依次将每个正则表达式中的字符与所述字符文本中的字符进行逐一匹配,统计每个正则表达式与所述字符文本中的字符匹配相同的字符数,得到每个正则表达式所对应的匹配总数;
匹配度计算模块,用于根据所述每个正则表达式所对应的字符总数和所述每个正则表达式所对应的匹配总数,计算得到每个正则表达式所对应的匹配度;
表达式选择模块,用于根据所述每个正则表达式所对应的匹配度的数值大小,选择匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
6.如权利要求5所述的正则表达式抽取装置,其特征在于,所述预处理模块用于将待抽取属性值的目标文本进行预处理的步骤,包括:将待抽取属性值的目标文本进行分句和分词处理。
7.如权利要求5所述的正则表达式抽取装置,其特征在于,所述匹配度计算模块用于计算得到每个正则表达式所对应的匹配度的步骤,具体为:计算所述匹配总数与所述字符总数的比值,作为每个正则表达式所对应的匹配度数值。
8.如权利要求5所述的正则表达式抽取装置,其特征在于,所述表达式选择模块用于选择匹配度最高的正则表达式的数量为两个;即,表达式选择模块具体用于选择两个匹配度最高的正则表达式作为所述目标文本的最优正则表达式。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如权利要求1~4任一项所述的正则表达式抽取方法。
10.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如权利要求1~4任一项所述的正则表达式抽取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010171848.6A CN111400449B (zh) | 2020-03-12 | 2020-03-12 | 一种正则表达式抽取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010171848.6A CN111400449B (zh) | 2020-03-12 | 2020-03-12 | 一种正则表达式抽取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400449A CN111400449A (zh) | 2020-07-10 |
CN111400449B true CN111400449B (zh) | 2023-05-02 |
Family
ID=71430710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010171848.6A Active CN111400449B (zh) | 2020-03-12 | 2020-03-12 | 一种正则表达式抽取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400449B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510922B (zh) * | 2022-04-15 | 2022-07-05 | 北京沃丰时代数据科技有限公司 | 一种文本匹配方法及装置 |
CN115130023A (zh) * | 2022-07-08 | 2022-09-30 | 阿里巴巴(中国)有限公司 | 正则表达式生成方法、装置、设备和存储介质 |
CN115438198B (zh) * | 2022-11-07 | 2023-03-31 | 四川大学 | 一种基于知识库的可解释性医疗数据结构化方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326363A (zh) * | 2016-08-11 | 2017-01-11 | 海信集团有限公司 | 一种基于正则表达式的匹配方法及装置 |
CN107608949A (zh) * | 2017-10-16 | 2018-01-19 | 北京神州泰岳软件股份有限公司 | 一种基于语义模型的文本信息抽取方法及装置 |
CN108182234A (zh) * | 2017-12-27 | 2018-06-19 | 中科鼎富(北京)科技发展有限公司 | 正则表达式筛选方法和装置 |
-
2020
- 2020-03-12 CN CN202010171848.6A patent/CN111400449B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326363A (zh) * | 2016-08-11 | 2017-01-11 | 海信集团有限公司 | 一种基于正则表达式的匹配方法及装置 |
CN107608949A (zh) * | 2017-10-16 | 2018-01-19 | 北京神州泰岳软件股份有限公司 | 一种基于语义模型的文本信息抽取方法及装置 |
CN108182234A (zh) * | 2017-12-27 | 2018-06-19 | 中科鼎富(北京)科技发展有限公司 | 正则表达式筛选方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111400449A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11989519B2 (en) | Applied artificial intelligence technology for using natural language processing and concept expression templates to train a natural language generation system | |
CN113011533B (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN107992597B (zh) | 一种面向电网故障案例的文本结构化方法 | |
CN110968699B (zh) | 一种基于事理推荐的逻辑图谱构建及预警方法和装置 | |
CN110321432B (zh) | 文本事件信息提取方法、电子装置和非易失性存储介质 | |
CN104699763B (zh) | 多特征融合的文本相似性度量系统 | |
CN111401058B (zh) | 一种基于命名实体识别工具的属性值抽取方法及装置 | |
Gao et al. | Convolutional neural network based sentiment analysis using Adaboost combination | |
CN111400449B (zh) | 一种正则表达式抽取方法及装置 | |
CN110633366B (zh) | 一种短文本分类方法、装置和存储介质 | |
CN110750635B (zh) | 一种基于联合深度学习模型的法条推荐方法 | |
CN112052684A (zh) | 电力计量的命名实体识别方法、装置、设备和存储介质 | |
Singh et al. | A decision tree based word sense disambiguation system in Manipuri language | |
CN110717045A (zh) | 一种基于信访信件概况的信件要素自动提取方法 | |
US11183175B2 (en) | Systems and methods implementing data query language and utterance corpus implements for handling slot-filling and dialogue intent classification data in a machine learning task-oriented dialogue system | |
CN113204967B (zh) | 简历命名实体识别方法及系统 | |
CN113806493A (zh) | 一种用于互联网文本数据的实体关系联合抽取方法、装置 | |
CN112989813A (zh) | 一种基于预训练语言模型的科技资源关系抽取方法及装置 | |
CN114238653A (zh) | 一种编程教育知识图谱构建、补全与智能问答的方法 | |
Quick | Learning production probabilities for musical grammars | |
CN116108191A (zh) | 一种基于知识图谱的深度学习模型推荐方法 | |
CN111178080A (zh) | 一种基于结构化信息的命名实体识别方法及系统 | |
CN114491079A (zh) | 知识图谱构建和查询方法、装置、设备和介质 | |
CN115017271B (zh) | 用于智能生成rpa流程组件块的方法及系统 | |
CN111813927A (zh) | 一种基于主题模型和lstm的句子相似度计算方法 |
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 |