CN111460170B - 一种词语识别方法、装置、终端设备及存储介质 - Google Patents

一种词语识别方法、装置、终端设备及存储介质 Download PDF

Info

Publication number
CN111460170B
CN111460170B CN202010231978.4A CN202010231978A CN111460170B CN 111460170 B CN111460170 B CN 111460170B CN 202010231978 A CN202010231978 A CN 202010231978A CN 111460170 B CN111460170 B CN 111460170B
Authority
CN
China
Prior art keywords
word
words
combined
calculating
node
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
CN202010231978.4A
Other languages
English (en)
Other versions
CN111460170A (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.)
Shenzhen Valueonline Technology Co ltd
Original Assignee
Shenzhen Valueonline 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 Shenzhen Valueonline Technology Co ltd filed Critical Shenzhen Valueonline Technology Co ltd
Priority to CN202010231978.4A priority Critical patent/CN111460170B/zh
Publication of CN111460170A publication Critical patent/CN111460170A/zh
Application granted granted Critical
Publication of CN111460170B publication Critical patent/CN111460170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • 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/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • 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)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Software Systems (AREA)
  • Character Discrimination (AREA)
  • Machine Translation (AREA)

Abstract

本申请实施例适用于信息技术领域,提供了一种词语识别方法、装置、终端设备及存储介质,所述方法包括:获取待处理的语料数据,所述语料数据中包含多个词语;根据所述多个词语,生成多种组合词;以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;分别计算每个终结节点对应的候选词的识别分数;根据所述识别分数,从所述候选词中识别出目标词。采用上述方法,可以提高新词识别的效率和准确率。

Description

一种词语识别方法、装置、终端设备及存储介质
技术领域
本申请属于信息技术领域,特别是涉及一种词语识别方法、装置、终端设备及存储介质。
背景技术
随着社交媒体及网络信息化的发展,很多网络热词应运而生。这些词往往比较口语化且没有规律可循。例如,“打call”、“口嫌体正直”和“万能杠律”等。如果没有先验知识,即使是人工筛选都很难将这些词语识别出来。除此之外,一些领域的专有名词也具有比较固定的组合特征。例如,金融领域就有“盘活存量”、“紧缩银根”和“呆滞贷款”等专有组合名词,计算机在进行分词等处理时也难以将这些词合并识别出来。
现有技术中,可以通过某些新词发现算法实现对部分词语的识别。目前,主流的新词发现算法主要可以分为两种:基于规则的方法和基于统计的方法。其中,基于规则的方法是利用词性特征和构词规则制定好模板,利用模板进行特征匹配进而发现新词。这种方法的准确率较高,但是可移植性和灵活性都较差,只能针对固定领域制定模板,难以扩展,并且需要大量的人工参与。而基于统计的方法则是利用大量的训练语料统计词语的统计特征,计算成词概率并提取候选新词。该方法较为灵活且可扩展,可移植性较好,但是准确率较低且受语料质量的影响较大。
发明内容
有鉴于此,本申请实施例提供了一种词语识别方法、装置、终端设备及存储介质,以解决现有技术中对部分词语的识别,效率或准确率较低的问题。
本申请实施例的第一方面提供了一种词语识别方法,包括:
获取待处理的语料数据,所述语料数据中包含多个词语;
根据所述多个词语,生成多种组合词;
以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;
分别计算每个终结节点对应的候选词的识别分数;
根据所述识别分数,从所述候选词中识别出目标词。
本申请实施例的第二方面提供了一种词语识别装置,包括:
获取模块,用于获取待处理的语料数据,所述语料数据中包含多个词语;
生成模块,用于根据所述多个词语,生成多种组合词;
构建模块,用于以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;
计算模块,用于分别计算每个终结节点对应的候选词的识别分数;
识别模块,用于根据所述识别分数,从所述候选词中识别出目标词。
本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的词语识别方法。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的词语识别方法。
本申请实施例的第五方面提供了一种计算机程序产品,当所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述第一方面所述的词语识别方法。
与现有技术相比,本申请实施例包括以下优点:
本申请实施例,基于左右熵与互信息计算词间的凝固程度和自由程度,提出了新词发现的算法,避免了因为切词错误而无法识别新词的问题;其次,本申请实施例通过使用字典树这一数据结构进行词间关系和词频的存储,可以利用字符的公共前缀降低开销,避免大量的无谓对比查询过程,对于大规模语料的加速效果非常显著;第三,对于候选词,本申请实施例通过共现次数对其做进一步筛选,并通过字符串间的比较进行新词去重,保证了新词发现的合理性。可用于信息分享系统、论坛互动系统、舆情分析系统、搜索引擎系统及专业领域文本挖掘系统等包含中文自然语言处理功能的各类系统中,实现新词发现的功能,保证分词及向量化过程的切词合理性,同时优化了数据的存储及查找方式;识别时无需过多预处理,即可满足海量语料的新词发现需求,提高了新词发现的效率和准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例的一种词语识别方法的步骤流程示意图;
图2是本申请一个实施例的另一种词语识别方法的步骤流程示意图;
图3是本申请一个实施例的一种字典树的示意图;
图4是本申请一个实施例的一种词语识别方法的算法流程示意图;
图5是本申请一个实施例的一种词语识别装置的示意图;
图6是本申请一个实施例的一种终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
新词发现在自然语言处理领域有着重要的作用,可以有效改善分词、向量化和信息检索等多种底层任务的处理效果。利用新词发现,可以得到候选的新词词集,在将新词词集加入分词算法的自定义词典中后,能够有效解决因切词错误导致的新词无法识别问题,并能改善N-gram(一种大词汇连续语音识别中常用的语言模型)方法导致的大量重复词串和新词识别错误的问题。因此,本申请实施例提出的基于左右熵和互信息的新词发现算法能够识别出固定语料中的新词,避免隐停用词和切词错误等导致的识别问题,有效提高分词、检索、向量化及其他机器学习任务的效率和准确率。
下面通过具体实施例来说明本申请的技术方案。
参照图1,示出了本申请一个实施例的一种词语识别方法的步骤流程示意图,具体可以包括如下步骤:
S101、获取待处理的语料数据,所述语料数据中包含多个词语;
需要说明的是,本方法可以应用于终端设备中,即本实施例的执行主体为终端设备。通过终端设备对语料数据进行处理,识别出该语料中包含的新词语。
本实施例中的新词语可以是指通过社交媒体或网络传播并较常出现的自造词,以及通过对一些已知的常用词进行搭配而获得的具有某种特殊含义的组合词,等等。
在本申请实施例中,待处理的语料数据可以是指通过网络爬虫或其他技术手段所获得的文章、新闻等包含多个词语的文本数据,本实施例对语料数据的具体类型不作限定。
S102、根据所述多个词语,生成多种组合词;
通常,通过将多个不同的词语按照一定的顺序进行搭配,便可获得一些具有某种含义的组合词。而对于包含多个词语的一份语料,每个词语与其左右相邻的数个词语能够进行搭配的可能性往往较高。
因此,在本申请实施例中,可以将上述语料数据中的每个词语与旁边的一个或两个其他词语搭配起来,从而得到多种组合词。
例如,对于某个词语,可以按语句的先后顺序,将在该词语前面的两个词语,以及在该词语后面的两个词语分别与该词语进行搭配,获得四种组合词。当然,在实际处理过程中,可以根据实际需要具体确定所要搭配的词语分别是哪些,本实施例对此不作限定。
在本申请实施例中,在对多个词语进行搭配获得多种组合词后,还可以根据词义识别,将一些明显不具有搭配可能性的组合词进行删除,减少后续处理的计算量。当然,由于某些新词本身的含义便是与惯常的理解不同,所以在处理时,也可以不删除任何组合词,而是对全部组合词均进行处理,降低误删新词的可能性。本实施例对此不作限定。
S103、以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;
字典树(Trie树)又被称为前缀树,是一种树状的数据结构,可用于字符串匹配和快速查找等处理过程中。它可以最大限度地减少无谓字符串的比较次数,提高词频统计和字符串排序的效率。其核心思想是通过构建树状结构,用空间换时间,利用字符串间的公共前缀来降低查询的开销。字典树一般具有如下三个特质:
1)根节点不包含字符,除根节点外每个节点只包含一个字符串;
2)从根节点到某一叶子节点,路径上所有字符串连起来,就是该节点对应的组合字符串;
3)每个节点的所有子节点包含的字符都不相同。
在本申请实施例中,对于已经获得的多种组合词,可以以词语为单位,将组合词中的每个词语依次存储至一条路径中的不同节点中。对于某个节点,该条路径上所有词语串联起来,就是该节点对应的组合词。
构建出的字典树包括多个终结节点,任一终结节点均可以单独成词。因此,在实际中,任一节点均可以作为字典树中的终结节点。
例如,对于某条路径,其最末尾的叶子节点可以是一个终结节点;或者,位于该路径中间的某个节点也可以是一个终结节点;甚至位于该路径起始位置的节点也可以是一个终结节点。当然,每条路径最后一层的节点必然是终结节点。
需要说明的是,每个终结节点对应的词语即是一个候选词,由于任一节点均可以作为字典树中的终结节点,因此上述候选词可以是组合词,也可以是非组合词,本实施例对此不作限定。
S104、分别计算每个终结节点对应的候选词的识别分数;
在本申请实施例中,每个终结节点对应的候选词的识别分数可以通过计算该词语的左右熵和/或互信息确定。
在具体实现中,每个候选词的识别分数可以单独由左右熵或者互信息中的一种来确定,也可以通过由左右熵和互信息两种确定,本实施例对此不作限定。
熵这一术语来自于信息论,用于度量变量之间的不确定性。左右熵的概念来源于信息熵,用于描述词间的自由程度。左右熵的值越大,说明和该词左右组合的词的数量越大,种类越丰富,也就说明该词不受左右组合词的限制,自由程度较大,成为一个独立词的可能性也就越大。
互信息则可以用于表示两个词语间的凝固程度,即两个词语间的相互依赖程度。互信息越大说明两个词语的相关性越大,凝固程度就越大,两个单独的词语组合成新词的可能性也就越大。
作为本实施例的一种示例,可以基于左右熵和互信息,确定一个候选词的识别分别。
在具体实现中,可以分别计算某个候选词的左熵、右熵以及互信息值,并将上述互信息值与左熵和右熵中相对较小的那个数值相加,从而得到该词语的识别分数。
S105、根据所述识别分数,从所述候选词中识别出目标词。
在本申请实施例中,在计算得到全部候选词的识别分数后,可以将识别分数超过某个阈值的那些词语识别为目标词,也就是前述语料数据中的新词。
在本申请实施例中,通过将待处理的语料数据包含的多个词语组合为多种组合词,并以词语为单位,构建包含上述多种组合词的字典树,使字典树中的任一终结节点对应一个候选词,在分别计算每个终结节点对应的候选词的识别分数后,可以根据识别分数,从候选词中识别出新的目标词。本申请实施例通过使用字典树这一数据结构进行词间关系和词频的存储,可以利用字符的公共前缀降低开销,避免了大量的无谓对比查询过程,对于大规模语料的加速效果非常显著;在构建出的字典树基础上,通过计算每个候选词的识别分数,提高新词识别的效率和准确率。
参照图2,示出了本申请一个实施例的另一种词语识别方法的步骤流程示意图,具体可以包括如下步骤:
S201、获取待处理的语料数据,所述语料数据中包含多个词语;
在本申请实施例中,待处理语料数据可以任意的文章、新闻等文本数据。通常,对于此类语料数据,在处理前还可以通过数据清洗等方式清洗掉一些对新词识别帮助不大的内容,如文本格式、标点符号、作者或日期信息等内容。
在具体实现中,对于待处理的语料数据,可以采用分词算法对语料进行粗略的分词。例如,通过结巴(jieba)分词对语料数据进行分词,得到多个词语。
S202、针对所述语料数据中的任一词语,将距离所述词语的词距小于预设切词数值的其他一个或多个词语与所述词语进行搭配,获得多种组合词;
在本申请实施例中,通过将分词后得到的各个词语与其他词语进行组合搭配,可以获得更多种类的组合词,用于后续的新词发现处理中。
在本申请实施例中,对于分词结果,可以使用N-gram进行切词,从而搭配出多种组合词。
在具体实现中,N可以取3,即构建三元模型。三元模型是指保留分词结果中三个相邻的词,将所有的词和其前驱后驱的词任意搭配,形成多种不同的组合方案。
例如,针对于三元分词结果:[世界,卫生,大会],可以搭配出的组合结果为[世界,卫生,大会,世界/卫生,卫生/大会,世界/卫生/大会]。
上述搭配出的所有组合结果均可以以字符或词语为单位存储至字典树中。
S203、以任一组合词中的第一个词语为初始节点生成一条路径,依次将所述组合词中的其他词语存储至所述路径中的不同节点中,构建出包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词,所述候选词为组合词;
在本申请实施例中,对于任一组合结果,可以按照语义顺序,以该组合中的第一词语为初始节点生成一条路径。例如,对于“世界/卫生/大会”这一组合,可以以“世界”作为初始节点。然后,依次将该组合中的其他词语存储在同一条路径的不同节点中。例如,在将“世界”作为初始节点,接下来的两个节点可以分别用于存储“卫生”和“大会”两个词语。
若任一组合词中的第一个词语已存在某个节点中,则可以以已存在的节点为初始节点生成一条路径,并执行依次将组合词中的其他词语存储至路径中的不同节点中的步骤,构建出包含多种组合词的字典树。
例如,在完成对“世界/卫生/大会”这一组合的存储后,若继续处理“世界/贸易/组织”之一组合,由于组合中的第一个词语“世界”已经存储,则可以以“世界”为初始节点生成另一条路径,分别在该路径的接下来的两个节点中存储“贸易”和“组织”两个词语。
作为本实施例的一个具体示例,例如有如下三元组合结果:[世界/卫生/大会,世界/贸易/组织,世界/贸易,中国,中国/人民/银行,中国/人民/大学,人民/大学/体育馆]。在构建字典树时,可以首先沿着根节点建立“世界->卫生->大会”这一条路径,接着,在建立“世界->贸易->组织”这一条路径时,由于世界这一第一层节点已经存在,所以只需要沿着该节点建立“贸易->组织”这一路径即可。其他的节点建立原理与之类似。
最终建立完成的字典树如图3所示,图中最上面的圆形节点为根节点,椭圆节点用于标记该节点作为终结节点,能够单独成词,最后一层的根节点都是终结节点。
另一方面,在标记终结节点时,还可以在该终结节点处标记出该词语出现的次数,用于后续的词频统计。
S204、针对任一终结节点对应的组合词,计算所述组合词中各个词语之间的互信息;
互信息用于表示两个词语间的凝固程度,即两个词语间的相互依赖程度。互信息越大说明两个词语的相关性越大,凝固程度就越大,两个单独的词语组合成新词的可能性也就越大。
在本申请实施例中,以候选词为组合词为例,针对任一终结节点对应的组合词,可以首先计算该组合词中各个词语同时出现的概率,以及每个词语出现的概率,然后以该组合词中各个词语同时出现的概率为除数,以每个词语出现的概率的乘积为被除数,计算第一商值,并计算以2为底的上述第一商值的对数,可以将其作为组合词中各个词语之间的互信息值。
在具体实现中,两个词语x和y之间的互信息的计算公式可以表示如下:
对于任意两个词语,p(x,y)表示两个词语同时出现的概率,p(x)和p(y)分别表示该词语单独出现的频率。求以2为底的log函数的原因来自于信息论,将概率转化为信息量,可以解释为用多少个比特(bit)位来代表这一变量。
例如,在一份训练语料中,“垃圾分类”出现了10次,“垃圾”出现了15次,“分类”出现了20次。则根据上述公式可以算出,“垃圾分类”这个词在“垃圾”和“分类”上的互信息为:
其中,N为语料中总的单个词数量,M为双组合词数量。对于三组合词或多组合词的计算方式和以上公式类似。
S205、计算所述组合词的左右熵最小值;
在本申请实施例中,左右熵最小值指左熵和右熵两个值中相对较小的那一个。
通常,左右熵的值越大,说明和该词左右组合的词的数量越大,种类越丰富。这就说明该词不受左右组合词的限制,自由程度较大,成为一个独立词的可能性也就越大。
因此,在本申请实施例中,针对任一候选词,可以分别确定该候选词的左邻接字合集和右邻接字合集,即语料中分别位于候选词左侧或右侧的其他词语的集合。
以候选词为组合词为例。针对左邻接字合集中的任一词语,可以以该词语与组合词同时出现的次数为除数,以组合词出现的次数为被除数,计算第二商值,然后计算以2为底的上述第二商值的对数,与第二商值相乘的第二乘积,再计算左邻接字合集中全部词语对应的第二乘积的和并取负数,将其作为组合词的左熵。
与上述类似,针对右邻接字合集中的任一词语,也可以以该词语与该组合词同时出现的次数为除数,组合词出现的次数为被除数,计算第三商值,然后计算以2为底的上述第三商值的对数,与第三商值相乘的第三乘积,再计算右邻接字合集中全部词语对应的第三乘积的和并取负数,将其作为组合词的右熵。
根据计算出的左熵和右熵,可以确定组合词的左右熵最小值。
在具体实现中,某个词语的左熵可以表示如下:
相应地,该词语的右熵可以表示为:
其中,W为候选词,A是候选词左邻接字的合集,B是候选词右邻接字的合集。P(aW|W)是左邻接字的条件概率,P(Wb|W)是右邻接字的条件概率,其计算公式分别可以表示为:
在左邻接字条件概率中,N(aW,W)表示a和W共同出现的次数,N(W)表示W出现的次数,右邻接字条件概率类似。
例如,假设“垃圾分类”作为一个新词发现的候选词。以左熵为例,如果“垃圾分类”的左组合词有[“推广”、“实行”、“实施”]三种,也就是说能组合成[“推广垃圾分类”、“实行垃圾分类”、“实施垃圾分类”]三种搭配,那么“垃圾分类”的左熵为三种搭配的熵的和,再取负值:
EL(垃圾分类)=-(P(推广垃圾分类|垃圾分类)log2P(推广垃圾分类)
+P(实行垃圾分类|垃圾分类)log2P(实行垃圾分类)
+P(实施垃圾分类|垃圾分类)log2P(实施垃圾分类))
左熵或右熵的值越大说明周边可组合的词越丰富,通过计算出每一个候选词的左熵和右熵,并计算其最小值。如果最小值低于设定的阈值,则说明其不能成词。
S206、根据所述互信息和/或所述左右熵最小值,计算所述组合词的识别分数;
在本申请实施例中,对于每一个候选词,它的识别分数可以结合左右熵和互信息两种指标进行度量,其计算公式可以表示如下:
score(W)=PMI(x,y)+min(EL(W),ER(W))
其中,W是待识别的组合词,x和y代表组合词内部的单个词语。min函数用于获得两个值之间的最小值。
S207、将所述识别分数超过预设分数阈值的候选词识别为目标词。
对于识别分数较大的某个词语,例如,其识别分数超过预设分数阈值,则可以将该词语识别为目标词,也就是经过处理和识别,所发现的新词。
在本申请实施例中,还可以设置一词频阈值t,删除出现次数少于上述词频阈值的目标词,进一步保证新词发现的合理性。也就是说,如果一个词的出现频率并不是很高的话,即使它的分数很高也不会被发现出来。
在本申请实施例中,对于识别出的目标词,还可以做发现去重处理。即如果前面的某个目标词是后面目标词的一部分,则删除后面的目标词。
例如,如果目标词表中同时存在[支付宝花呗,蚂蚁花呗,支付宝蚂蚁花呗]三个词,则第三个词是前两个词的一部分,而第二个词不是第一个词的一部分。所以可以删除“支付宝蚂蚁花呗”,只保留[支付宝花呗,蚂蚁花呗],保证发现出的新词不会出现相似的词重复较多的现象。
本申请实施例基于左右熵与互信息计算词间的凝固程度和自由程度,提出了新词发现的算法,避免了因为切词错误而无法识别新词的问题;其次,本申请实施例通过使用字典树这一数据结构进行词间关系和词频的存储,可以利用字符的公共前缀降低开销,避免大量的无谓对比查询过程,对于大规模语料的加速效果非常显著;第三,对于候选词,本申请实施例通过共现次数对其做进一步筛选,并通过字符串间的比较进行新词去重,保证了新词发现的合理性。可用于信息分享系统、论坛互动系统、舆情分析系统、搜索引擎系统及专业领域文本挖掘系统等包含中文自然语言处理功能的各类系统中,实现新词发现的功能,保证分词及向量化过程的切词合理性,同时优化了数据的存储及查找方式;识别时无需过多预处理,即可满足海量语料的新词发现需求。
为了便于理解,下面结合算法流程对本申请实施例的词语识别方法作一介绍。
如图4所示,是本申请一个实施例的一种词语识别方法的算法流程示意图,按照图4所示的算法流程,整个词语识别过程可以包括如下步骤:
算法输入:文本语料,筛选个数k,共现阈值t
步骤1:利用jieba分词对语料进行粗略分词;
步骤2:进行邻接词切词,形成N-gram三元模型,迭代组合出多种组合词;
步骤3:建立Trie树根节点,并逐步将组合词插入Trie树中存储;
步骤4:利用Trie树中的节点信息计算词语间的互信息PMI(x,y);
步骤5:利用Trie树中的节点信息计算组合词语的左右熵EL(W)和ER(W);
步骤6:对每一个组合的词语计算其分数score(W);
步骤7:根据分数的高低对词语进行排序。对于排序前k的候选词,判断如果其出现次数小于t则删除,大于等于t则保留;
步骤8:对候选词表去重,判断前面的词是否是后面的一部分,如果是则删除,不是则保留。
算法输出:新词词表,新词出现频率。
本申请实施例,针对于已有新词发现算法中存在的问题,提出了基于左右熵和互信息的新词发现算法。首先利用N-gram算法进行切词,针对于切词结果,采用Trie树结构进行存储并加速检索过程。接着计算候选词内部的互信息和候选词与其他词之间的左右熵,评估候选词的凝固程度和自由程度,并给出候选词成为新词的概率,形成候选新词集。对于候选新词集,再结合词语的最小共现次数,进一步保证提取新词的合理性。
需要说明的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
参照图5,示出了本申请一个实施例的一种词语识别装置的示意图,具体可以包括如下模块:
获取模块501,用于获取待处理的语料数据,所述语料数据中包含多个词语;
生成模块502,用于根据所述多个词语,生成多种组合词;
构建模块503,用于以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;
计算模块504,用于分别计算每个终结节点对应的候选词的识别分数;
识别模块505,用于根据所述识别分数,从所述候选词中识别出目标词。
在本申请实施例中,所述生成模块502具体可以包括如下子模块:
组合词搭配子模块,用于针对所述语料数据中的任一词语,将距离所述词语的词距小于预设切词数值的其他一个或多个词语与所述词语进行搭配,获得多种组合词。
在本申请实施例中,所述构建模块503具体可以包括如下子模块
存储子模块,用于以任一组合词中的第一个词语为初始节点生成一条路径,依次将所述组合词中的其他词语存储至所述路径中的不同节点中;
调用子模块,用于若任一组合词中的第一个词语已存在某个节点中,则以已存在的节点为初始节点生成一条路径,并调用所述节点词语存储子模块,构建出包含所述多种组合词的字典树。
在本申请实施例中,所述候选词为组合词,所述计算模块504具体可以包括如下子模块:
互信息计算子模块,用于针对任一终结节点对应的组合词,计算所述组合词中各个词语之间的互信息;
左右熵计算子模块,用于计算所述组合词的左右熵最小值;
识别分数计算子模块,用于根据所述互信息和/或所述左右熵最小值,计算所述组合词的识别分数。
在本申请实施例中,所述互信息计算子模块具体可以包括如下单元:
互信息计算单元,用于针对任一终结节点对应的组合词,计算所述组合词中各个词语同时出现的概率,以及计算每个词语出现的概率;以所述组合词中各个词语同时出现的概率为除数,所述每个词语出现的概率的乘积为被除数,计算第一商值;计算以2为底的所述第一商值的对数,作为所述组合词中各个词语之间的互信息。
在本申请实施例中,所述左右熵计算子模块具体可以包括如下单元:
邻接字合集确定单元,用于分别确定所述组合词的左邻接字合集和右邻接字合集;
左熵计算单元,用于针对所述左邻接字合集中的任一词语,以所述词语与所述组合词同时出现的次数为除数,所述组合词出现的次数为被除数,计算第二商值;计算以2为底的所述第二商值的对数,与所述第二商值相乘的第二乘积;计算所述左邻接字合集中全部词语对应的第二乘积的和并取负数,作为所述组合词的左熵;
右熵计算单元,用于针对所述右邻接字合集中的任一词语,以所述词语与所述组合词同时出现的次数为除数,所述组合词出现的次数为被除数,计算第三商值;计算以2为底的所述第三商值的对数,与所述第三商值相乘的第三乘积;计算所述右邻接字合集中全部词语对应的第三乘积的和并取负数,作为所述组合词的右熵;
左右熵最小值确定单元,用于根据所述左熵和所述右熵,确定所述组合词的左右熵最小值。
在本申请实施例中,所述识别模块505具体可以包括如下子模块:
识别子模块,用于将所述识别分数超过预设分数阈值的候选词识别为目标词。
在本申请实施例中,所述识别模块505还可以包括如下子模块:
删除子模块,用于删除出现次数少于预设词频阈值的目标词。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例部分的说明即可。
参照图6,示出了本申请一个实施例的一种终端设备的示意图。如图6所示,本实施例的终端设备600包括:处理器610、存储器620以及存储在所述存储器620中并可在所述处理器610上运行的计算机程序621。所述处理器610执行所述计算机程序621时实现上述词语识别方法各个实施例中的步骤,例如图1所示的步骤S101至S105。或者,所述处理器610执行所述计算机程序621时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至505的功能。
示例性的,所述计算机程序621可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器620中,并由所述处理器610执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段可以用于描述所述计算机程序621在所述终端设备600中的执行过程。例如,所述计算机程序621可以被分割成获取模块、生成模块、构建模块、计算模块和识别模块,各模块具体功能如下:
获取模块,用于获取待处理的语料数据,所述语料数据中包含多个词语;
生成模块,用于根据所述多个词语,生成多种组合词;
构建模块,用于以词语为单位,构建包含所述多种组合词的字典树,所述字典树包括多个终结节点,任一终结节点对应一个候选词;
计算模块,用于分别计算每个终结节点对应的候选词的识别分数;
识别模块,用于根据所述识别分数,从所述候选词中识别出目标词。
所述终端设备600可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备600可包括,但不仅限于,处理器610、存储器620。本领域技术人员可以理解,图6仅仅是终端设备600的一种示例,并不构成对终端设备600的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备600还可以包括输入输出设备、网络接入设备、总线等。
所述处理器610可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器620可以是所述终端设备600的内部存储单元,例如终端设备600的硬盘或内存。所述存储器620也可以是所述终端设备600的外部存储设备,例如所述终端设备600上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等等。进一步地,所述存储器620还可以既包括所述终端设备600的内部存储单元也包括外部存储设备。所述存储器620用于存储所述计算机程序621以及所述终端设备600所需的其他程序和数据。所述存储器620还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (7)

1.一种词语识别方法,其特征在于,包括:
获取待处理的语料数据,所述语料数据中包含多个词语;
根据所述多个词语,生成多种组合词;
以任一组合词中的第一个词语为初始节点生成一条路径,依次将所述组合词中的其他词语存储至所述路径中的不同节点中;
若任一组合词中的第一个词语已存在某个节点中,则以已存在的节点为初始节点生成一条路径,并执行依次将所述组合词中的其他词语存储至所述路径中的不同节点中的步骤,构建出包含所述多种组合词的字典树,所述字典树包括多个终结节点,所述终结节点包括所述字典树的任一节点,任一终结节点对应一个候选词,所述候选词包括组合词和非组合词;
分别计算每个终结节点对应的候选词的识别分数;
将所述识别分数超过预设分数阈值的候选词识别为目标词;
删除出现次数少于预设词频阈值的目标词,所述出现次数为所述候选词在所述字典树中出现的次数。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个词语,生成多种组合词,包括:
针对所述语料数据中的任一词语,将距离所述词语的词距小于预设切词数值的其他一个或多个词语与所述词语进行搭配,获得多种组合词。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述候选词为组合词,所述分别计算每个终结节点对应的候选词的识别分数,包括:
针对任一终结节点对应的组合词,计算所述组合词中各个词语之间的互信息;和/或,
计算所述组合词的左右熵最小值;
根据所述互信息和/或所述左右熵最小值,计算所述组合词的识别分数。
4.根据权利要求3所述的方法,其特征在于,所述针对任一终结节点对应的组合词,计算所述组合词中各个词语之间的互信息,包括:
针对任一终结节点对应的组合词,计算所述组合词中各个词语同时出现的概率,以及计算每个词语出现的概率;
以所述组合词中各个词语同时出现的概率为除数,所述每个词语出现的概率的乘积为被除数,计算第一商值;
计算以2为底的所述第一商值的对数,作为所述组合词中各个词语之间的互信息。
5.根据权利要求3所述的方法,其特征在于,所述计算所述组合词的左右熵最小值,包括:
分别确定所述组合词的左邻接字合集和右邻接字合集;
针对所述左邻接字合集中的任一词语,以所述词语与所述组合词同时出现的次数为除数,所述组合词出现的次数为被除数,计算第二商值;计算以2为底的所述第二商值的对数,与所述第二商值相乘的第二乘积;计算所述左邻接字合集中全部词语对应的第二乘积的和并取负数,作为所述组合词的左熵;
针对所述右邻接字合集中的任一词语,以所述词语与所述组合词同时出现的次数为除数,所述组合词出现的次数为被除数,计算第三商值;计算以2为底的所述第三商值的对数,与所述第三商值相乘的第三乘积;计算所述右邻接字合集中全部词语对应的第三乘积的和并取负数,作为所述组合词的右熵;
根据所述左熵和所述右熵,确定所述组合词的左右熵最小值。
6.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的词语识别方法。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的词语识别方法。
CN202010231978.4A 2020-03-27 2020-03-27 一种词语识别方法、装置、终端设备及存储介质 Active CN111460170B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010231978.4A CN111460170B (zh) 2020-03-27 2020-03-27 一种词语识别方法、装置、终端设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010231978.4A CN111460170B (zh) 2020-03-27 2020-03-27 一种词语识别方法、装置、终端设备及存储介质

Publications (2)

Publication Number Publication Date
CN111460170A CN111460170A (zh) 2020-07-28
CN111460170B true CN111460170B (zh) 2024-02-13

Family

ID=71680113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010231978.4A Active CN111460170B (zh) 2020-03-27 2020-03-27 一种词语识别方法、装置、终端设备及存储介质

Country Status (1)

Country Link
CN (1) CN111460170B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560448B (zh) * 2021-02-20 2021-06-22 京华信息科技股份有限公司 一种新词提取方法及装置
CN113222609B (zh) * 2021-05-07 2022-05-06 支付宝(杭州)信息技术有限公司 风险识别方法和装置
CN113361238B (zh) * 2021-05-21 2022-02-11 北京语言大学 一种语块重组题型的自动命题的方法及装置
CN113342936B (zh) * 2021-06-08 2024-03-22 北京明略软件系统有限公司 一种构词紧密度确定方法、装置、电子设备及存储介质
CN113627178A (zh) * 2021-08-27 2021-11-09 四川长虹电器股份有限公司 基于字典树分类的可配置化领域识别方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408818A (zh) * 2018-10-12 2019-03-01 平安科技(深圳)有限公司 新词识别方法、装置、计算机设备及存储介质
CN110046250A (zh) * 2019-03-17 2019-07-23 华南师范大学 三嵌入卷积神经网络模型及其文本多分类方法
CN110210028A (zh) * 2019-05-30 2019-09-06 杭州远传新业科技有限公司 针对语音转译文本的领域特征词提取方法、装置、设备及介质
CN110929510A (zh) * 2019-11-29 2020-03-27 上海晏鼠计算机技术股份有限公司 一种基于字典树的中文未登录词识别方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425771B (zh) * 2013-08-12 2016-12-28 深圳市华傲数据技术有限公司 一种数据正则表达式的挖掘方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408818A (zh) * 2018-10-12 2019-03-01 平安科技(深圳)有限公司 新词识别方法、装置、计算机设备及存储介质
CN110046250A (zh) * 2019-03-17 2019-07-23 华南师范大学 三嵌入卷积神经网络模型及其文本多分类方法
CN110210028A (zh) * 2019-05-30 2019-09-06 杭州远传新业科技有限公司 针对语音转译文本的领域特征词提取方法、装置、设备及介质
CN110929510A (zh) * 2019-11-29 2020-03-27 上海晏鼠计算机技术股份有限公司 一种基于字典树的中文未登录词识别方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Trie树的词语左右熵和互信息新词发现算法;郭理;现代电子技术;第65-69页 *

Also Published As

Publication number Publication date
CN111460170A (zh) 2020-07-28

Similar Documents

Publication Publication Date Title
CN111460170B (zh) 一种词语识别方法、装置、终端设备及存储介质
US11301637B2 (en) Methods, devices, and systems for constructing intelligent knowledge base
CN109670163B (zh) 信息识别方法、信息推荐方法、模板构建方法及计算设备
WO2019136993A1 (zh) 文本相似度计算方法、装置、计算机设备和存储介质
TWI653542B (zh) 一種基於網路媒體資料流程發現並跟蹤熱點話題的方法、系統和裝置
TWI662425B (zh) 一種自動生成語義相近句子樣本的方法
CN105095204B (zh) 同义词的获取方法及装置
Phan et al. Pair-linking for collective entity disambiguation: Two could be better than all
CN110457672B (zh) 关键词确定方法、装置、电子设备及存储介质
CN110516247B (zh) 基于神经网络的命名实体识别方法及计算机存储介质
WO2015149533A1 (zh) 一种基于网页内容分类进行分词处理的方法和装置
CN111444330A (zh) 提取短文本关键词的方法、装置、设备及存储介质
CN110990532A (zh) 一种处理文本的方法和装置
CN111177375B (zh) 一种电子文档分类方法及装置
CN112115232A (zh) 一种数据纠错方法、装置及服务器
CN111325030A (zh) 文本标签构建方法、装置、计算机设备和存储介质
CN115795061B (zh) 一种基于词向量和依存句法的知识图谱构建方法及系统
CN112632261A (zh) 智能问答方法、装置、设备及存储介质
CN116362243A (zh) 一种融入句子间关联关系的文本关键短语提取方法、存储介质及装置
CN113111178B (zh) 无监督的基于表示学习的同名作者消歧方法及装置
CN111339778A (zh) 文本处理方法、装置、存储介质和处理器
CN116090450A (zh) 一种文本处理方法及计算设备
CN115391551A (zh) 事件检测方法及装置
CN112541357B (zh) 实体识别方法、装置及智能设备
Jing et al. Graph-of-Tweets: A Graph Merging Approach to Sub-event Identification

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