赞
踩
User
输入一个表述需求信息的查询字段,系统回复一个包含所需要信息的 Document list
,这一类问题称为 点对点的检索问题 (ad-hoc retrieval problem)IR 系统
返回与 User
要求
精确匹配
\color{red}精确匹配
精确匹配 的检索结果。
User
要求与查询文档之间的
相关度
\color{red}相关度
相关度 返回查询结果,这一类模型应用更广泛,研究也更多。目前 IR 系统中,存在两个关键的研究技术:
User
查询语句(或关键词序列)和候选查询文本的
数学表示模型
\color{red}数学表示模型
数学表示模型,通常将查询语句和候选文本都表示为 词向量User
查询 Indexing 和 候选查询文本 Indexing 之间的
相似度、匹配度
\color{red}相似度、匹配度
相似度、匹配度,对于词向量的表示模型来说,则使用矢量内积法进行计算。一些困难:例如,对于词向量的表示模型 + 向量内积的计算方法来说,无法处理 一词多义 的情况。
一个 IR 系统可以表达成下图所示的模型
IR 系统的工作过程如下图所示
传统上,包括:TF-IDF
、向量空间模型
、词袋模型 (bag of word, BOW)
、主题模型(LDA,主题聚类)
目前,词嵌入模型(word2Vec)
、深度学习模型(预训练模型)
等
query
和 doc
的匹配模型工作过程:
training data
,通过 learning IR system,学习得到 query
和 doc
的匹配模型
f
M
(
q
,
d
)
f_M(q, d)
fM(q,d)。testing data
,也就是给定的需要预测的 query
和 doc
,便可以通过这个模型,预测得到 q
和 d
的 匹配分数
f
M
(
q
,
d
)
f_M(q, d)
fM(q,d)。传统的匹配过程大体可以分为两类:
query
和 doc
都映射到同一个latent space;
Best Matching (BM25)
,Partial Least Square(PLS方法)
,Regularized Mapping to Latent Space(RMLS模型)
doc
映射到 query
的空间,然后学习两者的匹配。
Statistical Machine Translation(SMT模型)
,Word-base Translation Model (WTM模型)
经典的 双塔结构 \color{red}双塔结构 双塔结构 框架图如下:
表示层
匹配层
匹配函数有两大类,
cosine函数
:DSSM模型、CNN-DSSM模型、LSTM-RNN模型dot product
MLP网络
:ARC-I 模型Neural Tensor Network
:CNTN模型Deep Struct Semantic Model (DSSM模型)
,百度的 Simnet模型
输入层->query和doc各自的表示层->匹配层
的模型范式,和百度的simnet
一样,匹配模型的框架范式,这里的每一层都可以针对性的做优化word hash, n-gram
的方法,大大减少了原始 one-hot
输入空间end-2-end
的框架,包 query
和 doc
的 embedding向量
直接通过训练得到不需要经过预训练query
和 doc
的向量表示cosine
表示 query
和 doc
的
匹配分数
\color{red}匹配分数
匹配分数query
和doc
的表示都是BOW
,丢失了序列信息和上下文信息无论是bow
的表示还是DNN全连接网络结构
的特点,都无法捕捉到原始词序和上下文的信息。因此,这里可以联想到图像里具有很强的
局部感知
\color{red}局部感知
局部感知 的 CNN网络结构
,典型代表有 ARC-I模型
,CNN-DSSM模型
,以及 CNTK模型
。
作为空间关系代表的 CNN网络结构
能够捕捉到 query
和 doc
的局部关系,RNN
作为时间序列相关的网络结构,则能够捕捉到 query
和 doc
中前后词的依赖关系。因此,基于 RNN
的表示学习框架如图所示,query或者doc用黄色部分表示,通过RNN网络结构作为隐层来建模序列关系,最后一个word作为输出,从而学习得到query和doc的表示。对于RNN结构,可以使用业内经典的LSTM或者GRU网络结构。
query
和 doc
的表示,而是一开始就让 query
和 doc
进行各种交互,通过两者交互的 match signals
进行特征提取,然后通过 aggregation
对提取到的 match signals
用各种网络结构进行学习得到最终的匹配分数,如图4.1所示。步骤:
一种很直观的思路就是,让 query
和 doc
两段文本里面每个word两两进行交互,在word level级别建立匹配度矩阵。
query
和 doc
两段文本的加权交互信息。背景:尽管搜索引擎提供商投入了大量的人力和财力来改进 search engine 的效果,但很多用户人就不满意。因为他们通过 search engine 获得的信息并不是真正需要的信息,返回的无关信息太多等等。实际上,很多情况下,用户并不想搜索文献的全文,而只想知道 某一个具体问题的确切答案 {\color{red}某一个具体问题的确切答案} 某一个具体问题的确切答案。
问答系统:能够介绍 User 以 自然语言形式描述 的提问,并能从大量的异构数据中查找或推断出用户问题答案的信息检索系统。
评价:某种意义上说,QA是集成 知识表示、信息检索(IR)、NLP、智能推理等技术于一身的新一代的搜索引擎。
比较的项目 | QA | traditional IR |
---|---|---|
input 形式 | 自然语言提问 | 关键词组合 |
output 形式 | 准确的答案 | 相关文档的列表 |
所属的领域 | 涉及NLP 和 IR 等领域 | IR 领域 |
信息的确定性 | 用户信息需求相对明确 | 用户信息需求相对模糊 |
从实现方式进行分类
从实现方式进行分类
基于文本的问答(信息检索、深度学习)
基于知识库的问答(语义解析、信息检索)
可以从知识领域、答案来源等角度来替问答系统做分类。从知识领域来看,可分为“封闭领域”以及“开放领域”两类系统。
若根据答案来源来区分,可分为“数据库问答”、“常问问题问答”、“新闻问答”、“互联网问答”等系统。
对于基于固定语料库的QA system,答案将从 预先建立的大规模真实文本语料库 中进行查找。尽管语料库违法涵盖用户所有类型的问题答案,但能够提供一个良好的算法评测平台,因而适用于对不同问答技术的比较研究。
常见的QA数据库如:
QA 技术大致分为五种类型:
利用检索算法直接搜索问题的答案,候选答案的 排序 \color{red}排序 排序 是这类技术的核心,排序的依据通常是提问处理模块生成的查询关键词。由于不同类别的关键词对排序的贡献不同,算法一般把查询关键词分为几类:
这种方法相对简单,容易实现,但它以基于关键词的检索技术(也可称为词袋检索技术)为重点,只考虑离散的词,不考虑词与词之间的相互关系。因此,无法从句法关系和语义关系的角度解释系统给出的答案,也无法回答需要推理的提问。
对于一些 固定模式的提问,例如,提问某人的出生日期、某人的原名、某物的别称等类似的问题,可采用基于模式匹配的问题求解技术,获得尽可能多的答案表述模式是这种方法的关键技术。运用这种方法时,往往 先离线 \color{red}先离线 先离线 地获得各类提问答案的模式,在运行阶段,系统首先判断当前提问属于哪一类,然后使用这类提问的所有模式来对抽取的候选答案进行验证。
基于模式匹配的问答技术虽然对于某些类型的提问(如定义、出生日期等)具有良好的性能,但模板不能涵盖所有提问的答案模式,也不能表达长距离和复杂关系的模式,同样也无法实现推理。
鉴于前两种方法都存在自身的缺陷,很多专家认为,要想改进或者更大程度地提高问答系统的性 能,必须引人自然语言处理的技术。因此,很多系统将自然语言处理的相关技术引入问答系统,如句法分析技术,语义分析技术等。
不过由于现阶段的自然语言处理技术还不成熟,深层的句法、语义分析技术还不能达到实用化的效果。因此,目前的大多数系统还仅限于利用句子的浅层分析结果,作为对前两种方法的补充和改进。
基于自然语言处理的问答技术可以对提问和答案文本进行一定程度的句法分析和语义分析,并实现推理。但目前自然语言处理技术还不成熟,除一些浅层的技术(汉语分词、词性标注、命名实体识别、基本短语识别等)以外,其他技术还没有达到实用的程度。
基于统计翻译模型的问答技术把提问句看作是答案句在同一语言内的一种翻译形式,答案句子中与提问句子中的疑问词对应的词即是该问句要找的答案。这种问答技术传统上一般需要经过如下几个步骤:
这种方法在很大程度上依赖于训练语料(提问和答案句子对照的平行语料)的规模和质量,而对于开放域的问答系统,这种大规模训练语料的获取非常困难,而且,目前在统计翻译中,词或短语对齐的准确率本身就没有达到一个很高的水准。因此,对齐模型用在问答系统中也很难有上乘的表现。
截止至2023年来看,以chatGPT为代表的预训练生成式大模型,已经能够解决大部分问题了,比较有潜力。
一般来说,一个自动问答系统,通常由三部分组成:
结合 IR 技术我们可以看出,一个问答系统的关键技术包括如下几个方面:
深度学习模型可以分为三类:基于表示、基于交互和混合模型。
随着信息技术的快速发展,一大批结构化的知识库如Freebase、Dbpedia、Probase等等如雨后春笋似的涌现出来。
相比于上述的基于文本的问答系统,利用知识库进行自然语言的问题回答可以为用户提供 更为准确、更为具体的答案。所以,基于知识库的问答系统(Question Answering over Knowledge Base, KBQA)越来越受到国内外广大学者的密切关注和深入研究。
目前基于知识库的问答技术大致可以分为两大类,第一类是基于语义解析的方法,第二类是基于信息检索的方法。
KBQA的基本框架如下:
首先将自然语言问题解析为某种语义表示,然后通过语义匹配、推理和查询在知识库中找到相应的答案并返回。
KBQA系统的传统框架大致可以分为四个模块:问题分析、短语映射、消歧和查询构造。
目前解决知识库问答的方法主要有两种:语义解析和信息检索。实际上,这两种方法并没有严格的区分,甚至可以一起使用。在接下来的小节中,将重点介绍这两种方法来分析近年来的相关研究和成果。
本小节以 TREC QA评测为例,进行介绍。
假设 N 为测试集中,总的提问个数,则
平均排序倒数(mean reciprocal rank,MRR)可由下式计算:
M
R
R
=
∑
i
=
1
N
1
标准答案在
Q
A
系统给出的排序结果中的位置
N
MRR=\frac{\sum_{i=1}^N\frac{1}{标准答案在QA系统给出的排序结果中的位置}}{N}
MRR=N∑i=1N标准答案在QA系统给出的排序结果中的位置1
CWS(confidence weighted score)可由下式计算
C
W
S
=
1
N
∑
i
=
1
N
前
i
个提问中,被正确回答的提问数
i
CWS=\frac{1}{N}\sum_{i=1}^N\frac{前 i 个提问中,被正确回答的提问数}{i}
CWS=N1i=1∑Ni前i个提问中,被正确回答的提问数
准确率(accuracy)可由下式计算
A
c
c
=
正确答案的个数
N
Acc = \frac{正确答案的个数}{N}
Acc=N正确答案的个数
其他的还有Precision、Recall 等等
本章参考美团技术团队分享的 美团智能客服核心技术与实践 技术文章,进行学习与总结。
常见的对话任务可分为:
问答型和任务型最本质的区别在于,系统 是否需要维护一个用户目标状态的表示 \color{red}是否需要维护一个用户目标状态的表示 是否需要维护一个用户目标状态的表示和 是否需要一个决策过程 \color{red}是否需要一个决策过程 是否需要一个决策过程来完成任务。
在技术实现上,通常又可以划分为:
Encoder-Decoder
架构,从大量语料中习得语言能力,根据问题内容及相关实时状态信息直接生成回答话术。以下是关于问题:“如何联系骑手”,背后的工作原理
问题理解模块
将它与知识库中的拓展问进行匹配,进而得到对应的标准问即意图“如何联系骑手”。对话管理模块
根据意图“如何联系骑手”触发相应的任务流程:
答案生成模块
,根据模板生成最终结果,如右边的红框内容所示。在这个过程中涉及到要先有意图体系、定义好Task流程,以及订单的查询接口,主要由各业务的运营团队来维护。
那么,对话系统要做的是什么呢?
问题理解是将用户问题与意图体系进行匹配,匹配到的拓展问所对应的标准问即用户意图。
机器人的工作过程实际是要做 召回 和 精排 两件事情。
理解了用户意图后,有些问题是可以直接给出答案解决的,而有些问题则需要进一步厘清。
售后客服场景
通常问题较集中,且问题的解决多依赖业务内部系统数据及规则,通常是业务部门维护知识库,包括意图体系、Task流程和答案等。
但在售前场景
,知识多来自于商户或商品本身、用户体验及评价信息等,具有用户问题开放、知识密度高、人工难以整理答案等特点。
智能问答就是从美团数据中习得答案供给,来快速回答用户的问题,基于不同的数据源,我们建设了不同的问答技术。
图谱问答(KBQA)
来解决。利用商家基础信息构建图谱,通过问题理解模型来理解问题,进而查询图谱获取准确的答案。社区问答(Community QA)
能力,通过对用户问题与问大家中的”问答对”的相似度建模,选择相似度最高的作为答案,来回答用户的一些开放性问题。文档问答(Document QA)
能力,针对用户问题利用机器阅读理解技术从文档中抽取答案,类似我们小时候语文考试中的阅读理解题,进一步回答用户的一些开放性问题。最后,针对多个问答模块给出的答案,进行多答案来源的答案融合排序,来挑选最终的答案,此外这里还考察了答案真实性,即对“相信多数认为正确的则正确”建模。
话术推荐具体要怎么做呢?
整个架构如上图所示,分为 离线
和 在线
两部分。另外上线后也加入了一层 CTR预估模型
来提升采纳率。
话术推荐特别是对新座席员工价值更大,新员工通常难以组织话术,通过采纳推荐的话术可以来缩减熟练周期。
宗成庆,统计自然语言处理(第2版)[M]. 北京:清华大学出版社,2013.
https://zhuanlan.zhihu.com/p/113244063
Huang P S, He X, Gao J, et al. Learning deep structured semantic models for web search using clickthrough data[C]//Proceedings of the 22nd ACM international conference on Information & Knowledge Management. 2013: 2333-2338.
https://blog.csdn.net/qq_38293297/article/details/107143938
https://zh.wikipedia.org/zh-cn/%E5%95%8F%E7%AD%94%E7%B3%BB%E7%B5%B1
https://tech.meituan.com/2021/09/30/artificial-intelligence-customer-service.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。