/ChatBot

一个简单的智能聊天机器人

Primary LanguagePythonMIT LicenseMIT

ChatBot🤺

本项目为大学生实训项目,旨在通过Python语言,利用自然语言处理相关技术,在代码层面实现一个可以进行简单聊天对话和答疑的智能机器人

项目介绍🧐

1.项目背景

人工智能一直以来是人类的梦想。如今,制造一个可以为你做一切事情而且含有一定感情的机器人,已经不是一个梦了,比如iPhone里会说话的siri、会下棋的AlphaGo、高仿真机器人等……他们都能够具有一定的智能,和人类进行交互,帮助人类解决部分实际问题。在这个人工智能与大数据技术蓬勃发展的时代,制作一个可以聊天的机器人的想法在我们团队心中油然而生 视频地址: https://www.bilibili.com/video/BV1ap411d7mE

2.技术创新

传统的聊天机器人一般都是基于检索或者基于翻译模型来实现的,简单容易实现,但是都无法从语法和语义关系中得到答案,也就是无法完成推理问题。而我们团队制作的聊天机器人拟将语句的浅层分析和句法分析、语义分析都融合进来,完成对于各种语义关系的深刻计算,从而对答案的筛选相关算法进行补充和改进,大大提高问答的准确度

3.工作内容

主要分为三个内容 1)海量文本知识表示:通过获取网络文本资源的方式,获得海量文本知识,对数据进行机器学习、大规模语义计算和推理等方法,构建相关的知识表示体系,完成知识库的搭建; 2)问句解析:以中文分词为基础,通过句法分析、语义分析、指代消解等,对词性、实体、概念类别、逻辑结构、关联关系等维度进行标注,得到相关问句的分类,最后对答案的类别进行确定; 3)答案生成与过滤:在确定答案类别中对大量候选答案抽取,进行关系推演,判断吻合程度,并且不断进行噪声识别和过滤,最后得出准确答案 视频地址: https://www.bilibili.com/video/BV1rE411d7cp

4.技术路线

我们团队选择的是基于自然语言理解制作的聊天机器人,主要通过句法和语义分析,生成查询关键词,最后对答案的类型进行确定,三个过程模块共同工作,实现聊天机器人的流畅应答

5.实施方案

团队人员分模块进行,预计将于10周前完成项目相应的三个模块,12周完成整套体系的搭建,后续将会对算法进行不断地补充和改进。

计划实施💪

项目主要包含三个重要模块:提问处理模块、检索模块、答案抽取模块

  • 2-4周实现提问处理模块
  • 5-7周实现检索模块
  • 8-10周实现答案抽取模块(中途第九周进行中期检查)
  • 11周整合三个模块,进行相应的调整;作为缓冲期,优化、完善前列各模块算法
  • 12周完成整套聊天机器人体系搭建
  • 12-14周完善算法
  • 15周评分答辩

预期成果🍻

基于自然语言理解的技术,通过对海量文本知识的获取,采用机器学习的方法进行大规模语义计算和推理,完成知识表示体系和知识库的构建;

对问句实现中文分词、词性标注、实体标注、概念类别标注、句法分析、语义分析、逻辑结构标注、指代消解、关联关系标注、问句分类(简单问句还是复杂问句、实体型还是段落型还是篇章级问题)、答案类别确定;

对答案的生成与过滤进行候选答案抽取、关系推演(并列关系还是递进关系还是因果关系)、吻合程度判断、噪声过滤;

最终实现人与机器的基本对话和疑问回答

❤个人博客:Siori‘ bolg,会定期更新该项目进展情况,不定期更新其他技术和文章❤