文献分享: ConstBERT固定数目向量编码文档

😂图放这了,大道至简的 idea \text{idea} idea不愧是 ECIR \text{ECIR} ECIR

👉原论文

1. ConstBERT \textbf{1. ConstBERT} 1. ConstBERT的原理

1️⃣模型的改进点:相较于 ColBERT \text{ColBERT} ColBERT为每个 Token \text{Token} Token生成一个向量, ConstBERT \text{ConstBERT} ConstBERT只为段落生成固定 C C C个向量

  1. 嵌入阶段:为查询 Q Q Q和段落 P P P的每个 Token \text{Token} Token都生成一个 d d d维向量,是为 { q 1 , ... , q N } \{q_{1},\ldots,q_{N}\} {q1,...,qN}和 { p 1 , ... , p M } \{p_{1},\ldots,p_{M}\} {p1,...,pM}
  2. 线性变换:拼接所有段落单向量为 [ p 1 , ⋯   , p M ] ∈ R d M \left[p_{1},\cdots,p_{M}\right]\text{∈}\mathbb{R}^{dM} [p1,⋯,pM]∈RdM,进行 W ∈ R M k × C k \mathbf{W}\text{∈}\mathbb{R}^{Mk\text{×}Ck} W∈RMk×Ck投影得 [ δ 1 , ⋯   , δ C ] = W T [ p 1 , ⋯   , p M ] ∈ R d C \left[\delta_{1},\cdots, \delta_{C}\right]\text{=}\mathbf{W}^{T}\left[p_{1},\cdots,p_{M}\right]\text{∈}\mathbb{R}^{dC} [δ1,⋯,δC]=WT[p1,⋯,pM]∈RdC
  3. 后期交互:同 ColBERT \text{ColBERT} ColBERT,为每个 q i q_i qi找到与其内积最大的 MaxSim ( q i , δ ) = δ p i \text{MaxSim}(q_i,\delta)\text{=}\delta_{p_i} MaxSim(qi,δ)=δpi,最后将所有 MaxSim \text{MaxSim} MaxSim相加得到相似度评分

2️⃣改进的动机:为何非要固定数目的段落向量

  1. 存储效率上:设定 C < M C\text{<}M C<M后,能降低段落嵌入所占的空间
  2. 计算效率上:设定 C < M C\text{<}M C<M后,将原有 O ( M N ) O(MN) O(MN)的查询复杂度降为了 O ( C N ) O(CN) O(CN)
  3. 系统级优化:使得内存对齐,规避了变长文档表示导致内存碎片化,从而降低了 Cache Miss \text{Cache Miss} Cache Miss

2. ConstBERT \textbf{2. ConstBERT} 2. ConstBERT的实验结果

1️⃣效果:当 C = 32 C\text{=}32 C=32时,在 MsMarco/BEIR \text{MsMarco/BEIR} MsMarco/BEIR等数据集上,查询效果与 ColBERT \text{ColBERT} ColBERT相当(用 MRR@10/nDCG@10 \text{MRR@10/nDCG@10} MRR@10/nDCG@10衡量)

2️⃣效率:相比 ColBERT \text{ColBERT} ColBERT对段落的存储空间需求减少了一半多,端到端检索响应速度也显著加快

相关推荐
GBASE16 分钟前
ITPUB专访南大通用——GBase 8s数据库以内核铸根基,以生态赢未来
数据库
GBASE25 分钟前
GBASE南大通用技术分享:构建最优数据平台,GBase 8s数据库安装准备(二)
数据库
林熙蕾LXL39 分钟前
SQL Server——基本操作
数据库·sql
GBASE1 小时前
GBASE南大通用技术分享:构建最优数据平台,GBase 8s数据库安装准备
数据库
IOT-Power1 小时前
树莓派 Ubuntu 24.04 开机换源总结
linux·数据库·ubuntu
阿华田5121 小时前
重试框架 -- Guava Retry
数据库
柠檬汁Dev1 小时前
还在等DBA给你库?我3分钟就拉起一个高可用集群
数据库·云计算·dba
安卓开发者2 小时前
鸿蒙NEXT应用数据持久化全面解析:从用户首选项到分布式数据库
数据库·分布式·harmonyos
少男的脸红藏不住心事2 小时前
GD32入门到实战35--485实现OTA
数据库·mongodb·nosql
爬山算法3 小时前
Redis(50) Redis哨兵如何与客户端进行交互?
数据库·redis·交互