大模型RAG的核心-文本召回模型
·
大模型RAG的核心-文本召回模型
什么是文本召回?是从向量数据库中召回与用户问题相关的文本片段。
最简单的文本召回环节示意图如下所示:

文本召回模型是大模型RAG的核心,介绍一下经典模型,包括稠密向量检索模型和稀疏向量检索模型。一类是基于BERT、GPT等深度学习模型的稠密向量检索模型,一类是以TF-IDF、BM25为代表的稀疏向量检索模型。稠密向量检索模型更擅长提取文本中的语义信息,稀疏向量检索模型更擅长提取关键词信息。大家看到常用的混合检索是把这两类模型优点都吸收了。
稀疏向量检索模型
介绍TF-IDF模型前,先介绍下最初的朴素词袋模型,朴素词袋模型是将文本片段转换为向量的一种最简单的方法,它将文本看作一个“袋子”,只关注文本中是否包含某个词,并统计每个词出现的频率,而不考虑词的顺序,也无法提取文本的语义信息。这个模型存在2个缺点,1是没有考虑文本长度对词频的影响,文本越长,某些词的可能性就会越大。2是该模型没有考虑常见词(如“的”,“你”)的权重问题。
TF-IDF是由词频(TF)和逆文件频率(IDF)相乘得到的。TF-IDF就是解决以上2个问题,它的核心思想是,一个词在一段文本中出现的次数越多,同时在其他文本中出现的次数越少,越能够代表该段文本。像一些搜索,检索类的框架用这个算法来推荐打分,比如Elasticsearch相关评分度。
BM25与朴素词袋模型和TF-IDF不同,它不是先计算文本向量,再通过向量计算相似度,而是直接根据查询文本和候选文本计算相似度。BM25是一个改进版,1是它考虑了词频对相似度评分的饱和度影响。比如一段100个词的文本,其中有10个词是“桃子”,根据BM25的思想,认为该文本跟“桃子”是强相关,而不要求“桃子”出现100词才能认为强相关。BM25会设置一个阈值,当到达了后,后续再出现就不会产生很大的影响。2是BM25在计算相似度时不仅考虑当前文本的长度,还考虑它与平均文本长度的相对大小。
稠密向量检索模型
BERT模型是基于transformer编码器结构而来的。每个位置的token拥有双向注意力,在句子开头位置的[cls]token也可以感知文本的全局信息。允许他前后翻看,联系上下文来理解每一个词、每一句话的真正含义。
GPT模型是基于transformer解码器结构而来的。它采用的单向注意力机制,每个位置的token只能感知到其之前的信息。如果想用单个位置向量来代表句向量,那么只能选用最后位置的向量。他只能根据已经写出来的内容(上文)来预测下一个最可能是什么(单向注意力)。
通过以上我们也了解为什么BERT更适合做情感分析,文本分类,语义分析;GPT则更适合做生成式的创造和预测内容,比如创造文章,对话聊天。
大模型全套学习教程资料点击这里获取NO米!
更多推荐



所有评论(0)