长文本 Embedding 模型中的“迟分”策略

e94cb68159ba8985a6cdf803494995a5.png

大约一年前,2023 年 10 月,我们推出了全球首个支持 8K 上下文长度的开源 Embedding 模型 —— jina-embeddings-v2-base-en。自此,长文本在 Embedding 模型中的应用引发了广泛讨论和争议。

  1. 信息压缩问题:将数千字的长文本编码为单一 Embedding 表示会导致语义信息的"过度压缩",使得检索系统难以准确定位特定信息。

  2. 检索粒度不足:许多应用,尤其是检索增强生成(RAG)系统,需要检索文档中的较小片段,而非整个长文档。

  3. 短文本检索优势:基于密集向量的检索系统在处理短文本时通常表现更好,因为短文本的语义信息更容易被准确编码和检索。

71fcd6eabe5afad283f6a3b31981024d.png
一个典型的 RAG Pineline 包括:分块-Embedding-检索-生成。

那么,如果行业只需要具有 512 上下文长度的 Embedding 模型,那么训练 8192 上下文长度的模型又有什么意义呢?

在本文中,我们通过探讨 RAG 中传统分块 -> Embeddings 流程的局限性,来重新审视这个问题。同时,我们还引入了一种新策略,称为 分(Late Chunking),能够在保留长文本 Embedding 模型优势的同时,也能满足精细粒度检索的需求。

上下文丢失问题

传统的分块 - Embedding - 检索 - 生成流程在处理长文档时可能会丢失长距离的上下文依赖关系,这对于信息检索和理解是一大隐患。换句话说,当关键信息散落在多个文本块中,脱离上下文的文本片段很可能失去其原有的意义,导致处理效果大打折扣。

以维基百科上的一篇关于柏林的文章为例,若将其分割为句子块,不难发现诸如“其”和“这座城市”等指代表达,实际上指向的是文章开头提到的“柏林

### 中文 Embedding 模型概述 中文 embedding 模型旨在将汉字或词语映射到连续向量空间中,使得语义相似的词具有相近的表示形式。这种模型对于自然语言处理任务至关重要,因为它能捕捉词汇间的复杂关系并用于多种下游任务。 #### 原理 中文 embedding 的构建依赖于分布假设理论,即上下文中频繁共同出现的单词往往有更接近的意义[^1]。具体来说: - **Word2Vec** 是一种广泛应用的技术框架,它利用神经网络来训练 word embeddings。Skip-Gram 和 Continuous Bag of Words (CBOW) 是两种主要架构,在 CBOW 方法下预测目标字由周围环境决定;而在 Skip-Gram 方式里,则相反地根据单个输入去推测周围的多个输出项。 - **FastText** 扩展了 Word2Vec 的概念,不仅考虑整个单词作为单位,还将其分解成 n-gram 片段来进行建模。这允许更好地理解罕见词以及未登录词(OOV),因为即使某个完整的字符序列未曾见过,也可以通过组合已知片段获得合理的嵌入表达。 - **BERT** 及其变体引入了双向 Transformer 编码器结构,实现了对句子级别的 deep bidirectional representations 训练。不同于以往仅从前向或者后向单一方向读取文本的方法,BERT 能够同时获取左右两侧的信息,进而得到更加全面而精准的语言特征描述。 ```python from transformers import BertTokenizer, BertModel tokenizer = BertTokenizer.from_pretrained('bert-base-chinese') model = BertModel.from_pretrained('bert-base-chinese') text = "我喜欢学习新的东西" encoded_input = tokenizer(text, return_tensors='pt') output = model(**encoded_input) print(output.last_hidden_state.shape) ``` #### 实现 实现一个有效的中文 embedding 模型通常涉及以下几个步骤: - 数据预处理阶段包括分词、去除停用词等操作; - 构造合适的负样本策略以增强对比度损失函数的效果; - 使用 GPU 加速计算密集型矩阵运算过程; - 对最终产出的结果做降维可视化以便直观感受质量好坏。 #### 应用场景 这些高质量的向量表征可以直接应用于诸多实际问题解决当中,比如但不限于: - 文本分类:判断新闻文章所属类别或是垃圾邮件过滤; - 机器翻译:辅助跨语言交流沟通; - 推荐系统:依据用户历史行为推荐个性化商品服务; - 情感分析:评估消费者评论情绪倾向性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值