1 文本表征
文本表征是自然语言处理中的关键部分,尤其在当前大模型快速发展的背景下。由于大模型存在知识有限、处理文本长度有限、保密要求和大模型幻觉等问题,结合外部数据显得尤为重要。
为了便于存储和检索,除了保存纯文本外,还需要将文本转换为数组形式,以实现模糊查找和上下文语义理解。这使得在不同应用场景下如何进行编码成为一个重要课题。
我最近在优化本地知识存储,调研了一些文本表征方法,包括:文本表征发展过程、相关中文资源、检索增强生成的优化方法、词向量与早期文本数据库工具结合,以及在信息提取、社交网络和电子商务领域中词嵌入的优化方法。共八个部分,将在之后的 8 天内在公众号连载。本文作为开篇,先给出收获和总结。(下文中 Embedding 与嵌入同义)
关键字:embedding-based retrieval,RAG,Information Retrieval
2 问题与解答
在调研之前,我一直有以下一些疑问。在研读过程中,我得到了答案和启发。以下是我目前的个人理解,可能并不完全正确。
2.1 问题一
本地知识库是否必须使用深度学习表示?
目前,知识表示的主要方法包括:基于规则的方法、统计方法和基于神经网络的方法。
现在常说的 Embedding 一般指的是基于深度学习神经网络的稠密向量存储。它对文本理解的效果是目前最好的,但在存储、转换和索引过程中占用的资源和复杂度也更大。
是否需要使用 Embedding 主要取决于使用场景。如果多数情况下只做关键字搜索和模糊搜索,使用基于规则或者统计的方法即可,无需 Embedding。但是,如果想基于本地知识做问答系统,涉及较多文本理解和对话上下文,则需要 Embedding。
其核心逻辑是:Embedding 可以理解字面意思以外的深层意思。
2.2 问题二
除了知识库,文本表示的主要应用场景有哪些?
可以说,有文字并且需要整理、预测或决策的地方都能用到文本表示。
从几篇关于 Embedding 应用的较新论文可以看出,在电子商务、信息提取、社会网络中