文献分享: 对ColBERT段落多向量的剪枝——基于学习的方法

原论文

1. 导论 & \textbf{\&} &方法

1️⃣要干啥:在 ColBERT \text{ColBERT} ColBERT方法中,限制每个段落要保留的 Token \text{Token} Token的数量,或者说对段落 Token \text{Token} Token进行剪枝

2️⃣怎么干:注意以下方法都是整合进 ColBERT \text{ColBERT} ColBERT训练的顶层池化层,而非在后期交互中进行改进

  1. 前 k k k位置 Token \text{Token} Token:只保留每个段落的前 k k k个 Token \text{Token} Token
  2. 前 k k k罕见 Token \text{Token} Token:选择段落中最罕见的 k k k个 Token \text{Token} Token,所谓罕见的 Token \text{Token} Token即 IDF \text{IDF} IDF高的 Token \text{Token} Token
  3. 前 k k k闲置 Token \text{Token} Token:在段落前添加 k k k个特殊 Token \text{Token} Token,这些 Token \text{Token} Token在 BERT \text{BERT} BERT词汇表中标为闲置(unused),最终只保留这 k k k个 Token \text{Token} Token
  4. 前 k k k得分 Token \text{Token} Token:用预训练模型的最后一层注意力机制给所有 Token \text{Token} Token一个注意力评分,选取注意力机制最高的 k k k个 Token \text{Token} Token
    • 注意力张量: P = { p 1 , p 2 , . . . , p m } P\text{=}\{p_1,p_2,...,p_m\} P={p1,p2,...,pm}的注意力为三维张量 A ( h , i , j ) A(h,i,j) A(h,i,j),表示在 h h h头注意力机制中 p i p_i pi与 p j p_j pj二者的注意力相关性
    • 注意力评分:以 p i p_i pi为例,其注意力评分为每个注意力头中与 p i p_i pi有关行的总和,即 a ( q i ) = ∑ h = 0 h max ⁡ ∑ j = 0 m A ( h , i , j ) a(q_i)\text{=}\displaystyle{}\sum_{h=0}^{h_{\max}}\sum_{j=0}^{m}A(h,i,j) a(qi)=h=0∑hmaxj=0∑mA(h,i,j)

2. \textbf{2. } 2. 实验概要

1️⃣训练方法: ColBERT \text{ColBERT} ColBERT使用 Mini-LM \text{Mini-LM} Mini-LM时无需归一化和查询扩展,大幅降低计算成本​

2️⃣检索性能:当 k = 50 k\text{=}50 k=50时,剪枝可减少 30% \text{30\%} 30%的段落索引,并且性能减少极小( nDCG@10 \text{nDCG@10} nDCG@10减小 0.01 \text{0.01} 0.01)

3️⃣方法对比:当普通剪枝( k =50 k\text{=50} k=50)时方法 1&3 \text{1\&3} 1&3最佳,剧烈剪枝( k =10 k\text{=10} k=10)时方法 3 3 3显著优于其它方法

相关推荐
不会就选b2 分钟前
算法日常・每日刷题--<贪心>26
数据结构·算法
by2099918 分钟前
从结构体到对象:正式学习C++类的骨架、封装与this指针
c++·经验分享·学习
乌暮31 分钟前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习
小雪崩2 小时前
嵌入式学习 day60:ARM汇编——触摸屏与SPI
汇编·arm开发·学习
hetao17338372 小时前
2026-09-29 hetao1733837 的刷题记录
c++·算法
问天_观心2 小时前
大模型训练与推理优化(二)
人工智能·深度学习·学习·大模型·transformer
欣欣之王来了2 小时前
AI合规专项:AI算法透明度的合规要求
人工智能·算法
wzdark2 小时前
分块思想在算法优化中的实践与应用4
算法
Because_of_Her13 小时前
dfs-洪水填充技巧
笔记·算法·深度优先·洪水填充
小静AI工程实验室3 小时前
RSA 算法详解:从模幂原理到 OAEP 加密、PSS 签名与 Python 实验
python·算法