新闻动态

问答系统简介

seo靠我 2024-02-28 15:50:30

提纲

一.什么是问答系统

二.问答系统框架

三.问答系统类型

四.问答系统流程

五.问答系统的一些趋势

一.什么是问答系统

问答系统(Question Answering System, QA)是信息检索系统的一种高级形式,它能用准确、简洁的自然语言回答用户用自然语言提出的问题。

上面是百度百科的定义,但是我认为广义上的问答系统不仅仅局限于解决通过自然语言提出的问题,也可以包括解决通过语音,图片等媒介提出的问题(例如微软小冰所提供的图片评论技能,机器人可以回答用户发出的图片)。同理也不仅仅是以自然语言去回答问题,可以通过语音,图片等其他媒介回答(例如阿里小蜜机器人,当你询问如何预定机票时,是会直接回复飞猪客服的入口链接)。

图1:微软小冰的图片评论图2:阿里小蜜的客服机器人

二.问答系统框架

问答系统通常包括三个环节,NLU(自然语言理解),DM(中控平台),NLG(自然语言生成)。其中DM主要包括对话状态跟踪(Dialogue State Tracking)跟策略学习(Policy Learning)两个部分。

如下图所示,其中NLU主要是对用户问题的解析,可以理解为把用户问题转化为机器能理解的语言。对话状态跟踪主要是获得当前的状态,可以理解为机器人所理解的用户问题的所处的状态,策略学习主要是根据当前系统的状态采取的策略(例如用户在这里可能是要询问地址,那么就返回的策略就是跟询问地址相关的),NLG是对用户的问题的回复,可以理解为用户最终会看到的机器人返回的结果。

图3:问答系统框架

三.问答系统类型

根据任务类型

1.任务型机器人

用于完成用户特定任务,机器人利用语义去执行后台已对接的能力,帮用户完成特定任务。例如预订酒店,销售产品等。

特点:智能决策,状态转移,槽位填充,多轮问答。

2.解答型机器人

用于解答用户的问题,机器人的回复来源于特定知识库,以特定回复回答用户。例如跟百科问答相关的机器人或者产品客服机器人。

特点:问答模型,信息检索,单轮为主。

3.闲聊型机器人

跟用户的无目的闲聊,机器人回复不限制,多以趣味性跟个性化回复为主。

特点:开放域,个性化,内容丰富。

根据解决方案

基于检索式的问答系统

根据问题从数据库搜索最接近的问题,返回相应答案。

特点:稳定可控,缺乏灵活性。

基于生成式的问答系统

根据实际问题直接生成答案。

特点:回复更加丰富,相对灵活,生成答案不受控。(多用于闲聊机器人)

四.问答系统流程

图4:问答系统流程

预处理模块,目的是为了让用户问题尽可能规范,跟预先定义好的问题模式尽可能一致。例如在文本场景中,后续的方案都是针对标准的用户问题的,但是用户输入错误的问题(同义词,同音词)是不可避免的,如果不考虑到这个问题的话,线上效果跟线下效果会相差很多。

召回模块,目的是获得答案的候选项。答案的候选项可以通过知识库检索得到,检索的方式分为文本检索(tfidf,bm25等)和向量检索(faiss等),也可以是通过seq2seq直接生成答案(循环神经网络,gpt等)。一个用户问题可能有多个可能的答案,在这里要尽可能把所有可能的答案都找到,所以召回模块更看重的是召回率(想象一下如果召回模块没有召回正确的答案,那么后续的精排模块即便效果再好也不可能返回用户正确的答案)。同时召回模块也不能返回数量太多的答案候选项,因为后面的精排模型一般是结构相对复杂,耗时相对较多的模块,如果召回模块返回的候选项太多的话,精排模型处理的时间也会相对延长,导致整个流程的时间变长。所以召回多少个候选项是一个需要平衡的事情,常见的召回数从几十到几百不等。

精排模块,目的是对召回模块返回的答案候选项进行打分排序。可以分为双塔模型或者cross模型。划分的依据就是用户问题跟答案候选项之间有没有进行特征交互。双塔模型需要分别对用户问题跟答案候选项进行编码,然后计算两者之间的相似度(例如sentence bert的做法)。而cross模型会进行用户问题跟答案候选项之间的特征交互(例如将用户问题跟答案候选项通过[sep]拼到一起输入到bert然后计算两者相似度的做法)。由于cross模型做了特征交互,所以cross模型效果一般会优于双塔模型(最近流行的对比学习使得双塔模型的效果得到了有效提高,包括simcse,consert,pairsupcon等)。

决策模块,目的是决定返回给用户的答案。精排模型会被每个答案候选项打个分,默认情况会返回分数最高的候选项。但是有可能所有候选项的分值都很低,那么这个时候就认为所有候选项答案都不符合要求,就需要采取兜底策略了。

五.问答系统的一些趋势

多模态,能解决多个模态的问题,能以多种模态回答问题

多任务,成熟的问答系统具备任务型机器人,闲聊型机器人等相结合的能力,既能满足用户某些特定任务需求,也能进行普通的闲聊。(很多机器人包括微软小冰,阿里小蜜都是包含多种机器人能力的)

挖掘网上语料,预训练模型的兴起极大的提高自然语言处理的能力,所以能够通过无监督学习挖掘网上有用信息也是一种很重要的能力。

用户建模,真实模拟用户的行为,迭代相应的对话系统。

以长期目标去建造系统,一项伟大的方案都很难一蹴而就,所以设计方案时也有长期的迭代优化方案。

--

对NLP感兴趣的朋友们可以关注下我的公众号NLP日志,也欢迎大家加入NLP的学习交流群NLP日志学习交流群,一起学习,共同进步,加群方式发送加群到公众号就可获取。我们的目标是不内卷,也不怕内卷。

--

参考链接

(微软小冰)The Design and Implementation of XiaoIce, an Empathetic Social Chatbot

https://arxiv.org/pdf/1812.08989v2.pdf

(阿里小蜜,ACM2017)AliMe Assist: An Intelligent Assistant for Creating an Innovative E-commerce Experience

https://arxiv.org/pdf/1801.05032.pdf

(sentence-bert,EMNLP2019) Sentence-BERT:Sentence Embeddings using Siamese BERT-Networks

https://arxiv.org/pdf/1908.10084.pdf

(simcse,emnlp2021)Simple Contrastive Learning of Sentence Embeddings

https://arxiv.org/pdf/2104.08821.pdf

(美团consert,ACL2021)ConSERT: A Contrastive Framework for Self-Supervised Sentence Representation Transfer

https://arxiv.org/abs/2105.11741

(pairsupcon,EMNLP2021)Pairwise Supervised Contrastive Learning of Sentence Representations

https://arxiv.org/abs/2109.00542

“SEO靠我”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与 我们联系删除或处理,客服邮箱:html5sh@163.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同 其观点或证实其内容的真实性。

网站备案号:浙ICP备17034767号-2