面向中文文本的语义理解系统及方法与流程

文档序号:13446212阅读:528来源:国知局
面向中文文本的语义理解系统及方法与流程

本发明涉及自然语言处理领域,具体地,可以广泛应用于无人驾驶车、智能家居、机器人等任何需要人机语音交互及其语义理解的智能终端。



背景技术:

随着社会经济与科学技术的发展,人类已经走进人工智能时代,无人驾驶车、智能手机、智能电视、服务机器人等一大批智能产品已经走进人们的生活,改变人类的生活方式,而为了使智能产品更好的为人类服务,用户需要实时与其进行交互,并需要智能终端理解用户的意图。在众多交互方式中,基于语音的交互方式是最便捷、最方便、也是应用最广泛的交互方式,语音交互已成为人与智能产品最主要的交互方式。而基于语音交互的系统主要包括语音识别和语义理解三大部分,目前语音识别方面已经有很多成熟的论文及方法,且国内诸多公司都已推出了自己的语音识别产品,并有良好的应用效果。而语义理解技术则存在较多难点,怎样让机器对语音识别得到的文本进行理解,从而使机器理解人类的意图,成为了交互过程中的关键环节,进行对语义理解的研究有着重要意义。

经检索发现,目前针对中文文本的语义理解方法可分为两类,基于统计学的方法与基于深度学习的方法。基于统计的方法如发明专利(公告号:cn104408095a)是一种改进的knn文本分类方法,其首先生成训练集的向量空间模型,将样本空间按类型定义为多个球形区,测试时再依距离进行判断类别,此方法适合高特征维度的文本空间分类,但当类别数量增加时,空间分类面的分类精度会随之下降;发明专利(公告号:cn105912716a)是一种基于svm的文本分类方法,其引入了扩展词的概念,克服了短文本特征稀疏的问题,但其在大规模语料库情况下会产生维度过大的问题;基于深度学习的方法如发明专利(公告号cn104834747a)是一种基于词向量与卷积神经网络的分类方法,其将词映射到空间上一点并用其之间距离来衡量词间关系,并用卷积神经网络对其进行特征提取,但其在处理复杂意图文本或长语句时,会产生上下文信息丢失的情况。近些年基于深度学习的意图理解或文本分类方面的论文也越来越多的,yannlecun于character-levelconvolutionalnetworksfortextclassification中提出一种基于字符的新文本表征方法,与之前以词为单位的特征方法所不同的是,序列将每一个字符视为单元输入,但这种方法在应用于中文时有其局限性,因为中文的拼音是以声韵母两部分组成,而不是单纯的单字符,以“导航”为例,将其视为“dao1hang2”的组合比“dao1hang2”的构成更为科学,其中数字代表声调。



技术实现要素:

针对现有技术中的缺陷,本发明的目的是提供一种面向中文文本语义理解系统及方法。

根据本发明提供的一种面向中文文本语义理解系统,包括:

文本预处理模块:对接收到的文本进行分词,将分词后的文本转化为拼音序列;

深度学习文本分类模型:将拼音序列作为已训练好的深度学习文本分类模型的输入,深度学习文本分类模型包括:

输入层:接收所述文本预处理模块得到的拼音序列,将拼音序列依照字符表映射成稀疏向量,拼音序列中所有映射后的稀疏向量构成该拼音序列的稀疏表示矩阵;

卷积层:采取不同窗口大小、不同权值的卷积核矩阵对稀疏表示矩阵进行特征提取,获取文本中每个词的特征序列;

池化层:对得到的每个词的特征序列取最大池化,得到对应词的拼音表示的特征;

gru层:利用gru递归神经网络单元对池化后的特征进行处理,得到gru隐层单元;

全连接层:对gru隐层单元进行全连接计算隐层输出;

输出层:对隐层输出进行分类得到文本的预测类别。

优选的,所述字符表为根据汉语拼音声韵母成分所定义的57维字符表,包括:a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p、q、r、s、t、u、v、w、x、y、z、0、1、2、3、4、5、6、7、8、9、ai、ei、ao、ou、ui、ie、ue、an、en、in、un、ang、eng、ing、ong、zh、ch、sh、$、_以及*。

优选的,所述卷积层与所述池化层的计算式为:

其中表示文本序列中第i个词xi中第j到j+h-1个字符映射构成的矩阵,w为权值矩阵,b为偏置,h表示窗口大小;

假设词xi中字符经映射后长度为l,词xi得到的特征序列为:

将得到的特征序列取最大池化,得到对应词xi的拼音表示的卷积特征:

mi=max{c}。

优选的,所述利用gru递归神经网络单元对池化后的特征进行处理包括:

合并池化后的特征序列,得到文本的特征序列:

m=[m1,m2,...,ml-h+1]

通过gru递归神经网络单元对文本的特征序列进行处理。

优选的,所述输出层对隐层输出通过softmax进行分类,采用dropout技术防止所述深度学习指令分类模型过拟合。

根据本发明提供的一种面向中文文本语义理解方法,包括:

文本预处理步骤:对接收到的文本进行分词,将分词后的文本转化为拼音序列;

深度学习文本分类步骤:将拼音序列作为已训练好的深度学习文本分类模型的输入,具体包括:

输入子步骤:接收所述文本预处理步骤得到的拼音序列,将拼音序列依照字符表映射成稀疏向量,拼音序列中所有映射后的稀疏向量构成该拼音序列的稀疏表示矩阵;

卷积子步骤:采取不同窗口大小、不同权值的卷积核矩阵对稀疏表示矩阵进行特征提取,获取文本中每个词的特征序列;

池化子步骤:对得到的每个词的特征序列取最大池化,得到对应词的拼音表示的特征;

gru子步骤:利用gru递归神经网络单元对池化后的特征进行处理,得到gru隐层单元;

全连接子步骤:对gru隐层单元进行全连接计算隐层输出;

输出子步骤:对隐层输出进行分类得到文本的预测类别。

优选的,所述字符表为根据汉语拼音声韵母成分所定义的57维字符表,包括:a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p、q、r、s、t、u、v、w、x、y、z、0、1、2、3、4、5、6、7、8、9、ai、ei、ao、ou、ui、ie、ue、an、en、in、un、ang、eng、ing、ong、zh、ch、sh、$、_以及*。

优选的,所述卷积层与所述池化层的计算式为:

其中表示词xi中第j到j+h-1个字符映射构成的矩阵,w为权值矩阵,b为偏置,h表示窗口大小;

假设词xi中字符经映射后长度为l,词xi得到的特征序列为:

将得到的特征序列取最大池化,得到对应词xi的拼音表示的卷积特征:

mi=max{c}。

优选的,所述利用gru递归神经网络单元对池化后的特征进行处理包括:

合并池化后的特征序列,得到文本的特征序列:

m=[m1,m2,...,ml-h+1]

通过gru递归神经网络单元对文本的特征序列进行处理。

优选的,所述输出子步骤对隐层输出通过softmax进行分类,采用dropout技术防止所述深度学习指令分类模型过拟合。

与现有技术相比,本发明具有如下的有益效果:

本发明从中文的拼音成分构成出发,提出了一种基于汉语拼音声韵母的中文文本特征方法,应用此特征时,不需要对语句的词性进行判断,也不需要产生句法分析树等复杂的预处理过程,只需对文本进行分词,再将其转化为拼音,解决了传统特征提取方法无法度量词与词间关系、需要较多的外部先验知识、处理大规模语料库时易产生维度灾难等问题;并且,本发明以深度学习为基础,结合卷积网络在高阶特征提取及gru递归神经单元在序列处理上的优势,提出了一种深度学习指令分类模型。与传统方法相比,该模型在应对大规模语料库、复杂意图及训练与测试样本差别较大的情况时,有着明显的优势。在智能化设备越来越走进人类生活的今天,人机语音交互越来越频繁,语义理解成为推进智能化最重要的一个环节。因此,本发明具有广泛的市场前景。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明的系统框架图;

图2为本发明的分类模型示意图;

图3为本发明的拼音特征应用示例图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

本实施例以无人驾驶车的人机互动为例,实现了通过自然语言与无人驾车进行交互,包含了搜索目的地、搜索停车场、切换导航图、规划路径、播放音乐、添加经由地等共202个意图,基本覆盖了行车情景中可能应用的意图。除无人驾驶车的语音交互外,本发明亦可用于服务机器人,智能家居,语音问答系统等需要一切语音交互的应用情景。

如图1所示,本发明提供的一种面向中文文本语义理解系统包括语音识别、文本预处理、意图理解三个部分,其中语音识别可采用现有的识别技术,后两个部分是本发明中的重点内容。

文本预处理部分主要是对接收到的语音识别模块所识别出的文本进行分词,将分词后的文本转化为拼音序列。

意图理解部分中包括有语料库以及深度学习文本分类模型,语料库中预存标注有类别的原始文本作为原始训练数据,每一类别对应一种意图,格式为每行一条“意图-自然语言文本指令”形式的数据对,所述原始文本经过分词,且分词后的原始文本经过转化为拼音序列。

图2为本发明提出的深度学习文本分类模型,包括输入层、卷积层、池化层、gru层、全连接层和输出层6个层次,模型的每一层结构功能如下:

输入层:接收文本预处理部分得到的拼音序列,将拼音序列依照字符表映射成稀疏向量,拼音序列中所有映射后的稀疏向量构成该拼音序列的稀疏表示矩阵;

卷积层:采取不同窗口大小、不同权值的卷积核矩阵对稀疏表示矩阵进行特征提取,获取文本中每个词的特征序列;

池化层:对得到的每个词的特征序列取最大池化,得到对应词的拼音表示的特征;

gru层:利用gru递归神经网络单元对池化后的特征进行处理,得到gru隐层单元,gru层的输出不仅与当前输入有关,也受上一时刻输出影响,这一性质使其在处理文本时可保留重要的上下文信息;

全连接层:对gru隐层单元进行全连接计算隐层输出;

输出层:对隐层输出进行分类得到文本的预测类别。

其中,本发明根据汉语拼音中声韵母成分构成特点,定义57维字符表,包括拼音中的声母、单韵母、复韵母、数字及特殊符号,具体包括如下:

a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p、q、r、s、t、u、v、w、x、y、z、0、1、2、3、4、5、6、7、8、9、ai、ei、ao、ou、ui、ie、ue、an、en、in、un、ang、eng、ing、ong、zh、ch、sh、$、_以及*。特殊符号$、_以及*主要处理专有名词,比如我们将“徐家汇”先经处理为“$_徐家汇_$”表示专有名词作特殊处理。

卷积层与池化层运算操作如下表示:

其中表示词中第j到j+h-1个字符映射构成的矩阵,假设词xi中字符经映射后长度为l,词xi得到的特征序列为:

将得到的特征序列取最大池化,即:

mi=max{c}

得到对应词xi的拼音表示的卷积特征,整条指令的特征序列表示为:

m=[m1,m2,...,ml-h+1]。

输出层对隐层输出通过softmax进行分类,采用dropout技术防止所述深度学习指令分类模型过拟合,得到的结果例如图3所示“bo1yin1yue4”即对应“播音乐”。

同样的,本发明提供的面向中文文本语义理解方法,包括:

文本预处理步骤:对接收到的文本进行分词,将分词后的文本转化为拼音序列;

深度学习文本分类步骤:将拼音序列作为已训练好的深度学习文本分类模型的输入,具体包括:

输入子步骤:接收所述文本预处理步骤得到的拼音序列,将拼音序列依照字符表映射成稀疏向量,拼音序列中所有映射后的稀疏向量构成该拼音序列的稀疏表示矩阵;

卷积子步骤:采取不同窗口大小、不同权值的卷积核矩阵对稀疏表示矩阵进行特征提取,获取文本中每个词的特征序列;

池化子步骤:对得到的每个词的特征序列取最大池化,得到对应词的拼音表示的特征;

gru子步骤:利用gru递归神经网络单元对池化后的特征进行处理,得到gru隐层单元;

全连接子步骤:对gru隐层单元进行全连接计算隐层输出;

输出子步骤:对隐层输出进行分类得到文本的预测类别。

字符表为根据汉语拼音声韵母成分定义57维字符表,包括拼音中的声母、单韵母、复韵母、数字及特殊符号,具体包括如下:

a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p、q、r、s、t、u、v、w、x、y、z、0、1、2、3、4、5、6、7、8、9、ai、ei、ao、ou、ui、ie、ue、an、en、in、un、ang、eng、ing、ong、zh、ch、sh、$、_以及*。特殊符号$、_以及*主要处理专有名词,比如我们将“徐家汇”先经处理为“$_徐家汇_$”表示专有名词作特殊处理。

卷积层与池化层的计算式为:

其中表示词xi中第j到j+h-1个字符映射构成的矩阵,w为权值矩阵,b为偏置,h表示窗口大小;

假设词xi中字符经映射后长度为l,词xi得到的特征序列为:

将得到的特征序列取最大池化,得到对应词xi的拼音表示的卷积特征:

mi=max{c}。

gru子步骤中利用gru递归神经网络单元对池化后的特征进行处理包括:

合并池化后的特征序列,得到文本的特征序列:

m=[m1,m2,...,ml-h+1]

通过gru递归神经网络单元对文本的特征序列进行处理。

输出子步骤对隐层输出通过softmax进行分类,采用dropout技术防止所述深度学习指令分类模型过拟合。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1