一种确定句子类型的方法及装置与流程

文档序号:12120984阅读:359来源:国知局
一种确定句子类型的方法及装置与流程

本发明涉及机器人技术领域,具体地说,涉及一种确定句子类型的方法及装置。



背景技术:

随着科学技术的不断发展,信息技术、计算机技术以及人工智能技术的引入,机器人的研究已经逐步走出工业领域,逐渐扩展到了医疗、保健、家庭、娱乐以及服务行业等领域。而人们对于机器人的要求也从简单重复的机械动作提升为具有拟人问答、自主性及与其他机器人进行交互的智能机器人,人机交互也就成为决定智能机器人发展的重要因素。

聊天系统作为人机交互系统中的核心模块,在人机交互系统中扮演着举足轻重的角色。在日常的人机交互过程中,用户与机器人之间的聊天占据了绝大多数的比例。

为了能够更好地与用户进行交互,聊天系统需要能够正确识别出用户的意图。而用户说话时使用不同的语气或者稍微变换一两个字就会造成句子所属的句类发生变换,进而使得句子的意思发生改变。因此,如何准确确定出句子的句类是亟需解决的技术问题。



技术实现要素:

为解决上述问题,本发明提供了一种确定句子类型的方法,其包括:

交互信息获取步骤,获取用户输入的对话交互信息;

词向量矩阵生成步骤,根据所述对话交互信息生成对话语句,对所述对话语句进行解析,生成所述对话语句的词向量矩阵;

句类划分步骤,基于所述词向量矩阵,利用预设神经网络模型确定出所述对话语句的句子类型;

交互信息输出步骤,根据所述对话语句的句子类型,生成相应的反馈交互信息并输出。

根据本发明的一个实施例,在所述词向量矩阵生成步骤中:

对所述对话语句进行分词处理,得到所述对话语句的语句词;

生成各个语句词的词向量,根据所述各个语句词的词向量生成所述对话语句的词向量矩阵。

根据本发明的一个实施例,所述方法还包括:

神经网络训练步骤,对训练语料中的各个训练语句进行解析,得到所述各个训练语句的词向量矩阵,利用所述各个训练语句的词向量矩阵和各自的句子类型对预设神经网络进行训练,得到所述预设神经网络模型。

根据本发明的一个实施例,所述句子类型包括:陈述句、疑问句、祈使句和感叹句。

根据本发明的一个实施例,利用所述各个训练语句的词向量矩阵和各自的句子类型对预设神经网络进行训练的步骤包括:

以所述预设神经网络对词向量矩阵进行计算得到预测分类值;

将所述预测分类值与既有标准标注数值比对,并根据对比结果调整所述预设神经网络的参数。

本发明还提供了一种确定句子类型的装置,其包括:

交互信息获取模块,其用于获取用户输入的对话交互信息;

词向量矩阵生成模块,其用于根据所述对话交互信息生成对话语句,对所述对话语句进行解析,生成所述对话语句的词向量矩阵;

句类划分模块,其用于基于所述词向量矩阵,利用预设神经网络模型确定出所述对话语句的句子类型;

交互信息输出模块,其用于根据所述对话语句的句子类型,生成相应的反馈交互信息并输出。

根据本发明的一个实施例,所述词向量矩阵生成模块配置为:

对所述对话语句进行分词处理,得到所述对话语句的语句词;

生成各个语句词的词向量,根据所述各个语句词的词向量生成所述对话语句的词向量矩阵。

根据本发明的一个实施例,所述装置还包括:

神经网络训练模块,其用于对训练语料中的各个训练语句进行解析,得到所述各个训练语句的词向量矩阵,利用所述各个训练语句的词向量矩阵和各自的句子类型对预设神经网络进行训练,得到所述预设神经网络模型。

根据本发明的一个实施例,所述句子类型包括:陈述句、疑问句、祈使句和感叹句。

根据本发明的一个实施例,所述预设神经网络训练模块配置为根据如下步骤对预设神经网络进行训练:

以所述预设神经网络对词向量矩阵进行计算得到预测分类值;

将所述预测分类值与既有标准标注数值比对,并根据对比结果调整所述预设神经网络的参数。

本发明所提供的确定句子类型的方法不再像现有方法那样根据写好的识别规则来进行句子类型识别,而是基于训练好的神经网络来根据对话语句的词向量矩阵来进行句子类别的确定。本方法不再是仅仅根据对话语句的句末标点或是对话语句中的某些关键词来进行句子类型的识别,相较于现有方法,其覆盖面更广,并且不再需要繁琐的识别规则,提高了识别结果的准确性和实现过程的简便性。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要的附图做简单的介绍:

图1是根据本发明一个实施例的构建神经网络模型的流程示意图;

图2是根据本发明一个实施例的确定句子类型的方法的实现流程示意图;

图3是根据本发明一个实施例的生成对话语句的词向量矩阵的流程示意图;

图4是根据本发明一个实施例的确定句子类型的装置的结构示意图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。

同时,在以下说明中,出于解释的目的而阐述了许多具体细节,以提供对本发明实施例的彻底理解。然而,对本领域的技术人员来说显而易见的是,本发明可以不用这里的具体细节或者所描述的特定方式来实施。

另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

为了能够正确地识别出用户的意图,对话系统就需要先识别出对话语句所属的句子类型(即句类)。传统的自然语言处理技术(NLP)处理上述问题通常是根据写好的识别规则来进行语句类型的识别,例如,判断对话语句的末位是否存在“吗”、判断对话语句中是否存在否定词“没有”或“不是”等。这类方法一方面覆盖面过窄,另一方面需要指定十分繁琐的规则,还容易出现错误处理的情况。

针对现有技术中所存在的上述问题,本实施例提供了一种新的确定句子类型的方法,该方法能够非常准确地确定句子的类型,从而为对话系统理解语句意思和用户意图提供非常大的帮助。

需要指出的是,本实施例中,该方法所能够确定的句子的类型优选地包括:陈述句、疑问句、祈使句和感叹句。当然,在本发明的其他实施例中,该方法所能够确定的句子类型还可以包括其他合理类型,本发明不限于此。

本方法利用预设神经网络模型来实现句子类型的识别与划分,因此,在进行句子类别确定过程前,需要先对预设神经网络进行训练,从而得到用于进行句子类型识别的神经网络模型。

图1示出了本实施例中构建神经网络模型的流程示意图。

如图1所示,本实施例所提供的方法首先在步骤S101中对训练语料中的各个训练语句进行解析,得到各个训练语句的词向量矩阵。其中,上述训练语料中的各个训练语句均具有相应的句类标记。

具体的,例如,各个训练语句及其句类标记可以表示为:

“我想抽烟。(陈述句)”

“我可以抽烟吗?(疑问句)”

“请勿抽烟!(祈使句)”

“抽烟不好啊!(感叹句)”

在步骤S101中,通过对“我想抽烟”等语句进行分词处理,可以得到这些语句中各个语句词。随后对这些语句词进行转换,可以得到各个语句词的词向量。将这些语句词的词向量按顺序拼接,这样也就得到了该语句的词向量矩阵。本实施例中,各个训练语句的词向量矩阵优选地为二维矩阵。

需要指出的是,在本发明的不同实施例中,训练预料中所包含的带有句类标记的训练语句的数量(即训练样本数量)根据实际需要可以可以不同合理值,本发明不限于此。

在得到各个训练语句的词向量矩阵后,该方法便可以中利用这些训练语句的词向量矩阵来对预设神经网络进行训练。具体地,将训练语句的词向量矩阵作为神经网络的输入数据,将该训练语句的句子类型作为神经网络的输出,由于各个训练语句的句子类型是已知的,因此也就可以实现对神经网络的训练。

如图1所示,该方法在步骤S102利用预设神经网络对步骤S101中所得到的词向量矩阵进行计算,从而得到对话语句的预测分类值。其中,该预测分类值能够表征该对话语句的句子类型。

在得到对话语句的预测分类值后,该方法会在步骤S103中将步骤S102中所得到的预测分类值与既有标准标注数值(由于该对话语句的句类是已知的,因此其表征句类的标注数值也是已知的)进行对比,并根据对比结果调整上述预设神经网络的参数。

具体地,如图1所示,该方法会在步骤S103中计算步骤S102中所得到的预测分类值与即由标准标注数值之间的偏差,并在步骤S104中判断该偏差是否超过预设阈值。如果上述偏差超过预设阈值,那么则表示此时神经网络的相关参数并不合理,因此该方法也就会在步骤S105中调整预设神经功能网络的参数;而如果上述偏差没有超过预设阈值,那么则表示此时神经网络已经能够较好地对对话语句的语句类型进行识别,因此也就完成了预设神经网络的训练过程,从而得到预设神经网络模型。

在得到用于语句类型的神经网络模型后,此时也就可以利用该神经网络模型进行语句类型的识别,从而确定出各个对话语句的句子类型。

图2示出了本实施例所提供的确定句子类型的方法的实现流程示意图。

如图2所示,本实施例所提供的方法首先在步骤S201中获取用户输入的对话交互信息。需要指出的是,在本发明的不同实施例中,该方法在步骤S201中可以采用不同的合理方式来获取用户输入的对话交互信息,本发明不限于此。

例如,在本发明的一个实施例中,该方法可以通过语音采集设备(例如麦克风)来获取用户输入的语音信息,从而得到对话交互信息;在本发明的另一个实施例中,该方法可以通过文本采集设备(例如键盘)来获取用户输入的文本信息。

在得到上述对话交互信息后,该方法在步骤S202中根据上述对话交互信息生成对话语句。本实施例中,根据对话交互信息生成对话语句可以指对对话信息中的无意义词语或是句式进行相关转换,从而得到更加易于分析处理的数据形式。

在得到对话语句后,该方法在步骤S203中对步骤S202中所得到的对话语句进行解析,生成该对话语句的词向量矩阵。具体地,如图3所示,本实施例中,在生成对话语句的词向量矩阵时,首先在步骤S301中对该对话语句进行分词处理,从而得到该对话语句的语句词。

例如,对于对话语句“请勿抽烟!”而言,通过对该对话语句进行分词处理,可以得到诸如“请勿”、“抽烟”以及“!”的语句词。需要指出的是,在本发明的不同实施例中,对对话语句进行分词处理所使用的算法可以根据实际需要采用不同的合理算法,本发明不限于此。

在得到对话语句的语句词后,该方法在步骤S302中将每个语句词转换为各自对应的词向量。最后,该方法会在步骤S303中将步骤S302中所得到的词向量按顺序进行拼接,从而得到该对话语句的词向量矩阵。其中,该词向量矩阵优选地为二维矩阵。

例如,根据上述在步骤S301中通过分词处理所得到的“请勿”、“抽烟”以及“!”均会生成其各自对应的一特征向量(即词向量,这些词向量的维度相同),将这三个词向量按照在对话语句中的顺序进行拼接,这样也就可以得到对应于对话语句“请勿抽烟!”的词向量矩阵。

再次如图2所示,在得到对话语句的词向量矩阵后,该方法会在步骤S204中基于上述词向量矩阵,利用预设神经网络模型(例如利用图1所示的方法训练得到的模型)确定上述对话语句的句子类型。例如,对于上述对话语句“请勿抽烟”,利用预设神经网络模型可以得到该对话语句的句子类型为“祈使句”。

在得到上述对话语句的句子类型后,该方法会在步骤S205中根据该对话语句的句子类型,生成相应的反馈信息并输出。通过对对话语句的句子类型的识别,该方法使得对话系统能够更加准确地确定用户的意图,从而根据用户的意图来与用户进行更为合理以及人性化的交互。

从上述描述中可以看出,本实施例所提供的确定句子类型的方法不再像现有方法那样根据写好的识别规则来进行语句类型的识别,而是基于训练好的神经网络来根据对话语句的词向量矩阵来进行句子类别的确定。本方法不再是仅仅根据对话语句的句末标点或是对话语句中的某些关键词来进行句子类型的识别,相较于现有方法,其覆盖面更广,并且不再需要繁琐的识别规则,提高了识别结果的准确性和实现过程的简便性。

本实施例还提供了一种确定句子类型的装置,图4示出了本实施例中该装置的结构示意图。

如图4所示,本实施例所提供的确定句子类型的装置优选地包括:交互信息获取模块401、词向量矩阵生成模块402、句类划分模块403以及交互信息输出模块404。其中,句类划分模块403利用预设神经网络模型来对对话语句的句子类型进行划分。

而为了构建上述神经网络模型,该装置还包括用于对神经网络进行训练的神经网络训练模块405。其中,神经网络训练模块405能够利用标注有句子类型的对话语句来对预设神经网络进行训练,从而得到能够进行准确进行句子类型划分的神经网络模型。需要指出的是,本实施例中,神经网络训练模块405对预设神经网络进行训练的实现原理以及实现过程与上述图1所示的内容相同,故在此不再对神经网络训练模块405的相关内容进行赘述。

本实施例中,交互信息获取模块401用户获取用户输入的对话交互信息。需要指出的是,在本发明的不同实施例中,交互信息获取模块401可以采用不同的合理方式来获取用户输入的对话交互信息,本发明不限于此。而与需要获取的对话交互信息的不同,交互信息获取模块401可以采用不同的设备或器件来实现。例如,如果需要获取到的对话交互信息为语音信息,那么交互信息获取模块401也就可以相应地采用语音采集设备(例如麦克风)来实现;而如果需要获取到的对话交互信息为文本信息,那么交互信息获取模块401也就可以相应地采用文本采集设备(例如键盘)来实现。

在获取到对话交互信息后,交互信息获取模块401会将获取到的对话交互信息传输至词向量矩阵生成模块402。词向量矩阵生成模块402能够根据上述对话交互信息生成对话语句,并对该对话语句进行解析来生成该对话语句的词向量矩阵。

具体地,本实施例中,词向量矩阵生成模块402根据对话交互信息生成对话语句以及生成对话语句的词向量矩阵的具体实现原理以及实现过程与上述图1中步骤S102以及步骤S103所阐述的内容类似,故在此不再对词向量矩阵生成模块402进行赘述。

在得到对话语句的词向量矩阵后,词向量矩阵生成模块402会将上述词向量矩阵传输至句类划分模块403,以由句类划分模块403利用事先构建的神经网络模型(即预设神经网络模型)来根据上述词向量矩阵确定出相应的句子类型,而神经网络模型所确定出的句子类型也即对话语句的句子类型。

本实施例中,句类划分模块403在确定出对话语句的句子类型后,会将该对话语句的句子类型传输至交互信息输出模块404。交互信息模块404则可以根据该对话语句的句子类型,生成相应的反馈信息并输出。通过对对话语句的句子类型的准确识别,该装置可以使得对话系统能够更加准确地确定用户的意图,从而根据用户的意图来与用户进行更为合理以及人性化的交互。

应该理解的是,本发明所公开的实施例不限于这里所公开的特定结构或处理步骤,而应当延伸到相关领域的普通技术人员所理解的这些特征的等同替代。还应当理解的是,在此使用的术语仅用于描述特定实施例的目的,而并不意味着限制。

说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。

虽然上述示例用于说明本发明在一个或多个应用中的原理,但对于本领域的技术人员来说,在不背离本发明的原理和思想的情况下,明显可以在形式上、用法及实施的细节上作各种修改而不用付出创造性劳动。因此,本发明由所附的权利要求书来限定。

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