用户意图识别方法和装置、自动应答系统与流程

文档序号:12601987阅读:335来源:国知局
用户意图识别方法和装置、自动应答系统与流程
本发明涉及计算机
技术领域
,特别涉及一种用户意图识别方法和装置、自动应答系统。
背景技术
:目前,人工自动应答客服机器人可以自动回答客户的业务类咨询问题及部分闲聊问题。智能机器人主要包括意图识别和应答这两个核心模块。传统的意图识别采用逻辑回归模型,属于有人工监督的模型,需要大量的人力进行标注,效果有待提升。此外,意图识别需要考虑不同场景,场景可能是上文、用户入口、用户正在咨询的具体商品、商品品类等,如何有效的整合这些数据到意图识别中是一个极待解决的问题。为了克服这一缺陷,现有的用户意图识别方法基于对用户数据的采集,通过对用户的行为进行分析,利用规则或者机器学习方法对用户的真正意图进行识别,从而给用户提供不同的服务。目前在现有的交互式问答技术中,首先收集真实环境中的交互式问答语料,然后对问答语料进行统计分析,统计出用户意图类别,包括以信息检索为目的的问句、功能咨询等类别,并结合多层次语言学特征,利用机器学习方法,朴素贝叶斯(NaiveBayes,简称:NB)、支持向量机(SupportVectorMachine,SVM,简称:SVM)、关联规则分类模型(ClassificationBasedonPredictiveAssociationRules,简称:CPAR)等模型进行自动分类,对不同意图类型的输入,制定不同类型的应答策略。例如在对用户进行信息投放时,可从各用户的历史行为日志中确定相关应用的日志进行模式分析,对用户日志进行训练建模,把待识别的用户相关行为日志进行分类和识别,从而有助于针对用户进行更准确的信息投放。然而,由于目前传统的用户意图识别算法用的都是基于规则的方法和传统机器学习算法,不能对海量的数据进行特征抽取,同时线性的学习方法对用户的意图识别效果比较有限,只能在一定程度上提升用户满意度。此外,目前大多数用户意图识别技术都应用在推荐产品和信息投放,广告等应用服务方面,在人工智能和自动应答方面还没有得到具体应用。技术实现要素:本发明实施例提供一种用户意图识别方法和装置、自动应答系统,通过调整深层神经网络的架构,以便使深度学习更适用于海量数据、大量类别的情况,从而提高用户意图识别的准确性。根据本发明的一个方面,提供一种用户意图识别方法,包括:神经网络模块对输入的用户特征信息进行处理,以得到学习结果;输出层模块利用与分类处理相关的权值和阈值对学习结果进行分类处理,以识别出用户意图;其中神经网络模块执行以下步骤:利用与卷积运算相关的权值和阈值对接收到的用户特征信息进行卷积运算;利用与局部归一化处理相关的权值和阈值对卷积运算结果进行局部归一化处理;利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理,以得到学习结果。在一个实施例中,在具有多个神经网络模块的情况下,将前一神经网络模块的输出作为下一神经网络模块的输入,将最后一个神经网络模块的输出作为学习结果。在一个实施例中,利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理包括:利用与第一全连接叠加处理相关的权值和阈值对局部归一化结果进行第一全连接叠加处理;利用与第二全连接叠加处理相关的权值和阈值对第一全连接叠加处理结果进行第二全连接叠加处理,以得到学习结果。在一个实施例中,在进行局部归一化处理时,在局部归一化处理参数集合中,以预定比例随机丢弃权值和相应阈值;利用局部归一化处理参数集合中剩余的权值和阈值对卷积运算结果进行局部归一化处理。在一个实施例中,在进行学习训练时,利用反向传播算法对神经网络模块和输出层模块中相应的权值和阈值进行调整,其中与所述神经网络模块相应的权值和阈值包括与卷积运算相关的权值和阈值、与局部归一化处理相关的权值和阈值、以及与全连接叠加处理相关的权值和阈值,与所述输出层模块相应的权值和阈值为与分类处理相关的权值和阈值。在一个实施例中,利用反向传播算法对神经网络模块和输出层模块中相应的权值和阈值进行调整的步骤包括:获取神经网络模块中的运算结果和输出层模块的输出结果,其中神经网络模块中的运算结果包括卷积运算结果、局部归一化处理结果和全连接叠加处理结果;根据神经网络模块中的运算结果与目标运算结果之间的差值、以及输出层模块的输出结果与目标输出结果之间的差值,确定神经网络模块和输出层模块中相应的权值调整量和阈值调整量;根据权值调整量和阈值调整量,对神经网络模块和输出层模块中相应的权值和阈值进行相应的调整。在一个实施例中,在对神经网络模块和输出层模块中相应的权值和阈值进行相应调整后,在输出层模块的输出总误差超过预定值的情况下,执行获取神经网络模块中的运算结果和输出层模块的输出结果的步骤。根据本发明的另一方面,提供一种用户意图识别装置,包括输入层模块、神经网络模块和输出层模块,其中:输入层模块,用于输入用户特征信息;神经网络模块,用于对输入的用户特征信息进行处理,以得到学习结果;输出层模块,用于利用与分类处理相关的权值和阈值对学习结果进行分类处理,以识别出用户意图;在神经网络模块中包括卷积层单元、局部归一化层单元和全连接层单元,其中:卷积层单元,用于利用与卷积运算相关的权值和阈值对接收到的用户特征信息进行卷积运算;局部归一化层单元,用于利用与局部归一化处理相关的权值和阈值对卷积运算结果进行局部归一化处理;全连接层单元,用于利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理。在一个实施例中,在具有多个神经网络模块的情况下,将前一神经网络模块的输出作为下一神经网络模块的输入,将最后一个神经网络模块的输出作为学习结果。在一个实施例中,全连接层单元包括:第一全连接层子单元,用于利用与第一全连接叠加处理相关的权值和阈值对局部归一化结果进行第一全连接叠加处理;第二全连接层子单元,用于利用与第二全连接叠加处理相关的权值和阈值对第一全连接层子单元的全连接叠加处理结果进行第二全连接叠加处理,以得到学习结果。在一个实施例中,局部归一化层单元具体在进行局部归一化处理时,在局部归一化处理参数集合中,以预定比例随机丢弃权值和相应阈值,利用局部归一化处理参数集合中剩余的权值和阈值对卷积运算结果进行局部归一化处理。在一个实施例中,上述装置还包括参数训练模块,其中:参数训练模块,用于在进行学习训练时,利用反向传播算法对神经网络模块和输出层模块中相应的权值和阈值进行调整,其中与所述神经网络模块相应的权值和阈值包括与卷积运算相关的权值和阈值、与局部归一化处理相关的权值和阈值、以及与全连接叠加处理相关的权值和阈值,与所述输出层模块相应的权值和阈值为与分类处理相关的权值和阈值。在一个实施例中,参数训练模块包括输出获取单元、调整值确定单元和参数调整单元,其中:输出获取单元,用于获取神经网络模块中的运算结果和输出层模块的输出结果,其中神经网络模块中的运算结果包括卷积运算结果、局部归一化处理结果和全连接叠加处理结果;调整值确定单元,用于根据神经网络模块中的运算结果与目标运算结果之间的差值、以及输出层模块的输出结果与目标输出结果之间的差值,确定神经网络模块和输出层模块中相应的权值调整量和阈值调整量;参数调整单元,用于根据权值调整量和阈值调整量,对神经网络模块和输出层模块中相应的权值和阈值进行相应的调整。在一个实施例中,参数训练模块还包括训练控制单元,其中:训练控制单元,用于在参数调整单元对神经网络模块和输出层模块中相应的权值和阈值进行相应调整后,在输出层模块的输出总误差超过预定值的情况下,指示输出获取单元执行获取神经网络模块中的运算结果和输出层模块的输出结果的操作。根据本发明的另一方面,提供一种用户意图识别装置,包括:存储器;与所述存储器耦合的处理器,所述处理器被配置为基于存储器存储的指令执行如上述任一实施例涉及的用户意图识别方法。根据本发明的另一方面,提供一种自动应答系统,包括如上述任一实施例涉及的用户意图识别装置,以及应答装置,用于根据用户意图识别装置识别出的用户意图,生成相应的应答内容并提供给用户。通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明用户意图识别方法一个实施例的示意图。图2为本发明文本分类架构一个实施例的示意图。图3为现有技术中卷积神经网络架构示意图。图4为本发明深层神经网络架构一个实施例的示意图。图5为本发明深层神经网络架构另一实施例的示意图。图6为本发明神经网络训练一个实施例的示意图。图7为神经网络结构示意图。图8为本发明用户意图识别装置一个实施例的示意图。图9为本发明用户意图识别装置另一实施例的示意图。图10为本发明参数训练模块一个实施例的示意图。图11为本发明用户意图识别装置另一实施例的示意图。图12为本发明自动应答系统一个实施例的示意图。图13为本发明意图识别分类正确率随时间变化的示意图具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。深度学习是通过自动学习特征,并对特征分层提取,即从低层到高层逐步提取,并且高层特征有低层特征组合,从低层到高层的特征表示越来越抽象,越来越能表现语义或者意图。而抽象层越高,猜测的可能性就越少,就越利于分类。从而避免了人为提取特征的复杂繁多与不准确性,且能提取到更抽象的语义特征。因此本发明将深度学习应用于用户意图识别,以获得更好的用户体验。图1为本发明用户意图识别方法一个实施例的示意图。如图1所示,本实施例的方法步骤如下:步骤101,神经网络模块对输入的用户特征信息进行处理,以得到学习结果。其中在神经网络模块中,可执行以下步骤以进行深度学习:利用与卷积运算相关的权值和阈值对接收到的用户特征信息进行卷积运算,利用与局部归一化处理相关的权值和阈值对卷积运算结果进行局部归一化处理,利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理,以得到学习结果。意图识别可以看成是一个短文本分类问题,可以把用户的一句话表示成一个文本,并对之进行识别和分类。分类架构如图2所示。分类过程主要分为两部分:训练过程21和测试过程22。其中训练过程21包括:步骤211,对训练样本进行文本的预处理;步骤212,从预处理后的训练样本中提取特征;步骤213,对所提取的特征进行选择和降维处理;步骤214,基于训练样本的特征处理,利用深度卷积神经网络构建分类器。同时测试过程22包括:步骤221,对测试文本进行特征提取、选择和降维处理;步骤222,针对经处理的测试文本特征,利用步骤214所构建的分类器进行意图分类;步骤223,根据意图分类处理得到最后分类结果。目前使用的卷积神经网络架构如图3所示,包括交替设置的卷积层31和池化层32。例如,可将需要处理的文本信息表示成向量,然后通过多次的卷积运算和池化(pooling)处理,通过对特征进行重构,最后得到一个固定长度的特征向量,将其输入到全连接层进行分类。通过实验发现,传统的卷积神经网络架构并不能很好地用于用户意图识别。为此,本发明提出对传统的卷积神经网络架构进行调整,如图4所示,该架构包括输入层41、多个神经网络模块(作为示例,这里仅给出了神经网络模块42和神经网络模块4n)、softmax激活层44、softmax层45和输出层46,其中每个神经网络模块具有相同的配置,例如神经网络模块42中包括卷积层421、局部归一化层422和全连接层423,神经网络模块4n中包括卷积层4n1、局部归一化层4n2和全连接层4n3,即神经网络模块对输入样本首先进行卷积,然后进行局部归一化和全连接处理。从图4中可以看到,在调整后的卷积神经网络架构中,去除了池化层,在架构中设置至少一个神经网络模块。在设置多个神经网络模块的情况下,输入的用户信息依次通过多个神经网络模块。即,在具有多个神经网络模块的情况下,将前一神经网络模块的输出作为下一神经网络模块的输入,将最后一个神经网络模块的输出作为学习结果。其中,设置局部归一化层的目的是为了确保训练能够收敛,梯度传递不会消失。可选地,在进行局部归一化处理时,在局部归一化处理参数集合中,以预定比例随机丢弃权值和相应阈值,利用局部归一化处理参数集合中剩余的权值和阈值对卷积运算结果进行局部归一化处理。设置全连接层的目的是为了拟合非线性函数关系。在一个神经网络模块中,可设置一个全连接层,也可设置多个全连接层,即对全连接叠加处理结果再次进行全连接叠加处理。通过实验发现,设置两个全连接层比设置一个全连接层要提高用户意图识别分类正确率2%左右,而设置三个或更多全连接层,分类正确率并未提高,而会降低1%左右,这是由于设置过多的全连接层会导致出现过拟合问题。因此,上述利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理的步骤可包括:利用与第一全连接叠加处理相关的权值和阈值对局部归一化结果进行第一全连接叠加处理,利用与第二全连接叠加处理相关的权值和阈值对第一全连接叠加处理结果进行第二全连接叠加处理,以得到学习结果。此外,通过实验还发现,在输入层和输出层之间,设置两个神经网络模块的性能优于设置一个神经网络模块的性能。同时还发现,当神经网络模块的数目大于2时效果反而会变差,并且分析速度也会变慢。本发明深层神经网络架构一个优选示例如图5所示。其中,该架构包括输入层51、神经网络模块52和53、softmax激活层54、softmax层55和输出层56,其中每个神经网络模块具有相同的配置,例如神经网络模块52中包括卷积层521、局部归一化层522、以及两个全连接层523和524,神经网络模块53中包括卷积层531、局部归一化层532、以及两个全连接层533和534。在这种架构下的神经网络系统参数可如表1所示。当然,系统参数并非是固定不变的,需要针对特定的业务数据进行优化调整。类型块大小核数扩边大小步长卷积层5*51621Dropout层(0.3)----全连接层784---全连接层784---卷积层3*31611Dropout层(0.3)----全连接层256---全连接层68---softmax----表1其中在表1中,Dropout层即为局部归一化层,括号中的0.3代表在进行局部归一化处理时,在局部归一化处理参数集合中,以30%的比例随机丢弃权值和相应阈值。丢弃比例越大意味着丢弃的参数越多,则学习越慢,丢弃比例过大会出现不收敛的情况;丢弃比例越小意味着丢弃的参数越少,丢弃比例过小容易出现过拟合的情况。经过实际训练,选择0.3作为丢弃比例。步骤102,输出层模块利用与分类处理相关的权值和阈值对学习结果进行分类处理,以识别出用户意图。例如,某个一级品类的意图分类有68类,输入时按照相应的分词方法构造词出现向量,经过相应处理后有4096维,输入规模就是64×64×1,经过相应的分类处理,输出规模为68×1,根据输出矢量中的最大值可确定用户意图。另外需要说明的是,由于卷积神经网络的输出通常采用softmax形式,因此在输出层前还设置有softmax激活层和softmax层,由于该部分并不是本发明的发明点所在,因此这里不展开描述。基于本发明上述实施例提供的用户意图识别方法,通过对卷积神经网络的架构进行调整,从而使深度学习更适用于海量数据、大量类别的情况,以提高用户意图识别的准确性。为了使神经网络系统对用户意图进行识别,需要对神经网络系统进行训练。例如,可利用反向传播(Backpropagation,简称:BP)算法对神经网络模块和输出层模块中相应的权值和阈值进行调整,其中与所述神经网络模块相应的权值和阈值包括与卷积运算相关的权值和阈值、与局部归一化处理相关的权值和阈值、以及与全连接叠加处理相关的权值和阈值,与所述输出层模块相应的权值和阈值为与分类处理相关的权值和阈值。即,将标注好类别的样本进行前期预处理,变成文本向量作为输入,经过网络逐层提取文本中的特征,进入分类器对其分类,输出文本类别,然后将网络输出的类别与事先标注的类别作比较,将其差值反馈给网络,不断调整网络参数,经过多次循环迭代,直到分类准确率达到我们预期的标准,则网络停止迭代,训练结束。可选地,在进行学习训练时,上述利用反向传播算法对神经网络模块和输出层模块中相应的权值和阈值进行调整的步骤可如图6所示。其中:步骤601,获取神经网络模块中的运算结果和输出层模块的输出结果。其中神经网络模块中的运算结果包括卷积运算结果、局部归一化处理结果和全连接叠加处理结果。步骤602,根据神经网络模块中的运算结果与目标运算结果之间的差值、以及输出层模块的输出结果与目标输出结果之间的差值,确定神经网络模块和输出层模块中相应的权值调整量和阈值调整量。步骤603,根据权值调整量和阈值调整量,对神经网络模块和输出层模块中相应的权值和阈值进行相应的调整。步骤604,判断输出层模块的输出总误差是否超过预定值。若输出层模块的输出总误差超过预定值,则重复执行步骤601;若输出层模块的输出总误差未超过预定值,则执行步骤605。步骤605,训练结束。下面通过具体示例对神经网络的训练过程进行说明。神经网络的结构如图7所示。其中,设输入层、中间层和输出层的单元数分别是N、L和M。X=(x1,x2,…,xN)是加到网络的输入矢量,H=(h1,h2,…,hL)是中间层输出矢量,Y=(y1,y2,…,yM)是网络的实际输出矢量,并且用D=(d1,d2,…,dM)来表示训练组中各模式的目标输出矢量。输入单元i到中间层隐单元j的权值是Vij,而隐单元j到输出单元k的权值是Wjk。另外用θk和来分别表示输出单元和中间层隐单元的阈值。在意图识别系统中,输入层即为用户输入问题文本的向量形式,中间层是对其提取的特征,输出层输出用户输入文本所属的类别。为了方便理解和实现,我们给出了神经网络的训练过程:1)选定训练组。从样本集中分别随机地选取N(如300)个样本作为训练组。训练组即为用户输入的问题文本。2)将各权值Vij,Wjk和阈值θk置成小的接近于0的随机值,并初始化精度控制参数ε和学习率α。3)从训练组中取一个输入模式X加到神经网络,并给定它的目标输出矢量D。4)计算出一个中间层输出矢量H,再计算出网络的实际输出矢量Y。5)将输出矢量中的元素yk与目标矢量中的元素dk进行比较,计算出相应的输出误差项式,如公式(1)所示:δk=(dk-yk)yk(1-yk)(1)同时,对中间层的隐单元也计算出相应的误差项式,如公式(2)所示:δj=hj(1-hj)Σk=0M-1δkWjk---(2)]]>6)依次计算出各权值的调整量,如公式(3)和公式(4)所示:ΔWjk(n)=(α/(1+L))*(ΔWjk(n-1)+1)*δk*hj(3)ΔVij(n)=(α/(1+N))*(ΔVij(n-1)+1)*δk*hj(4)相应的阈值调整量如公式(5)和公式(6)所示:Δθk(n)=(α/(1+L))*(Δθk(n-1)+1)*δk(5)Δφj(n)=(α/(1+L))*(Δφj(n-1)+1)*δj(6)7)调整相应的权值,如公式(7)和公式(8)所示:Wjk(n+1)=Wjk(n)+ΔWjk(n)(7)Vij(n+1)=Vij(n)+ΔVij(n)(8)同时调整相应的阈值,如公式(9)和公式(10)所示:θk(n+1)=θk(n)+Δθk(n)(9)φj(n+1)=φj(n)+Δφj(n)(10)8)对M个输出节点处理后,判断指标是否满足精度要求,即判断E≤ε是否成立,其中E是总误差函数,如公式(11)所示:E=12Σk=0M-1(dk-yk)2---(11)]]>如果条件不满足,就返回步骤3)继续迭代。如果条件满足就进入下一步。9)训练结束,将权值和阈值保存在文件中。这时可以认为各个权值已经达稳定,分类器形成。再一次进行训练时,直接从文件导出权值和阈值进行训练,不需要进行初始化。通过上述训练,可将相应的网络参数调整至最佳状态,此时神经网络系统就可以投入使用了。图8为本发明用户意图识别装置一个实施例的示意图。如图8所示,该装置包括输入层模块81、神经网络模块82和输出层模块83。其中:输入层模块81输入用户特征信息,神经网络模块82对输入的用户特征信息进行处理,以得到学习结果,输出层模块83根据对所述学习结果进行分类处理,以识别出用户意图。其中在神经网络模块82中包括卷积层单元821、局部归一化层单元822和全连接层单元823。其中:卷积层单元821利用与卷积运算相关的权值和阈值对接收到的用户信息进行卷积运算,局部归一化层单元822利用与局部归一化处理相关的权值和阈值对卷积运算结果进行局部归一化处理,全连接层单元823利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理。相对于传统的神经网络架构,本发明去除了池化层,每个神经网络模块中包括卷积层、局部归一化层和全连接层。其中设置局部归一化层的目的是为了确保训练能够收敛,梯度传递不会消失。设置全连接层的目的是为了拟合非线性函数关系。可选地,局部归一化层单元822具体在进行局部归一化处理时,在局部归一化处理参数集合中,以预定比例随机丢弃权值和相应阈值,利用局部归一化处理参数集合中剩余的权值和阈值对卷积运算结果进行局部归一化处理。在一个神经网络模块中,可设置一个全连接层,也可设置多个全连接层,即对全连接叠加处理结果再次进行全连接叠加处理。通过实验发现,设置两个全连接层比设置一个全连接层要提高用户意图识别分类正确率2%左右,而设置三个或更多全连接层,分类正确率并未提高,而会降低1%左右,这是由于设置过多的全连接层会导致出现过拟合问题。例如,如图9所示,每个全连接层单元中可包括两个全连接子单元,其中第一全连接层子单元利用与第一全连接叠加处理相关的权值和阈值对局部归一化结果进行第一全连接叠加处理;第二全连接层子单元利用与第二全连接叠加处理相关的权值和阈值对第一全连接层子单元的全连接叠加处理结果进行第二全连接叠加处理,以得到所述学习结果。此外,在输入层模块81和输出层模块83之间可设置多个神经网络模块。在设置多个神经网络模块的情况下,输入的用户信息依次通过多个神经网络模块。通过实验还发现,在输入层和输出层之间,设置两个神经网络模块的性能优于设置一个神经网络模块的性能。同时还发现,当神经网络模块的数目大于2时效果反而会变差,并且分析速度也会变慢。可选地,如图9所示,除了输入层模块91、第一神经网络模块92和输出层模块93外,还包括第二神经网络模块94。第一神经网络模块92包括相应的卷积层单元921、局部归一化层单元922、全连接层单元923,其中全连接层单元923包括第一全连接层子单元9231和第二全连接层子单元9232。与第一神经网络模块92相应的是,第二神经网络模块94包括相应的卷积层单元941、局部归一化层单元942、全连接层单元943,其中全连接层单元943包括第一全连接层子单元9431和第二全连接层子单元9432。此外,由于卷积神经网络的输出通常采用softmax形式,因此输出层模块83中可设置有相应的softmax激活层、softmax层和输出层。可选地,如图9所示,在用户意图识别装置中还包括参数训练模块95,用于在进行学习训练时,利用反向传播算法对神经网络模块和输出层模块中相应的权值和阈值进行调整,其中与所述神经网络模块相应的权值和阈值包括与卷积运算相关的权值和阈值、与局部归一化处理相关的权值和阈值、以及与全连接叠加处理相关的权值和阈值,与所述输出层模块相应的权值和阈值为与分类处理相关的权值和阈值。如图10所示,参数训练模块包括输出获取单元1001、调整值确定单元1002和参数调整单元1003。其中:输出获取单元1001在进行学习训练时,获取神经网络模块中的运算结果和输出层模块的输出结果,其中神经网络模块中的运算结果包括卷积运算结果、局部归一化处理结果和全连接叠加处理结果。调整值确定单元1002根据神经网络模块中的运算结果与目标运算结果之间的差值、以及输出层模块的输出结果与目标输出结果之间的差值,确定神经网络模块和输出层模块中相应的权值调整量和阈值调整量。参数调整单元1003根据权值调整量和阈值调整量,对神经网络模块和输出层模块中相应的权值和阈值进行相应的调整。可选地,如图10所示,参数训练模块还包括训练控制单元1004。其中,训练控制单元1004在参数调整单元1003对神经网络模块和输出层模块中相应的权值和阈值进行相应调整后,在输出层模块的输出总误差超过预定值的情况下,指示输出获取单元1001执行获取神经网络模块中的运算结果和输出层模块的输出结果的操作。通过上述训练,可将相应的网络参数调整至最佳状态。可选地,输出获取单元1001、调整值确定单元1002、参数调整单元1003和训练控制单元1004可采用上述公式(1)-公式(11)中的相应公式进行处理,以便完成神经网络的训练学习。图11为本发明用户意图识别装置另一实施例的示意图。如图11所示,该装置可包括存储器1101和处理器1102,其中:存储器1101用于存储指令,处理器1102耦合到存储器1101,处理器1102被配置为基于存储器1101存储的指令执行实现如图1和图6中任一实施例涉及的方法。其中,存储器1101可以包含高速RAM存储器,也可还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1101也可以是存储器阵列。存储器1101还可能被分块,并且块可按一定的规则组合成虚拟卷。处理器1102可以是一个中央处理器CPU,或者可以是专用集成电路ASIC(ApplicationSpecificIntegratedCircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。此外,该装置还包括通信接口1103,用于与其它设备进行信息交互。同时,该装置还包括总线1104,处理器1102、通信接口1103、以及存储器1101通过总线1104完成相互间的通信。图12为本发明自动应答系统一个实施例的示意图。该系统包括应答装置1201和用户意图识别装置1202。其中用户意图识别装置1202为图8-图11中任一实施例涉及的用户意图识别装置,应答装置1201根据用户意图识别装置1202识别出的用户意图,生成相应的应答内容并提供给用户。通过将本发明应用于京东智能客服机器人(JIMI),从而使JIMI更智能,能够解决更多需要人工客服解决的问题,极大地降低了人工成本。例如,在将本发明应用于京东自动客服应对系统时,采取了服装品类的用户问题进行意图识别实验设计,图13给出了在应用本发明后的意图识别分类正确率随时间变化的情况。从图13中可以看出,通过对神经网络架构的改进,以及神经网络参数的不断学习训练,意图识别的准确率从最初的78.8%提高到87.05%。由此可以看到,本发明有效提高了系统的识别准确率和用户体验。此外,本发明还提供一种或多种具有计算机可执行指令的非瞬时性计算机可读介质,所述指令在由计算机执行时,执行用户意图识别方法,该方法包括:神经网络模块对输入的用户特征信息进行处理,以得到学习结果,输出层模块利用与分类处理相关的权值和阈值对所述学习结果进行分类处理,以识别出用户意图。其中所述神经网络模块执行以下步骤:利用与卷积运算相关的权值和阈值对接收到的用户特征信息进行卷积运算,利用与局部归一化处理相关的权值和阈值对卷积运算结果进行局部归一化处理,利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理,以得到所述学习结果。其中,在具有多个神经网络模块的情况下,将前一神经网络模块的输出作为下一神经网络模块的输入,将最后一个神经网络模块的输出作为所述学习结果。可选地,上述利用与全连接叠加处理相关的权值和阈值对局部归一化结果进行全连接叠加处理的步骤可包括:利用与第一全连接叠加处理相关的权值和阈值对局部归一化结果进行第一全连接叠加处理,利用与第二全连接叠加处理相关的权值和阈值对第一全连接叠加处理结果进行第二全连接叠加处理,以得到所述学习结果。可选地,在进行局部归一化处理时,在局部归一化处理参数集合中,以预定比例随机丢弃权值和相应阈值,利用局部归一化处理参数集合中剩余的权值和阈值对卷积运算结果进行局部归一化处理。此外,在进行学习训练时,可利用反向传播算法对所述神经网络模块和输出层模块中相应的权值和阈值进行调整,其中与神经网络模块相应的权值和阈值包括与卷积运算相关的权值和阈值、与局部归一化处理相关的权值和阈值、以及与全连接叠加处理相关的权值和阈值,与输出层模块相应的权值和阈值为与分类处理相关的权值和阈值。可选地,利用反向传播算法对所述神经网络模块和输出层模块中相应的权值和阈值进行调整的步骤可包括:获取所述神经网络模块中的运算结果和输出层模块的输出结果,其中所述神经网络模块中的运算结果包括卷积运算结果、局部归一化处理结果和全连接叠加处理结果;根据所述神经网络模块中的运算结果与目标运算结果之间的差值、以及输出层模块的输出结果与目标输出结果之间的差值,确定所述神经网络模块和输出层模块中相应的权值调整量和阈值调整量;根据所述权值调整量和阈值调整量,对所述神经网络模块和输出层模块中相应的权值和阈值进行相应的调整。在输出层模块的输出总误差超过预定值的情况下,执行获取所述神经网络模块中的运算结果和输出层模块的输出结果的步骤;在输出层模块的输出总误差未超过预定值的情况下,结束训练。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1