柳自强 熊晓芸 张哲也 曲雅楠
摘要:学分制智能问答系统应用智能检索技术,与学生进行问答式的交互。系统通过自然语言处理NLP技术,可以准确地理解学生通过自然语言提出的问题,继而通过检索FAQ库与学分制的知识图谱,反馈给学生正确答案。相较于搜索引擎,基于学分制垂直领域的智能问答系统,能更好地满足学生对学分制信息的需求。
关键词:智能问答系统;FAQ库;知识图谱
中圖分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)31-0049-02
现在,随着国家对教育的不断重视,在校大学生人数增长十分快,并且入学到毕业时间跨度大,而教学资源并没有很大增长趋势,尤其是师资力量,我国高校师生比普遍偏低。美国许多名校却与此相反,比如普林斯顿大学师生比例小于1:5,而布朗大学等也只是1:9.反观国内高校,师生比严重不协调,全国高校平均下来师生比例达到1:17.事实上,一些学校的热门专业的师生比例更低,有些低于1:20。
随着教师职能的扩充,教师的工作量也在增大,一般的大学老师除了要给学生上课,还有相应的科研任务,时间十分宝贵。而在目前的教育模式下,学生与导师之间存在大量的问题咨询,这些问题通常具有普遍性,烦琐性以及重复性等特点,教师在一个同样的问题上可能回答数十遍,这影响了教师的工作效率,使得教师的时间更加稀少,并且由于教师工作压力大,很多时候没有办法及时回答学生的疑问。
我们思考是否能有一种方法解决这种矛盾呢?文章构建了一个学分制智能问答系统来解决上述问题,学分制智能问答系统对自然语言处理、语义相似度计算和知识图谱实体匹配进行研究,能够及时准确地满足学生对学分制政策信息的需求,同时也能够很有效地节省人力物力。
1国内外发展现状
早在20世纪印年代,就有外国科学家提出计算机未来可能会使用自然语言去理解人类,这是问答技术首次出现在大众视野。1980年左右,使用自然语言提问的问答系统成为当时的一大热点。图灵测试向大众阐述了,计算机拥有人工智能的标准是使用自然语言与人交互。此后,学者们开始探索自然语言语义提取的相关操作,致力于自然语言问答系统。
由于当时的技术问题,所有的实验的规模都十分有限。从20世纪90年代开始,随着各种技术的深入研究,众多搜索引擎公司的搜索范围、搜索速度都得到了大幅度的提高,因此人们更为看重检索技术的未来前景,但对智能问答技术的研究却一直停滞不前。进入20世纪以来,随着科学技术的再次飞跃,问答技术再次受到广泛的关注。
目前,越来越多的公司和高校参与问答技术的研究。通过研究人员和学者的努力,一些成熟的、质量可以得到保证的智能问答系统和聊天机器人已经在工业界或学术界生产出来,如谷歌公司的Google Now和苹果公司发明的Siri,MIT大学也拥有Start系统,还有AskJeeves.AnswerBus.MULDER、LAMP等。
与国外研究相比,中国国内对问答系统的研究在规模和研究水平上存在很多差距。这主要有两个原因。首先,中文信息处理比英语更困难,而且存在许多方面的差异。国外的现有的技术和已经产生的研究成果不可以直接投入使用。此外,难以解决的是自然语言处理资源的稀缺,如自然语料库、知识库和相应的评价机制等等。
2自然语言处理技术
自然语言处理模块的功能是:学生的问句被提交到后台,首先通过ANSJ对问句进行分词处理,得到分词后的结果;然后根据词性提取关键词,并使用HowNet得到关键词的所有扩展词项。根据词性和停用词表提取问句中的关键词,以防止出现扩展过多而影响检索效率的问题;其次对于关键词使用HowNet进行扩展,得到扩展词项。为了提高扩展的准确性,我们使用了目前流行的同义词扩展方式:基于HowNet的方式。我们使用知网进行,通过知网的方式扩展,可以获取到问句中关键词与知网中存在的词的相似度比较高的词,此处获取前n个,这样就得到扩展结果。
3语义相似度计算
通过对学生输入问句的处理,提取出关键词,进行相似度计算;对于高于阈值的问题,获取相似度最高的问句,通过FAQ问答库,得到对应的答案,将答案呈现给学生。具体的语义相似度计算如下。
最后求出句子相似度之后,得到相似度顺序排列的问题集,从中找到相似度最高的问题作为学生问句的替代,对其进行FAQ库的检索,得到对应问题的答案,最终将结果呈现给学生。
4基于VAQ库和知识图谱的问答功能
问答功能简单讲就是将问题带人提前准备好的知识库寻求答案的一种基于知识库的问答系统。问答系统可以将获取的自然语言问句通过解析、计算相似度、检索FAQ库与学分制的知识图谱,反馈给学生正确答案。相较于搜索引擎,基于学分制垂直领域的智能问答系统,能更好地满足学生对学分制信息的需求。
4.1基于FAQ库的问答
FAQ问答是根据学生的学分制问题去FAQ知识库找到最合适的答案并反馈给学生。
首先,对候选问题集进行离线索引,使用Lucene引擎为库中类似的问题集创建相应的索引,收到学生问题后,粗略选择部分问题集作为结果,之后再对这些结果进行筛选过滤,通过第3节介绍的相似度计算方法计算学生问题与过滤后的答案的匹配程度,选取相似度最高的问句,再对候选集查找,得到最好的候选答案返回给学生。
以毕业为例:
“我能毕业吗”关键词是毕业条件;
“我几年能毕业”关键词是毕业修学年限;
“我能提前毕业吗”关键词是提前毕业条件。
当学生输入问题查找时,“毕业”对应候选集中多个相似问题,以这些问题作为粗排结果,之后通过相似度计算查找与学生输入的问题相似度最高的问题反馈给学生,如“我能提前毕业吗”中除了“毕业”关键词,还有“提前”这类关键词,而粗排结果中涉及这方面的只有“提前毕业条件”分别计算相似度: