Skip to content

hailiang-wang/faq-robot-wanguozhidi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

robot

项目

智能客服机器人

作用

智能回复客户的问题

内容

语义网络技术路线,使用本体库作为支撑;首先对用户问题通过本体方法进行粗略匹配,获得多个备选答案,并通过ANN或SVM分类,特征提取等,计算问题与答案的匹配度,提供给用户答案。同时,随着对话进行,构建语义网,以获得上下文支持,同时对无法回答的问题进行答案生成:使用自定义语义函数。并将经确认的正确答案,扩充至答案库。具体研究内容及方法如下:

中文分词和词性标注

首先将用户问题中的无意义语气助词停用;对处理后的用户问题进行中文分词以及词性标注,将用户的提问切割成单词,作为系统的输入。

<dependency>
    <groupId>com.hankcs</groupId>
    <artifactId>hanlp</artifactId>
    <version>portable-1.2.10</version>
</dependency>

领域本体库的构建

采用主流的本体开发工具protege和Jena,使用OWL(主要是OWL—DL)本体语言开发建立领域本体库,根据步骤系统的输入,从本体库中匹配查询出用户的输入本体。

回答知识库构建

从海量原始对话记录中清洗筛选出一系列的标准回答并标注关键词,定义其问题模式。本模块将解决两大疑难问题:1、问答匹配,由于对话不一定是1问1答,可能是1问多答、多问1答或者多问多答,回答和问题“间距”也难以确定,因此需要从复杂多样的回答中构建回答知识库。2、无用对话消除。原始对话中含有大量客户介绍自己的经验等情况。该语料中也包含很多本体(关键字),但实际上是无用且对回答匹配有干扰的本体,必须消除。因此需要系统自动识别并抛弃。

粗略(模糊)匹配:

使用本体库,从回答知识库中粗略选择多个(5-10个)备选回答,选择方法可采用最大匹配法。

特征选择与适应度计算

将步模糊匹配的各个结果进行字符串相似度(公共字串,编辑距离),语义相似度,问题领域(抽取关键词,ANN算法训练,分类),期望词匹配度(该种问题在答案中期望包含哪些词)计算;对每一特征加权重Wi,使用ANN进行权重的训练,得到最终公式对每组(问题,答案)进行适应度计算,提供给用户最可能的回答。

语义网络模型及其扩展

在系统运行中,对于每一次会话,根据用户的输入和已经提供的回答,逐步构建当前对话的语义网络,相关本体用作模糊匹配的关键字。当无法直接搜索出答案时,尝试进行语义推理,定义语义函数,尝试构建答案。

配置环境

1

安装matlab2010b,并将bin文件添加到Path

2

BPModel.jar,IKAnalyzer2012FF_u1.jar,javabuilder.jar,lucene-core-4.6.1.jar添加到工程中

3

MatlabJar0703放到类里面指定的目录,如些工程中指定MatlabJar0703放置在D盘根目录下

About

万国置地-智能客服机器人

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 59.6%
  • Java 34.8%
  • CSS 4.6%
  • JavaScript 1.0%