基于人工智能的问题分类方法以及装置与流程

文档序号:12124675阅读:243来源:国知局
基于人工智能的问题分类方法以及装置与流程

本发明涉及信息处理技术领域,尤其涉及一种基于人工智能的问题分类方法以及装置。



背景技术:

人工智能(Artificial Intelligence,英文缩写为AI)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。

随着互联网的快速发展以及人工智能的普及,越来越多的服务是通过让用户向服务中心(例如,Call Center(呼叫中心),或者在线的设置于网站上的帮助中心等)以提问的方式来给该用户提供售后、售前、咨询等各种类型的服务。

相关技术中,服务中心通常是根据用户的手动选择等方式向用户提供与所提问题最相关的应答人员,例如,服务中心为用户提供售后、售前、咨询等服务时,往往需要用户通过拨号键盘或者多级菜单选择的方式来找到应答人员。但是,这种方式往往需要用户与服务中心进行多次交互,容易出错,并且如果某个菜单选择错误往往需要用户从头开始,影响用户的服务体验,同时也会因为并没有匹配到适合的应答人员而降低服务中心的运行效率。



技术实现要素:

本发明的目的旨在至少在一定程度上解决上述的技术问题之一。

为此,本发明的第一个目的在于提出一种基于人工智能的问题分类方法。该方法可以减少用户的操作步骤,减少用户与服务中心的交互,同时提升了整个服务中心的运行效率。

本发明的第二个目的在于提出一种基于人工智能的问题分类装置。

本发明的第三个目的在于提出一种非临时性计算机可读存储介质。

本发明的第四个目的在于提出一种计算机程序产品。

为达到上述目的,本发明第一方面实施例提出的基于人工智能的问题分类方法,包括:获取用户输入的问题的文本内容,并对所述文本内容进行分词处理以得到多个分词;获取所述多个分词的隐层表示向量;根据所述多个分词的隐层表示向量生成所述文本内容的第一向量;根据所述文本内容的第一向量和预设的分类模型,确定与所述问题对应的目标应答人员,并将所述目标应答人员分配给所述用户。

本发明实施例的基于人工智能的问题分类方法,可获取用户输入的问题的文本内容,并对文本内容进行分词处理以得到多个分词,之后,获取多个分词的隐层表示向量,并根据多个分词的隐层表示向量生成文本内容的第一向量,最后,根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。即根据用户输入的问题,自动地寻找到最适合该用户的应答人员进行问题应答,减少了用户的操作步骤,减少了用户与服务中心的交互,同时提升了整个服务中心的运行效率。

为达到上述目的,本发明第二方面实施例提出的基于人工智能的问题分类装置,包括:第一获取模块,用于获取用户输入的问题的文本内容;分词模块,用于对所述文本内容进行分词处理以得到多个分词;第二获取模块,用于获取所述多个分词的隐层表示向量;生成模块,用于根据所述多个分词的隐层表示向量生成所述文本内容的第一向量;分类模块,用于根据所述文本内容的第一向量和预设的分类模型,确定与所述问题对应的目标应答人员,并将所述目标应答人员分配给所述用户。

本发明实施例的基于人工智能的问题分类装置,可通过第一获取模块获取用户输入的问题的文本内容,分词模块对文本内容进行分词处理以得到多个分词,第二获取模块获取多个分词的隐层表示向量,生成模块根据多个分词的隐层表示向量生成文本内容的第一向量,分类模块根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。即根据用户输入的问题,自动地寻找到最适合该用户的应答人员进行问题应答,减少了用户的操作步骤,减少了用户与服务中心的交互,同时提升了整个服务中心的运行效率。

为达到上述目的,本发明第三方面实施例提出的非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器被执行时,使得电子设备能够执行一种基于人工智能的问题分类方法,所述方法包括:获取用户输入的问题的文本内容,并对所述文本内容进行分词处理以得到多个分词;获取所述多个分词的隐层表示向量;根据所述多个分词的隐层表示向量生成所述文本内容的第一向量;根据所述文本内容的第一向量和预设的分类模型,确定与所述问题对应的目标应答人员,并将所述目标应答人员分配给所述用户。

为达到上述目的,本发明第四方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种基于人工智能的问题分类方法,所述方法包括:获取用户输入的问题的文本内容,并对所述文本内容进行分词处理以得到多个分词;获取所述多个分词的隐层表示向量;根据所述多个分词的隐层表示向量生成所述文本内容的第一向量;根据所述文本内容的第一向量和预设的分类模型,确定与所述问题对应的目标应答人员,并将所述目标应答人员分配给所述用户。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1是根据本发明一个实施例的基于人工智能的问题分类方法的流程图;

图2是根据本发明一个实施例的确定与问题对应的目标应答人员的流程图;

图3是根据本发明一个实施例的基于人工智能的问题分类装置的结构示意图;

图4是根据本发明一个具体实施例的基于人工智能的问题分类装置的结构示意图;

图5是根据本发明另一个具体实施例的基于人工智能的问题分类装置的结构示意图;

图6是根据本发明又一个具体实施例的基于人工智能的问题分类装置的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于人工智能的问题分类方法以及装置。

图1是根据本发明一个实施例的基于人工智能的问题分类方法的流程图。需要说明的是,本发明实施例的基于人工智能的问题分类方法可应用于本发明实施例的基于人工智能的问题分类装置。该本发明实施例的基于人工智能的问题分类装置可适用于服务中心为用户分配应答人员以提供售后、售前、咨询等类型的服务的场景中。

如图1所示,该基于人工智能的问题分类方法可包括:

S110,获取用户输入的问题的文本内容,并对文本内容进行分词处理以得到多个分词。

举例而言,假设本发明实施例的基于人工智能的问题分类方法应用于本发明实施例的基于人工智能的问题分类装置,该基于人工智能的问题分类配置被应用于移动终端,该移动终端为用户提供用于输入问题的应用程序或接口,用户可以通过该应用程序或接口输入自己想问的问题。在检测到用户已完成问题的输入时,可获取用户所输入的问题的文本内容,并利用分词工具对该文本内容进行分词处理,得到该文本内容中的多个分词,例如,可将文本内容切分成n个分词,如w1、w2、…wn。作为一种示例,以中文分词工具为例,该分词工具可为IKAnalyzer分词工具、PaodingAnalyzer分词工具等,可以理解,上述给出的中文分词工具仅是一种示例,不能对本发明的具体限定。

S120,获取多个分词的隐层表示向量。

具体而言,在本发明的一个实施例中,可获取该多个分词的词向量,并基于神经网络模型,将该多个分词的词向量转换为多个分词的隐层表示向量。更具体地,可利用word2vec模型对该多个分词进行训练以得到该分词的词向量,可以理解,词向量具有良好的语义特性,是表示词语特征的常用方式,其中,词向量的每一维的值代表一个具有一定的语义和语法上解释的特征,所以,可以将词向量的每一维称为一个词语特征。在得到该多个分词的词向量之后,可使用神经网络模型,将该多个分词的词向量转换为该多个分词的隐层表示向量。作为一种示例,该神经网络模型可为循环网络模型RNN、多层反馈RNN、LSTM(LongShort-Term Memory,时间递归神经网络)或者gated RNN(是指可实现长距离依赖处理的循环网络模型)等。

也就是说,在得到每个分词的词向量之后,可使用多层的神经网络模型将每个分词的词向量转换为该分词的隐层表示向量。例如,以n个分词“w1、w2、…wn”为例,可利用多层的神经网络模型将每个分词的词向量转换对应的隐层表示向量,如h1、h2、…hn。

可以理解,为了保证本发明的可用性以及可行性,上述神经网络模型可以是预先通过训练数据训练得到的。为了能够得到神经网络模型的参数,需要有一定数量的训练数据(如<input(文本内容),应答人员>),但是,在通常情况下这类训练数据的数量往往不够,从而会导致模型参数过拟合到训练数据,导致效果不佳。为了避免这种情况的发生,本发明中使用了大规模的样本单词数据,通过对该样本单词数据进行训练以得到词向量参数,再将训练数据和词向量参数作为样本数据进行训练,以得到神经网络模型。具体地,在本发明的一个实施例中,该神经网络模型可以通过以下步骤训练得到:

121)获取样本单词数据,并利用文本深度表示模型word2vec模型对样本单词数据进行训练,得到样本单词的词向量参数;

需要说明的是,上述样本单词数据可以是从互联网上的文本信息中抓取得到的。在获取大规模的样本单词数据之后,可使用word2vec的训练方式对该样本单词数据进行训练,以得到样本单词的词向量参数。

122)以损失函数为训练目标函数,根据已标注的分类语料和样本单词的词向量参数作为样本数据进行训练,得到神经网络模型。

在得到词向量参数之后,可基于梯度的FineTuning(微调)的方法,根据已标注的训练数据(如<input,应答人员>)和样本单词的词向量参数作为样本数据进行训练,其中,在训练时使用损失函数作为训练目标函数,进而可以得到该神经网络模型。

S130,根据多个分词的隐层表示向量生成文本内容的第一向量。

作为一种示例,可将每个分词的隐层表示向量进行累加即可得到该文本内容的第一向量。可以理解,该第一向量即为用向量的形式表示该文本内容。

S140,根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。

具体地,可通过文本内容的第一向量和预设的分类模型,找出分类概率最大的应答人员,该分类概率最大的应答人员即可认为最适合该问题的目标应答人员,最后,可将该目标应答人员分配给用户。这样,用户只需输入自己的问题,即可自动得到最适合该问题的应答人员进行问题回答,简化了用户的操作步骤,减少用户与服务中心的交互,提升了用户体验。

作为一种示例,如图2所示,上述根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员的具体实现过程可包括如下步骤:

S210,确定预先设置的应答人员的总个数M,其中,M为正整数。

需要说明的是,为了满足用户问题的应答,可预先设置多个应答人员以满足为用户解答问题。作为一种示例,该应答人员可以是自动应答的机器人,也可以是客服人员。

为此,在确定与问题对应的目标应答人员时,可先确定预先设置的应答人员的总个数M。

S220,根据应答人员的总个数M,将文本内容的第一向量转换为第二向量,其中,第二向量的长度为M。

作为一种示例,可通过线性变换将文本内容的第一向量变换为长度为M的第二向量。其中,该线性变换可为Matrix Projection(矩阵投影)变换等。

S230,通过预设的分类模型将第二向量转换为M个概率。

作为一种示例,该预设的分类模型可为Softmax分类模型。具体地,可通过Softmax分类模型将长度为M的第二向量转换为M个概率。

S240,确定M个概率中的最大概率。

S250,根据最大概率,从预先设置的应答人员中选取出与最大概率对应的应答人员。

由于将长度为M的第二向量转换为M个概率,而该M即为预先设置的应答人员的总个数,因此,每个概率即可理解为选取当前应答人员应答该文本内容的概率。为此,为了为用户提供最适合该问题的应答人员,可从M个概率中确定最大概率,并根据该最大概率,从M个应答人员中选取出与最大概率对应的应答人员。

S260,将与最大概率对应的应答人员作为目标应答人员。

为了提高本发明的可用性以及可行性,可对用户输入的问题的形式进行判断,并根据判断结果选用不同的方式来获取该问题的文本内容。可选地,在本发明的一个实施例中,上述获取用户输入的问题的文本内容的具体实现过程可包括:判断用户输入问题时所使用的输入类型;如果输入类型为语音输入,则对语音进行语音识别以生成问题的文本内容;如果输入类型为文本输入,则获取问题的文本内容。

也就是说,用户可以通过语音形式输入问题,也可以通过文本形式输入问题。在检测到用户输入完成时,可先判断用户输入该问题时所使用的输入类型,该输入类型可包括语音输入、文本输入等。如果判断用户是通过语音输入的问题,则可先对该用户输入的语音进行语音识别,得到该问题的文本内容;如果判断用户是通过文本形式输入的问题,则可直接获取该问题的文本内容。

本发明实施例的基于人工智能的问题分类方法,可获取用户输入的问题的文本内容,并对文本内容进行分词处理以得到多个分词,之后,获取多个分词的隐层表示向量,并根据多个分词的隐层表示向量生成文本内容的第一向量,最后,根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。即根据用户输入的问题,自动地寻找到最适合该用户的应答人员进行问题应答,减少了用户的操作步骤,减少了用户与服务中心的交互,同时提升了整个服务中心的运行效率。

与上述几种实施例提供的基于人工智能的问题分类方法相对应,本发明的一种实施例还提供一种基于人工智能的问题分类装置,由于本发明实施例提供的基于人工智能的问题分类装置与上述几种实施例提供的基于人工智能的问题分类方法相对应,因此在前述基于人工智能的问题分类方法的实施方式也适用于本实施例提供的基于人工智能的问题分类装置,在本实施例中不再详细描述。图3是根据本发明一个实施例的基于人工智能的问题分类装置的结构示意图。需要说明的是,本发明实施例的基于人工智能的问题分类装置可以通过软件、硬件或者两者的结合实现。如图3所示,该基于人工智能的问题分类装置可以包括:第一获取模块310、分词模块320、第二获取模块330、生成模块340和分类模块350。

具体地,第一获取模块310可用于获取用户输入的问题的文本内容。

分词模块320可用于对文本内容进行分词处理以得到多个分词。

第二获取模块330可用于获取多个分词的隐层表示向量。作为一种示例,如图4所示,该第二获取模块330可包括:获取单元331和转换单元332。其中,获取单元331用于获取多个分词的词向量。转换单元332用于基于神经网络模型,将多个分词的词向量转换为多个分词的隐层表示向量。

生成模块340可用于根据多个分词的隐层表示向量生成文本内容的第一向量。

分类模块350可用于根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。作为一种示例,如图5所示,该分类模块350包括:第一确定单元351、第一转换单元352、第二转换单元353、第二确定单元354、选取单元355和第三确定单元356。

其中,第一确定单元351用于确定预先设置的应答人员的总个数M,其中,M为正整数。第一转换单元352用于根据应答人员的总个数M,将文本内容的第一向量转换为第二向量,其中,第二向量的长度为M。第二转换单元353用于通过预设的分类模型将第二向量转换为M个概率。第二确定单元354用于确定M个概率中的最大概率。选取单元355用于根据最大概率,从预先设置的应答人员中选取出与最大概率对应的应答人员。第三确定单元356用于将所述与所述最大概率对应的应答人员作为所述目标应答人员。

可选地,在本发明的一个实施例中,如图6所示,该第一获取模块310可包括:判断单元311、语音识别单元312和获取单元313。其中,判断单元311用于判断用户输入问题时所使用的输入类型。语音识别单元312用于在输入类型为语音输入时,对语音进行语音识别以获取问题的文本内容。获取单元313用于在输入类型为文本输入时,获取问题的文本内容。

本发明实施例的基于人工智能的问题分类装置,可通过第一获取模块获取用户输入的问题的文本内容,分词模块对文本内容进行分词处理以得到多个分词,第二获取模块获取多个分词的隐层表示向量,生成模块根据多个分词的隐层表示向量生成文本内容的第一向量,分类模块根据文本内容的第一向量和预设的分类模型,确定与问题对应的目标应答人员,并将目标应答人员分配给用户。即根据用户输入的问题,自动地寻找到最适合该用户的应答人员进行问题应答,减少了用户的操作步骤,减少了用户与服务中心的交互,同时提升了整个服务中心的运行效率。

在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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