一种智能应答方法及其系统与流程

文档序号:14217771阅读:144来源:国知局

本发明涉及一种智能应答方法及其系统,属于人机交互技术领域。



背景技术:

目前,市场上关于物流运输业的智能应答系统存在较大的问题,最普遍的一个问题就是这些软件识别问题太过机械,识别度较低,经常会出现答非所问的情形,另外现有软件可选语言比较单一,无法满足业务辐射周边国家的物流运输需求。这些软件大部分采用的是基于字符串层面匹配的关键词匹配,即关键词和答案构建特征向量的方法,没有对用户的问题进行语义分析,问题中出现多义词的情况时软件会理解错误,最终给出了错误的答案,所以这类准确率较低,无法解决用户多种提问方式以及一个问题对应多个关键字的问题,用户体验较差。

现有技术中的搜索方式速度快、易操作但准确率却很低,无法满足物流行业真实场景下智能、准确、多次使用的需求。



技术实现要素:

本发明为解决现有技术中存在的不足,提出一种智能应答方法及其系统,本发明针对物流行业用户经常问的问题,采用语义分析技术处理用户物流问题并对用户提出的问题设置针对性的答案,形成物流问题答案字典,该方案解决了现有技术中大多采用基于字符串层面匹配的关键词匹配并且答案是直接到互联网中进行搜索出现的问题,以改善现有技术中软件在自动应答时准确率较低,无法满足用户多种提问方式用户体验较差以及用户可选择语言单一的问题。

为了解决上述技术问题,本发明提供了一种智能应答方法,包括以下步骤:

步骤1、建立物流问题字典,为物流问题设置答案并记录在物流问题字典中;

步骤2、将用户提出的未知物流问题与所述物流问题字典中的物流问题进行模糊匹配,若两者相似度超过预设阈值,则录入物流问题字典中物流问题所对应的答案;否则,将所述未知问题加入物流问题字典中并设置该未知物流问题对应的答案;

步骤3、给用户输出相应答案;

其中,所述步骤1包括以下步骤:

步骤101、收集用户提出的物流相关问题并进行语音转换;

步骤102、将语音转换后的物流问题进行分词和词性标注、预处理、语义分析后录入物流问题字典中;

步骤103、为录入物流问题字典中的物流问题设置答案;

其中,步骤102中的预处理包括:采用停用词表去除分词后跟物流行业问题无关的词语。

进一步的,在步骤3之前还包括重复步骤2,完善物流问题字典并建立多语种;根

据用户选择的目标语种语音为用户输出相应答案。

进一步的,步骤102中,所述语义分析包括:

a.构造词类模型,将所述物流问题字典中的词语表示在词类模型空间上;

b.使用文本聚类算法对物流问题字典进行文本聚类,将物流问题字典进行分类。

其中,步骤a中的构造词类模型包括:词义消歧和词义聚类,采用bayes模型进行词义消歧,采用bisectingk-means聚类算法进行词义聚类。

进一步的,文本聚类算法采用基于k-means聚类算法,主要步骤包括:

步骤1、随机选取k条物流问题字典生成k个聚类,所述k条物流问题字典分别对应k个聚类的聚类起始中心点为{u1,u2,u3,...,uk};

步骤2、采用nist标准计算每条物流问题字典与每个聚类起始中心点对应问题文本的相似度,根据与聚类起始中心点的问题文本的相似程度将其分配到最近的一类中,获得新的聚类结果{u1,u2,u3,...,uk},其中ui(1≤i≤k)是若干物流问题字典的集合;

步骤3、重新计算每个ui(1≤i≤k)的中心

其中,m是所述集合ui(1≤i≤k)中数据的总数,cj是指ui(1≤i≤k)中第j个数据;

步骤4、当下面的目标函数收敛时,终止迭代,否则重复步骤2和步骤3,判断是否终止迭代的目标函数表示为:

其中,e函数代表某一条物流问题字典所属类别到其聚类起始中心点的距离平方和。

进一步的,步骤2中的模糊匹配,通过相似度计算来将用户提出的未知物流问题与录入物流问题字典中处理后的物流问题关联,相似度计算采用shingle算法、距离编辑算法、余弦定理、sunday算法中的任一种。

本发明还公开了一种智能应答系统,包括:

字典创建模块,用于建立物流问题字典,为所述物流问题设置答案并记录在物流问题字典模块中;

问题查找模块,用于将用户提出的未知物流问题与录入物流问题字典中处理后的物流问题进行模糊匹配,若两者相似度超过预设阈值,则录入物流问题字典中处理后的物流问题对应的答案;否则,将所述未知问题加入所述物流问题字典中并设置所述物流问题对应的答案;

学习训练模块,用于利用字典创建模块和问题查找模块将所述物流问题字典不断学习和完善并建立多语种的所述物流问题字典以及为所述物流问题设置对应答案;

应答输出模块,用于根据用户选择的目标语种语音输出所述答案给用户,实现智能应答。

进一步的,字典创建模块包括:

语音转换模块,用于将收集到的用户提出的物流相关问题进行语音转换;

语义分析模块,用于将语音转换后的物流问题进行分词和词性标注、预处理、语义分析后录入所述字典创建模块中;

答案设置模块,用于为处理后的录入物流问题字典中的物流问题设置答案。

进一步的,语义分析模块还包括:

模型构造模块,用于将所述物流问题字典中的词语表示在词类模型空间上;

文本聚类模块,用于使用文本聚类算法对所述物流问题字典进行文本聚类,将所述物流问题字典分成多类。

有益效果:本发明与现有技术相比,具有以下优点:

本发明采用改进后的k-means算法进行聚类,k-means方法可用来处理大量的数据,而且效率较高,操作简单,因此用该算法来处理大量数据的聚类难题是比较有效的;利用词类模型代替vsm模型来表示文本,该方案解决了由于同义词和多义词等语义问题导致的用户多种提问方式以及软件应答准确率低,用户语言选择单一的问题,满足了智能、准确、多次使用的需求,提高了用户体验。

附图说明

图1为本发明的一种智能应答方法的流程图;

图2为本发明的构造词类模型的结构图;

图3是本发明的k-means聚类算法流程图;

图4是本发明一种智能应答系统结构图。

具体实施方式

如图1所示,本发明提供了一种智能应答方法,主要包括四个部分:建立物流问题字典、问题查找、学习训练、应答输出。

物流问题字典创建阶段包括为物流问题设置答案并记录在物流问题字典中;问题查找阶段包括将用户提出的未知物流问题与录入物流问题字典中处理后的物流问题进行模糊匹配,由两者相似度与预设阈值的大小关系决定是否添加到物流问题字典还是直接输出答案;学习训练阶段包括学习和完善物流问题字典并建立多语种的物流问题字典以及设置对应答案;问题输出阶段包括根据用户选择的目标语种语音输出对应问题答案给用户,实现智能应答。

一、创建物流问题字典

该阶段又分为3个阶段,分别为语音转换、语义分析和答案设置。语音转换任务是收集用户提出的物流相关问题并进行语音转换;语音分析的任务是语音转换后的物流问题进行分词、词性标注、预处理和语义分析后录入物流问题字典中;答案设置的任务是为物流问题字典中的物流问题设置答案。

1、语音转换主要通过建立识别基本单元的声学模型以及语言模型,再将输入的目标语音的特征参数和模型进行比较,从而得到识别结果。

2、语义分析包括:

语音转换后得到有限条物流问题,由于程序的局限性,会得到无关行业的问题,先要对这些问题文本集进行预处理,分词是预处理中的重点,现在最经典的分词技术包括两种:基于字符串匹配分词方法以及基于统计的分词方法。本实施例采用ictclas分词工具,ictclas为instituteofcomputingtechnology,chineselexicalanalysissystem简称,该分析器可以进行汉语的分词、词性标注、新词识别和用户词典。本实施例使用ictclas开源工具来对问题文本集进行文本分词。

对于该问题文本集跟物流没有关系,比如“嘿嘿、呸、哈”等大多数的语气词,除此之外还包括一些频率超高和频率太低的词语。本发明使用“停用词表”来排除这类词语,采用停用词表会除去一些超高频次的词语,如:“的/u”、“我/r”、“你/r”、“我们/r”等,这类词语有很高的文档频率但反文档频率却很低。同时一些语气词,如:“恩/y”、“啊/y”、“呀/y”、“哇/y”、“啦/y”等也会被从文本集合中去除,从而减轻了后续算法的工作量。

将上述预处理后的物流问题文本集创建成物流问题字典,该字典中的词语被表示在词类模型空间上,如附图2所示;词类模型可以解决问题语料中同义词或者多义词的现象,同义词被聚到同一个词类中,多义词将会根据词义归纳到不同的词类中,从而可以得到更加准确的文本相似度。构造词类主要包括词义消歧和词义聚类,本发明采用bisectingk-means聚类算法进行词义聚类;该方法避免了特征向量表示时出现的高维数据的烦扰,最后用词类代替问题语料文本中的词语,即把文本中的词语表示在词类的空间上。

本实施例的词义和词类定义如下:

词义是特定词w的词义sw一般表示为一组上下文的词语的概率分布,如下公式

sw={ti:p(ti|sw)},i=1,...,n(1)

其中ti表示上下文中的词,p(ti|sw)表示对ti于词义sw的概率。

词义类簇,简称为词类,是代表词义由相关的聚类算法获得的一组词义,下列公式可以描述其定义:

其中sw表示一个词义。

当有用户提问“你好,请问上次的问题解决了吗?”,其中“解决”的词义表示为“解决#”。词义类簇表示为:

{解决#,处理#,搞定#}

解决#={解决:0.149,处理:0.059,消灭:0.029,搞定:0.105}

处理#={处理:0.169,解决:0.069,消灭:0.039,搞定:0.108}

该词义类簇中,“作用#”和“功能#”以及“搞定#”上下文概率比较相似,所以被聚到一个类中,形成一个的含有若干词条的词类。表示为:

解决近类={解决,处理,搞定}。

文本聚类包括:

使用基于k-means聚类算法对物流问题进行文本聚类,将所述物流问题字典进行分类,如附图3所示,主要步骤包括:

步骤1、随机选取k条所述物流问题字典生成k个聚类,所述k条所述物流问题字典分别对应k个聚类的聚类起始中心点为{u1,u2,u3,...,uk};

步骤2、采用nist标准计算每条所述物流问题字典与每个聚类中心对应问题文本的相似度,根据与聚类中心的相似程度将其分配到最近的一类中,获得新的聚类结果{u1,u2,u3,...,uk},其中ui(1≤i≤k)是若干所述物流问题字典的集合;

步骤3、重新计算每个ui(1≤i≤k)的中心

其中m是所述集合ui(1≤i≤k)中数据的总数,cj是指ui(1≤i≤k)中第j个数据;

步骤4、当下面的目标函数收敛时,终止迭代,否则重复步骤2和步骤3,

判断是否终止迭代的规范函数可表示为:

其中,e函数代表某一条所述物流问题字典所属类别到其聚类起始中心点的距离平方和。

3、答案设置阶段的任务是为聚类后的每个物流问题类别设置答案。

二、问题查找阶段

该阶段用于将用户提出的未知物流问题与所述录入物流问题字典中处理后的物流问题进行模糊匹配,若两者相似度超过预设阈值,则返回录入物流问题字典中处理后的物流问题对应的答案;否则,将未知问题加入物流问题字典中并设置物流问题对应的答案;当用户提出的问题没有在物流问题字典中搜寻到答案时,立即转入人工服务,服务人员回答提出的问题后再转入自动应答系统中。

相似度计算可采用多种算法实现,比如shingle算法、距离编辑算法、余弦定理、sunday算法等,本发明优选采用的sunday算法,但本领域相关技术人员应能理解,各文本相似度算法均可适用于本发明。

三、学习训练阶段

该阶段用于利用字典创建阶段和问题查找阶段将所述物流问题字典不断学习和完善并建立多语种的所述物流问题字典以及对应答案。

四、应答输出阶段

该阶段用于根据用户选择的目标语种语音输出所述答案给用户,实现智能应答,可供用户选择的语言包括普通话、英语、俄语、印地/乌尔都语、维吾尔语、缅甸语、越南语7种语言。

此外,本领域技术人员应理解,实现上述实施例方法中的部分或全部步骤是可以通过程序指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括上述实施例方法的相应步骤,而所述的存储介质可以是:rom/ram、磁碟、光盘、存储卡等。因此本发明还提供了一种智能应答系统,如图4所示,该系统包括:

字典创建模块,用于建立物流问题字典,为所述物流问题设置答案并记录在物流问题字典模块中。

上述模块进一步包括:

语音转换模块,用于将收集到的用户提出的物流相关问题进行语音转换。

语义分析模块,用于将语音转换后的物流问题进行分词和词性标注、预处理、语义分析后录入字典创建模块中。

语义分析模块进一步包括:模型构造模块,用于将物流问题字典中的词语表示在词类模型空间上;文本聚类模块,用于使用文本聚类算法对所述物流问题字典进行文本聚类,将物流问题字典分成多个物流问题类。

答案设置模块,用于为处理后的录入物流问题字典中的物流问题设置答案。

问题查找模块,用于将用户提出的未知物流问题与录入物流问题字典中处理后的物流问题进行模糊匹配,若两者相似度超过预设阈值,则返回录入物流问题字典中处理后的物流问题对应的答案;否则,将未知问题加入所述物流问题字典中并设置未知物流问题对应的答案。

学习训练模块,用于利用字典创建模块和问题查找模块将所述物流问题字典不断学习和完善并建立多语种的所述物流问题字典以及对应答案。

应答输出模块,用于根据用户选择的目标语种语音输出所述答案给用户,实现智能应答。应答输出模块中,用户可选择的语言包括普通话、英语、俄语、印地/乌尔都语、维吾尔语、缅甸语、越南语7种语言。

上述系统采用与方法步骤一一对应的方式进行模块划分,故各优选实施例中的方法步骤同样有相应的模块与之对应,在此不再一一赘述。

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