CN110516247B - 基于神经网络的命名实体识别方法及计算机存储介质 - Google Patents
基于神经网络的命名实体识别方法及计算机存储介质 Download PDFInfo
- Publication number
- CN110516247B CN110516247B CN201910797635.1A CN201910797635A CN110516247B CN 110516247 B CN110516247 B CN 110516247B CN 201910797635 A CN201910797635 A CN 201910797635A CN 110516247 B CN110516247 B CN 110516247B
- Authority
- CN
- China
- Prior art keywords
- entity
- character string
- labels
- character
- label
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 17
- 238000013145 classification model Methods 0.000 claims abstract description 36
- 238000013507 mapping Methods 0.000 claims abstract description 25
- 230000015654 memory Effects 0.000 claims description 17
- 239000013598 vector Substances 0.000 claims description 11
- 230000002457 bidirectional effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 22
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 10
- 238000012545 processing Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
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)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种基于神经网络的命名实体识别方法及计算机存储介质,该方法包括将待识别的字符串输入至分类模型,利用分类模型识别字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集;将字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到字符串中包含词语所属的多个实体标签的概率值;从与语言意图类别对应的实体标签集中查找与字符串中包含词语的实体标签相匹配的实体标签,针对匹配到的实体标签,选取匹配的实体标签集中概率值排名前N的实体标签作为相应字符的实体标签。通过分类模型的语言意图类别识别结果对命名实体模型识别结果中不正确的实体标签过滤,减少了命名实体模型的错误识别率。
Description
技术领域
本发明涉及文本识别技术领域,特别是涉及一种基于神经网络的命名实体识别方法及计算机存储介质。
背景技术
在车机NLP(Natural Language Processing,自然语言处理)中,通常采用神经网络分类模型和NER(Named Entity Recognition,命名实体识别模型)对文本做意图识别和词槽提取。一般基于CNN(Convolutional Neural Networks,卷积神经网络)的分类模型能得到比较高的准确度和召回率,在中文车机NLP中能超过99.5%的准确度,从而能能够较为准确地对文本进行意图识别,但是NER在实体识别时准确度稍微差一些,对于一条文本通常只有90%的准确度。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于神经网络的命名实体识别方法、计算机存储介质及计算设备。
依据本发明一方面,提供了一种基于神经网络的命名实体识别方法,包括:
将待识别的字符串输入至分类模型,利用分类模型识别所述字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集;
将所述字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到所述字符串中包含词语所属的多个实体标签的概率值;
从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的多个实体标签相匹配的实体标签,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签。
可选地,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签,包括:
针对匹配到的实体标签,选取其中实体标签的概率值最大的实体标签作为相应字符的实体标签。
可选地,所述方法还包括:
若从与语言意图类别对应的实体标签集中未查找到与所述字符串中包含词语的实体标签相匹配的实体标签,将所述字符串中包含词语的实体标签设置为无效标签。
可选地,所述方法还包括按照如下步骤创建预设映射表:
获取预先设置的多个实体标签集,其中,每个实体标签集中包含至少一个实体标签;
定义与每个实体标签集对应的语言意图描述,依据所述语言意图描述为所述每个实体标签集对应设置语言意图类别;
建立实体标签集和为其对应设置的语言意图类别之间的映射关系,依据所述映射关系创建所述预设映射表。
可选地,从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的多个实体标签相匹配的实体标签,包括:
从所述字符串中包含词语的实体标签中选取实体标签的概率值排名前X的实体标签;
从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的排名前X的实体标签相匹配的实体标签,其中,N小于等于X。
可选地,所述命名实体模型还包括:输入层、字嵌入层、双向长短记忆网络层、全连接层;
将所述字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到所述字符串中包含词语所属的多个实体标签的概率值,包括:
利用所述输入层将所述字符串转换化为字索引数组后输出至字嵌入层,字索引数组的元素为所述字符串中各字符的索引号;
所述字嵌入层将所述字索引数组中的每个元素分别转化为多维字向量,将多维字向量依次输出至双向长短记忆网络层;
所述双向长短记忆网络层从所述多维字向量中提取字符串中各字符的特征信息,将各字符的特征信息输出至全连接层;
所述全连接层依据各字符的特征信息确定各字符对应的多个实体标签并输入至维特比解码层,由所述维特比解码层基于多个实体标签确定出字符串中包含词语所属的多个实体标签的概率值。
依据本发明再一方面,还提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行上文任意实施例的基于神经网络的命名实体识别方法。
依据本发明又一方面,还提供了一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行上文任意实施例的基于神经网络的命名实体识别方法。
在本发明实施例中,通过将待识别的字符串输入至分类模型,利用分类模型识别字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集。将字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到字符串中包含词语所属的多个实体标签的概率值。从与语言意图类别对应的实体标签集中查找与字符串中包含词语的实体标签相匹配的实体标签,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签。由此,本发明实施例通过将分类模型的语言意图类别识别结果应用于命名实体模型的实体识别过程,能够利用分类模型的语言意图类别识别结果对命名实体模型识别结果中不准确的实体标签进行过滤,由于分类模型的识别准确度较高,因此通过分类模型可以辅助提高命名实体模型识别的准确度,从而减少了命名实体模型的错误识别率,提升了用户体验,进一步地还减少了命名实体模型在实体识别过程中的数据计算量。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的基于神经网络的命名实体识别方法流程示意图;
图2示出了根据本发明一个实施例的分类模型的框架示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提供了一种基于神经网络的命名实体识别方法。图1示出了根据本发明一个实施例的基于神经网络的命名实体识别方法的流程示意图。参见图1,该方法至少包括步骤S102至步骤S106。
步骤S102,将待识别的字符串输入至分类模型,利用分类模型识别字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集。
该步骤中,语言意图指的是字符串所要表达的用户查询意图,例如:字符串“我要听刘德华的忘情水”,该字符串经分类模型识别出的语言意图为歌手歌名查询。预设映射表中包含了多个语言意图类别和与各语言意图类别分别对应的实体标签集,还包含了语言意图类别和对应的实体标签集的映射关系。
在该步骤中,分类模型可以采用基于卷积神经网络的文本分类模型TextCNN,也可以采用基于全连接网络的文本分类模型Fasttext。
步骤S104,将字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到字符串中包含词语所属的多个实体标签的概率值。
该步骤中,字符串通常包括连续的多个字符,例如,字符串“我要听刘德华的忘情水”,那么字符串中的每个字对应一个字符,词语可以表示人名、地名、歌曲名等实体词,例如字符“刘”、“德”、“华”为人名的词语。通常情况下,在命名实体模型中的实体标签指的是字符的实体标签,如,“刘”的实体标签为B-人名,由于词语中包含了多个字符,因此词语所属的多个实体标签指的是词语中所有字符的实体标签。
步骤S106,从与语言意图类别对应的实体标签集中查找与字符串中包含词语的实体标签相匹配的实体标签,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签。
本发明实施例在利用分类模型识别出字符串的语言意图类别后,在预设映射表中查找与该语言意图类别对应的实体标签集,并在命名实体模型识别得到字符串中包含词语所属的多个实体标签的概率值后,从基于分类模型的识别结果查找到的实体标签集中匹配与命名实体模型的识别得到字符串中包含词语所属的多个实体标签相匹配的实体标签,即将分类模型的语言意图类别识别结果进一步地应用于命名实体模型的实体识别过程,从而将匹配得到实体标签的概率值排名前N的实体标签作为相应字符的实体标签,以实现利用分类模型的语言意图类别识别结果对命名实体模型识别结果中不准确的实体标签进行过滤。由于分类模型的识别准确度较高,因此通过分类模型的识别结果可以辅助提高命名实体模型识别结果的准确度,从而减少了命名实体模型的错误识别率,提升了用户体验,进一步地还减少了命名实体模型在实体识别过程中的数据计算量。
在本发明一实施例中,在执行步骤S102之前,还可以按照如下步骤创建预设映射表。
步骤1、获取预先设置的多个实体标签集,其中,每个实体标签集中包含至少一个实体标签。
步骤2、定义与每个实体标签集对应的语言意图描述,依据语言意图描述为每个实体标签集对应设置语言意图类别。这里的语言意图描述可以用于描述语言意图类别。
步骤3、建立实体标签集和为其对应设置的语言意图类别之间的映射关系,依据映射关系创建预设映射表。
在创建了预设映射表之后,在执行步骤S102从预设映射表中查找与识别出的语言意图类别对应的实体标签集时,具体地可以先从预设映射表中查找出与识别出的语言意图类别相同的语言意图类别,进而获取与查找到的语言意图类别具有映射关系的实体标签集。例如,语言意图类别为“歌手歌名查询”,与其具有映射关系的实体标签集包含了一个或多个实体标签,例如,B-人名、I-人名、L-人名、U-人名、B-歌曲名、I-歌曲名、L-歌曲名、U-歌曲名,其中,实体标签中的B、I、L、U的含义如下表1所示。
标签 | B(Begin) | I(Internal) | L(Last) | U(Unique) | O(Other) |
含义 | 词槽开始 | 词槽中间 | 词槽结尾 | 单字词槽 | 非词槽 |
表1
目前,在输入至命名实体模型的字符串中的各个字符依次进入维特比解码层时,维特比解码层可以对全连接层输出的数据进行维比特解码。例如,全连接层的输出数据为[step,tagNum]的矩阵,其中step表示字符串最大有step个字符,如step为70,表示字符串最大有70个字符。tagNum代表命名实体模型的标签总数量,比如237个标签。每个字符对应tagNum数量个可能的实体标签,每个实体标签用一个浮点数表示,数值越大表示可能性越大。维特比解码层将[step,tagNum]的矩阵作为输入,且利用预先训练出的转移矩阵[tagNum,tagNum]进行维比特解码,进而得到与输入一一对应的输出,也是一个[step,tagNum]的矩阵。
在维比特解码的过程中,若字符串中第i个字符的第j个实体标签节点为Bi,j,对应的输出值为Oi,k(k=0,1,…,tagNum-1)是该节点Bi,j的输入、对应转移矩阵的值、以及前一层节点的输出的最大值的累加和。每一个节点Bi,j对应的输出Oi,k包含tagNum个,选择最大的一个作为节点Bi,j的输出(maxOi-1,j),其他的丢弃。其中,累加过程可以参见公式1:maxOi,j=argMax(Oi-1,k+Ti,j+Ii,j),其中,k=0,1,…,tagNum-1。在字符串中从第1个字符到第step个字符依次计算出每个字符的每个节点的输出,并选出输出的概率值中的最大值作为相应节点的输出参与下一字符的计算,当计算到最后一个字符时,在tagNum个节点的输出中选择输出的概率值最大的标签作为最终的结果。进而通过最后一个字符的最大值的标签进行回溯,最后获得一个tagNum长度的标签路径,并作为字符串的实体标签。
命名实体模型主要用来识别字符串中的词槽(包括词槽类型、词槽位置),比如字符串为“给我放一首刘德华的忘情水”,命名实体模型处理的结果如下表2所示。其中,表1中的B、I、L、U的含义参见表1的内容。
表2
在本发明实施例中,结合上文内容并参见步骤S104和步骤S106,为了避免出现维比特解码层在解码过程中针对每个字符所选出的概率值最大的实体标签并非是相应字符最合适的实体标签。因此,在命名实体模型的维比特解码层得到各字符对应的多个实体标签的概率值之后,利用分类模型识别出的语言意图类别对应的实体标签集来对字符的多个实体标签进行筛选。具体可以将字符串所包含词语中的各字符对应的多个实体标签进行组合,得到多个组合后的实体标签,将组合后的实体标签与语言意图类别对应的实体标签集中的实体标签进行匹配,若匹配得到相应的实体标签,则选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签。
该实施例中,在选取实体标签的概率值排名前N的实体标签作为相应字符的实体标签时,可选地可以针对匹配到的实体标签,选取其中实体标签的概率值最大的实体标签作为相应字符的实体标签,进而使得一个字符串对应一组实体标签。
例如,字符串为“我要听刘德华的忘情水”,分类模型识别出该字符串的语言意图类别为“歌手歌名查询”,例如,该语言意图类别对应的实体标签集中包含的实体标签为B-人名、I-人名、L-人名、B-歌曲名、I-歌曲名、L-歌曲名、U-歌曲名。
维比特解码层在识别出该字符串中的字符“刘”、“德”、“华”各自对应的多个实体标签(如一个字符对应237个实体标签)之后,由于三个字符“刘”、“德”、“华”构成一个词语“刘德华”,因此,可以将三个字符对应的多个实体标签进行组合,将组合得到实体标签与“歌手歌名查询”对应的实体标签集中的实体标签进行匹配,若词语“刘德华”对应的多组实体标签中存在一组实体标签与实体标签中的实体标签匹配,如“刘德华”对应的多组实体标签中存在B-人名、I-人名、L-人名的实体标签,那么直接将匹配的这一组实体标签中的各实体标签对应的作为“刘”、“德”、“华”的实体标签。若组合得到实体标签中存在至少两组实体标签与实体标签中的实体标签匹配,那么可以将实体标签的概率值最大的实体标签作为相应字符的实体标签,这样可以使一个字符串最后能够对应唯一的实体标签。当然,字符串中的其他词语,如忘情水也采用上述相同的方式进行实体标签的筛选。
结合上文步骤S106,在本发明一实施例中,从与语言意图类别对应的实体标签集中查找与字符串中包含词语的多个实体标签相匹配的实体标签时,具体可以先从字符串中包含词语的实体标签中选取实体标签的概率值排名前X的实体标签。然后,从与语言意图类别对应的实体标签集中查找与字符串中包含词语的排名前X的实体标签相匹配的实体标签,其中,N小于等于X。例如,先从字符串中包含词语的多个实体标签中选取实体标签的概率值排名前5(即X为5)的实体标签,然后再将排名前5的实体标签与实体标签集进行匹配,进而,后续可以从排名前5的实体标签与实体标签集的匹配结果中选取1(即N为1)个实体标签作为相应字符的实体标签,由此,可以有效地减少字符串的词语的实体标签与实体标签集的匹配工作量。
在该实施例中,在从字符串中包含词语的实体标签中选取实体标签的概率值排名前X的实体标签时,可以从词语中各字符的多个实体标签中选取实体标签的概率值排名前X的实体标签,这里X可以是大于等于1的整数,若X为1时,从词语中各字符的多个实体标签中选取实体标签的概率值最大的实体标签,那么字符串的词语也对应一组实体标签。
在本发明一实施例中,若从与语言意图类别对应的实体标签集中没有查找到与字符串中包含词语的实体标签相匹配的实体标签,那么,证明字符串中对应词语的实体标签是不准确的,此时可以将字符串中包含词语的实体标签设置为无效标签。
在本发明另一实施例中,字符串输入至命名实体模型后在进入维比特层解码之前,还会进入输入层、字嵌入层、双向长短记忆网络层、全连接层,下面对命名实体模型的各层对字符串中的各个字符依次进行识别以得到字符串中包含词语所属的多个实体标签的概率值的过程进行介绍。
首先,利用输入层将字符串转换化为字索引数组后输出至字嵌入层,其中,字索引数组的元素为字符串中各字符的索引号。
在该实施例中,输入层也可以称为one-hot转换层,用户向命名实体模型输入字符串之后,先经输入层将字符串转换化为字索引数组,字索引数组的元素为字符串中各字符的索引号,即将字符串转换为各字符的索引号,一个字符串输入输入层后,输入层输出一组索引号的数组。由于通常人一次讲话一般是少于70个字的,因此,可以约定输入层最长接收70个字,超过部分截断丢弃,此时输入层的输出就是一个最长70个元素的数组,数组元素的值是整型数值,代表这个字的索引号。
然后,字嵌入层将字索引数组中的每个元素分别转化为多维字向量,将多维字向量依次输出至双向长短记忆网络层。
在该实施例中,字嵌入就是用一个多维的浮点数据表示每个字符的意思,比如每个字用128个元素的一维数组表示。输入层输出的一个字索引数组经过字嵌入层变成一个多维字向量,70个字符的索引就变成一个[70,128]的矩阵,且矩阵的每一个元素是一个浮点数。
进而,双向长短记忆网络层(Long Short-Term Memory,LSTM)从多维字向量中提取字符串中各字符的特征信息,将各字符的特征信息输出至全连接层。
该实施例中,双向长短记忆网络层是一个广泛应用的神经网络模型,它在处理一个字符串时会考虑各字符之间的相互关联关系,而不是只考虑最近的一个字符或者几个字符,在进行命名实体识别时,例如,处理“我要听刘德华的忘情水”这个字符串,最后一个词是“忘情水”,前面有“我要听”和“刘德华”,双向长短记忆网络在识别“忘情水”时,考虑了前面的“我要听”、“刘德华”等,结合了上下文,所以能更准确的判断出“忘情水”可能是一首歌名。如果只用一个方向双向长短记忆网络层就会丢失字符串中字、词顺序的信息,比如可能存在“我爱你”和“你爱我”的意思区分不出来,因此,采用双向长短记忆网络层,在正向LSTM处理“我爱你”,反向LSTM处理“你爱我”,进而将2个LSTM处理的结果合并起来,从而得到字符串中每个字符、词的顺序关系。例如,双向长短记忆网络层的输入是前面字嵌入层的输出的70*128的矩阵,其输出也是一个大小为[70,2*HIDDENUNIT]的矩阵,在对一个字符串的70个字符进行处理时,正向LSTM处理加反向LSTM就是[70,2*HIDDENUNIT],HIDDENUNIT表示预设的长度,比如128。输出的矩阵中每个元素同样是一个浮点数。
最后,全连接层依据各字符的特征信息确定各字符对应的多个实体标签并输入至维特比解码层,以由维特比解码层基于多个实体标签确定出字符串中包含词语所属的多个实体标签的概率值。例如,全连接层接收到双向LSTM输出的矩阵[70,2*HIDDENUNIT]后,转换为一个新的矩阵[70,OUTPUTDIM],其中70表示字符串最大有70个字符,OUTPUTDIM代表命名实体模型的标签数量,比如歌名、歌手都属于命名实体模型的标签。每个字符对应OUTPUTDIM数量个可能的标签,每个标签用一个浮点数表示,数值越大表示可能性越大。
在本发明实施例中,分类模型可以用于识别出字符串中的用户意图,比如字符串为“我要听刘德华的忘情水”,分类模型识别出用户意图类别为“歌手歌名查询”。
参见图2,分类模型主要包含输入层、字嵌入层、隐藏层、输出层,其中,隐藏层包括卷积层、池化层、融合层、全连接层,下面对各层分别进行介绍。
输入层也可以称为one-hot转换层,用户向命名实体模型输入字符串之后,先经输入层将字符串转换化为字索引数组,字索引数组的元素为字符串中各字符的索引号,即将字符串转换为各字符的索引号,一个字符串输入输入层后,输入层输出一组索引号的数组。由于通常人一次讲话一般是少于70个字的,因此,可以约定输入层最长接收70个字,超过部分截断丢弃,此时输入层的输出就是一个最长70个元素的数组,数组元素的值是整型数值,代表这个字的索引号。
字嵌入层中的字嵌入指用一个多维的浮点数据表示每个字符的意思,比如每个字用128个元素的一维数组表示。输入层输出的一个字索引数组经过字嵌入层变成一个多维字向量,70个字符的索引就变成一个[70,128]的矩阵,且矩阵的每一个元素是一个浮点数。
卷积层的作用是将一些字符的特征放大并提取出来,比如意图分类处理中,提取字符串中3字符、4字符、5字符的特征,即把连续的3个字符、4个字符、5个字符作为感兴趣的特征提取出来,以将3~5个字符作为整体来看待,如果3~5个字符本身为词语或短语则直接当成整体考虑,如果3~5个字符不是词语或短语,则考虑字符的前后关系。卷积层的输入是字嵌入层的输出矩阵,卷积层的输出也是一个矩阵,输出矩阵大小和卷积核的大小有关,比如卷积核大小尺寸为[3,128],则卷积以后卷积层输出的矩阵为[68,1]。3个字符长度特征提取就对应卷积核[3,128],4个字符长度特征提取就对应卷积核[4,128],5个字节长度特征提取就对应卷积核[5,128],128表示每个尺寸的卷积核数量。
池化层的目的是对卷积核提取出来的特征中忽略不重要的特性,只看最重要的特征,具体可以采用“下采样”方式,所谓“下采样”就是找出矩阵中最大的值,用该最大值替代整个矩阵。每一个卷积核后面接一个池化层,池化层的输出就是一个代表该卷积结果矩阵中的最大值。
融合层主要将多个池化层的输出的数据组合成一个一维数组,比如128个3字节卷积池化、128个4字符卷积池化、128个5字符卷积池化,得到的384个数值,组成一个一维数组,数组中每个元素都是一个浮点数。
全连接层接收来自融合层的输出,例如接收384个元素的一维数组,该一维数组经全连接层后转换为n个浮点值,n等于预设的用户意图类别,比如用户意图类别有20个,则n等于20。这里n个浮点数中每个数值大小代表该类别可能性的大小,可能性越大的分类对应的数值越大。之后,通常还要做归一化处理,使得所有n个值之和为1。
输出层接收全连接层输出的n个值,即n个元素的一维数组,数组中的每个元素的下标可以代表一个类别标识,输出层基于类别标识确定出对应的用户意图类别,其中,类别标识和用户意图类别是用户预先定义好的。例如,类别标识1表示用户意图类别为“歌手”,类别标识2表示用户意图类别为“歌名”。类别标识3表示用户意图类别为“歌手歌名”。
本发明实施例还提供了一种计算机存储介质,计算机存储介质存储有计算机程序代码,当计算机程序代码在计算设备上运行时,导致计算设备执行上文任一实施例的基于神经网络的命名实体识别方法。
本发明实施例还提供了一种计算设备,计算设备包括:处理器和存储有计算机程序代码的存储器,当计算机程序代码被处理器运行时,导致计算设备执行上文任一实施例的基于神经网络的命名实体识别方法。
根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
在本发明实施例中,通过将待识别的字符串输入至分类模型,利用分类模型识别字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集。将字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到字符串中包含词语所属的多个实体标签的概率值。从与语言意图类别对应的实体标签集中查找与字符串中包含词语的实体标签相匹配的实体标签集,针对匹配到的实体标签集,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签。由此,本发明实施例通过将分类模型的语言意图类别识别结果应用于命名实体模型的实体识别过程,以利用分类模型的语言意图类别识别结果对命名实体模型识别结果中不正确的实体标签进行过滤,由于分类模型的识别准确度较高,因此可以利用分类模型辅助提高命名实体模型识别的准确度,减少了命名实体模型的错误识别率,提升了用户体验,并且,进一步地还减少了实体识别过程中的数据计算量。
所属领域的技术人员可以清楚地了解到,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行指令时执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,程序指令可以存储于一计算机可读取存储介质中,当程序指令被计算设备的处理器执行时,计算设备执行本发明各实施例方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。
Claims (7)
1.一种基于神经网络的命名实体识别方法,包括:
将待识别的字符串输入至分类模型,利用分类模型识别所述字符串的语言意图类别,从预设映射表中查找与识别出的语言意图类别对应的实体标签集;
将所述字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到所述字符串中包含词语所属的多个实体标签的概率值;
从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的多个实体标签相匹配的实体标签,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签;
其中,还包括按照如下步骤创建预设映射表:
获取预先设置的多个实体标签集,其中,每个实体标签集中包含至少一个实体标签;
定义与每个实体标签集对应的语言意图描述,依据所述语言意图描述为所述每个实体标签集对应设置语言意图类别;
建立实体标签集和为其对应设置的语言意图类别之间的映射关系,依据所述映射关系创建所述预设映射表。
2.根据权利要求1所述的方法,其中,针对匹配到的实体标签,选取其中的实体标签的概率值排名前N的实体标签作为相应字符的实体标签,包括:
针对匹配到的实体标签,选取其中实体标签的概率值最大的实体标签作为相应字符的实体标签。
3.根据权利要求1所述的方法,其中,还包括:
若从与语言意图类别对应的实体标签集中未查找到与所述字符串中包含词语的实体标签相匹配的实体标签,将所述字符串中包含词语的实体标签设置为无效标签。
4.根据权利要求1-3任一项所述的方法,其中,从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的多个实体标签相匹配的实体标签,包括:
从所述字符串中包含词语的实体标签中选取实体标签的概率值排名前X的实体标签;
从与语言意图类别对应的实体标签集中查找与所述字符串中包含词语的排名前X的实体标签相匹配的实体标签,其中,N小于等于X。
5.根据权利要求1-3任一项所述的方法,其中,所述命名实体模型还包括:输入层、字嵌入层、双向长短记忆网络层、全连接层;
将所述字符串输入至命名实体模型中对字符串中的各个字符依次进行识别,得到所述字符串中包含词语所属的多个实体标签的概率值,包括:
利用所述输入层将所述字符串转换化为字索引数组后输出至字嵌入层,字索引数组的元素为所述字符串中各字符的索引号;
所述字嵌入层将所述字索引数组中的每个元素分别转化为多维字向量,将多维字向量依次输出至双向长短记忆网络层;
所述双向长短记忆网络层从所述多维字向量中提取字符串中各字符的特征信息,将各字符的特征信息输出至全连接层;
所述全连接层依据各字符的特征信息确定各字符对应的多个实体标签并输入至维特比解码层,由所述维特比解码层基于多个实体标签确定出字符串中包含词语所属的多个实体标签的概率值。
6.一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行权利要求1-5任一项所述的基于神经网络的命名实体识别方法。
7.一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行权利要求1-5任一项所述的基于神经网络的命名实体识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797635.1A CN110516247B (zh) | 2019-08-27 | 2019-08-27 | 基于神经网络的命名实体识别方法及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797635.1A CN110516247B (zh) | 2019-08-27 | 2019-08-27 | 基于神经网络的命名实体识别方法及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110516247A CN110516247A (zh) | 2019-11-29 |
CN110516247B true CN110516247B (zh) | 2021-11-16 |
Family
ID=68628110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910797635.1A Active CN110516247B (zh) | 2019-08-27 | 2019-08-27 | 基于神经网络的命名实体识别方法及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110516247B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782278A (zh) * | 2019-12-26 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 一种功能程序唤醒方法和装置 |
CN113051919B (zh) * | 2019-12-26 | 2023-04-04 | 中国电信股份有限公司 | 一种识别命名实体的方法和装置 |
CN111209396B (zh) * | 2019-12-27 | 2024-06-07 | 深圳市优必选科技股份有限公司 | 实体识别模型的训练方法及实体识别方法、相关装置 |
CN111177358B (zh) * | 2019-12-31 | 2023-05-12 | 华为技术有限公司 | 意图识别方法、服务器及存储介质 |
CN111274816B (zh) * | 2020-01-15 | 2021-05-18 | 湖北亿咖通科技有限公司 | 一种基于神经网络的命名实体识别方法和车机 |
CN111460149B (zh) * | 2020-03-27 | 2023-07-25 | 科大讯飞股份有限公司 | 文本分类方法、相关设备及可读存储介质 |
CN111539210B (zh) * | 2020-04-16 | 2023-08-11 | 支付宝(杭州)信息技术有限公司 | 跨网络实体的识别方法、装置、电子设备及介质 |
CN111967264B (zh) * | 2020-08-26 | 2021-09-24 | 湖北亿咖通科技有限公司 | 一种命名实体识别方法 |
CN112257449B (zh) * | 2020-11-13 | 2023-01-03 | 腾讯科技(深圳)有限公司 | 命名实体识别方法、装置、计算机设备和存储介质 |
CN113515946B (zh) * | 2021-06-22 | 2024-01-05 | 亿咖通(湖北)技术有限公司 | 信息处理方法及装置 |
CN113571052A (zh) * | 2021-07-22 | 2021-10-29 | 湖北亿咖通科技有限公司 | 一种噪声提取及指令识别方法和电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6820075B2 (en) * | 2001-08-13 | 2004-11-16 | Xerox Corporation | Document-centric system with auto-completion |
US10311058B1 (en) * | 2018-07-06 | 2019-06-04 | Global Elmeast Inc. | Techniques for processing neural queries |
CN109871535B (zh) * | 2019-01-16 | 2020-01-10 | 四川大学 | 一种基于深度神经网络的法语命名实体识别方法 |
CN109960728B (zh) * | 2019-03-11 | 2021-01-22 | 北京市科学技术情报研究所(北京市科学技术信息中心) | 一种开放域会议信息命名实体识别方法及系统 |
CN110162651B (zh) * | 2019-04-23 | 2023-07-14 | 南京邮电大学 | 基于语义内容摘要的新闻内容图文不符鉴别系统及鉴别方法 |
CN110162795A (zh) * | 2019-05-30 | 2019-08-23 | 重庆大学 | 一种自适应的跨领域命名实体识别方法与系统 |
-
2019
- 2019-08-27 CN CN201910797635.1A patent/CN110516247B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110516247A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110516247B (zh) | 基于神经网络的命名实体识别方法及计算机存储介质 | |
CN107480143B (zh) | 基于上下文相关性的对话话题分割方法和系统 | |
CN111709243B (zh) | 一种基于深度学习的知识抽取方法与装置 | |
CN112711948B (zh) | 一种中文句子的命名实体识别方法及装置 | |
CN110349568A (zh) | 语音检索方法、装置、计算机设备及存储介质 | |
CN109062902B (zh) | 一种文本语义表达方法及装置 | |
CN111460170B (zh) | 一种词语识别方法、装置、终端设备及存储介质 | |
CN110096572B (zh) | 一种样本生成方法、装置及计算机可读介质 | |
CN110134777B (zh) | 问题去重方法、装置、电子设备和计算机可读存储介质 | |
CN112800249A (zh) | 基于生成对抗网络的细粒度跨媒体检索方法 | |
CN110929498A (zh) | 一种短文本相似度的计算方法及装置、可读存储介质 | |
CN112270188A (zh) | 一种提问式的分析路径推荐方法、系统及存储介质 | |
CN113033204A (zh) | 信息实体抽取方法、装置、电子设备和存储介质 | |
CN112182145A (zh) | 文本相似度确定方法、装置、设备和存储介质 | |
CN106708798A (zh) | 一种字符串切分方法及装置 | |
CN107797986B (zh) | 一种基于lstm-cnn的混合语料分词方法 | |
CN111325033B (zh) | 实体识别方法、装置、电子设备及计算机可读存储介质 | |
CN112487813B (zh) | 命名实体识别方法及系统、电子设备及存储介质 | |
CN114328798A (zh) | 搜索文本的处理方法、装置、设备、存储介质和程序产品 | |
CN110502755B (zh) | 基于融合模型的字符串识别方法及计算机存储介质 | |
CN111339778A (zh) | 文本处理方法、装置、存储介质和处理器 | |
CN116090450A (zh) | 一种文本处理方法及计算设备 | |
CN113312903B (zh) | 一种5g移动业务产品词库的构建方法及系统 | |
CN111881678B (zh) | 一种基于无监督学习的领域词发现方法 | |
CN112287217B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220402 Address after: 430051 No. b1336, chuanggu startup area, taizihu cultural Digital Creative Industry Park, No. 18, Shenlong Avenue, Wuhan Economic and Technological Development Zone, Wuhan, Hubei Province Patentee after: Yikatong (Hubei) Technology Co.,Ltd. Address before: No.c101, chuanggu start up area, taizihu cultural Digital Industrial Park, No.18 Shenlong Avenue, Wuhan Economic Development Zone, Hubei Province Patentee before: HUBEI ECARX TECHNOLOGY Co.,Ltd. |