文献分享: 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个向量
- 嵌入阶段:为查询 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}
- 线性变换:拼接所有段落单向量为 [ 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
- 后期交互:同 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️⃣改进的动机:为何非要固定数目的段落向量
- 存储效率上:设定 C < M C\text{<}M C<M后,能降低段落嵌入所占的空间
- 计算效率上:设定 C < M C\text{<}M C<M后,将原有 O ( M N ) O(MN) O(MN)的查询复杂度降为了 O ( C N ) O(CN) O(CN)
- 系统级优化:使得内存对齐,规避了变长文档表示导致内存碎片化,从而降低了 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对段落的存储空间需求减少了一半多,端到端检索响应速度也显著加快
相关文章:

文献分享: ConstBERT固定数目向量编码文档
😂图放这了,大道至简的 idea \text{idea} idea不愧是 ECIR \text{ECIR} ECIR 👉原论文 1. ConstBERT \textbf{1. ConstBERT} 1. ConstBERT的原理 1️⃣模型的改进点:相较于 ColBERT \text{ColBERT} ColBERT为每个 Token \text{Tok…...

学习记录-用例设计编写
黑马测试视频记录 目录 一、 软件测试流程 二、测试用例编写格式 1、等价类法 2、边界值分析法 3、 判定表法 4、场景法编辑 5、错误推荐法 一、 软件测试流程 二、测试用例编写格式 1、等价类法 2、边界值分析法 3、 判定表法 4、场景法 5、错误推荐法 时间紧任务重…...

学习工具的一天之(burp)
第一呢一定是先下载 【Java环境】:Java Downloads | Oracle 下来是burp的下载 Download Burp Suite Community Edition - PortSwigger 【下载方法二】关注的一个博主 【BurpSuite 安装激活使用详细上手教程 web安全测试工具】https://www.bilibili.com/video/BV…...
el-tree右键节点动态位置展示菜单;el-tree的节点图片动态根据节点属性color改变背景色;加遮罩层(opacity)
一、el-tree右键节点动态位置展示菜单 关键:@node-contextmenu="handleRightClick"与@node-click=“handleNodeClick” <div class="content"><el-tabs class="tabs" @tab-click="handleClick" v-model="Modal"…...
K8s 1.27.1 实战系列(一)准备工作
一、主机规划与硬件要求 1、节点数量 至少需要 3 台服务器(1 台 Master 节点,2 台 Worker 节点)。本地测试可缩容:若仅用于测试,可缩减为 1 个 Master 和 1 个 Worker,但需注意稳定性风险。2、硬件配置 Master 节点:建议 2 核 CPU、8GB 内存、80GB 硬盘。Worker 节…...

说一下SpringBoot3新特新和JDK17新特性
JDK1.8(Java8)新特性 stream流式编程 流处理 Stream API 提供了对集合数据进行操作的一种高效、简洁的方式。它支持顺序和并行的聚合操作 如:过滤(filter)、排序(sort)、映射(map&…...

Linux系统服务安全检测手记
一:服务器ip暴露ip和端口的安全问题 服务器IP和端口暴露在外网中确实存在一定的安全风险,以下是几个主要的安全问题及相应的缓解措施: ### 主要安全问题 1. **直接攻击**: - 暴露的IP地址和开放的端口可能成为黑客直接攻击的…...

鸿蒙与DeepSeek深度整合:构建下一代智能操作系统生态
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 https://www.captainbed.cn/north 目录 技术融合背景与价值鸿蒙分布式架构解析DeepSeek技术体系剖析核心整合架构设计智能调度系统实现…...
[创业之路-329]:华为铁三角实施的步骤
一、通用过程 华为铁三角实施的步骤主要包括以下几个关键阶段: 1、明确角色与职责 确定铁三角成员:组建由客户经理(AR)、解决方案经理(SR)和交付经理(FR)组成的铁三角团队。制定岗…...

1.15-16-17-18迭代器与生成器,函数,数据结构,模块
目录 15,Python3 迭代器与生成器15-1 迭代器15-1-1 基础知识15-1-2 迭代器与for循环工作原理 15-2 生成器(本质就是迭代器)15-2-1 yield 表达式15-2-2 三元表达式15-2-3 列表生成式15-2-4 其他生成器(——没有元祖生成式——&…...
java面向对象(详细讲解)
第一章 类和对象 1.面向对象的介绍 1.面向过程:自己的事情自己做,代表语言c语言 2.面向对象:自己的事情别人做,代表语言java 3.为啥要使用面向对象思想编程:很多功能别人给我们实现好了,我们只需要拿过…...

代码随想录二刷|图论2
图论 基础知识 1 无向图 (1)度:一个顶点连n条边就度为n (2)权 加权无向图:有边长的无向图 (3)通道:两个顶点之间有一些边和点,并且没有重复的边 路&am…...

毕业项目推荐:基于yolov8/yolov5/yolo11的暴力行为检测识别系统(python+卷积神经网络)
文章目录 概要一、整体资源介绍技术要点功能展示:功能1 支持单张图片识别功能2 支持遍历文件夹识别功能3 支持识别视频文件功能4 支持摄像头识别功能5 支持结果文件导出(xls格式)功能6 支持切换检测到的目标查看 二、数据集三、算法介绍1. YO…...

服务器CPU微架构
1、微架构图 前端:预解码、解码、分支预测、L1指令缓存、指令TLB缓存 后端:顺序重排缓存器ROB处理依赖,调度器送到执行引擎 执行引擎:8路超标量,每一路可以进行独立的微操作处理 Port0、1、5、6支持整数、浮点数的加…...

用本地浏览器打开服务器上使用的Tensorboard
文章目录 前言一、Tensorboard的安装二、使用步骤1.服务器上的设置2.在本地打开 总结 前言 最近有使用服务器上的Tensorboard的需求,踩了几个雷,现已在搜索和帮助下解决,总结于此。 一、Tensorboard的安装 pip install tensorboard2.12.0注…...

Nginx或Tengine服务器配置SSL证书
本文将全面介绍如何在Nginx或Tengine服务器配置SSL证书,具体包括下载和上传证书文件,在Nginx上配置证书文件、证书链和证书密钥等参数,以及安装证书后结果的验证。成功配置SSL证书后,您将能够通过HTTPS加密通道安全访问Nginx服务器…...

【基础4】插入排序
核心思想 插入排序是一种基于元素比较的原地排序算法,其核心思想是将数组分为“已排序”和“未排序”两部分,逐个将未排序元素插入到已排序部分的正确位置。 例如扑克牌在理牌的时候,一般会将大小王、2、A、花牌等按大小顺序插入到左边&…...
2安卓开发的主要语言
1. Kotlin(官方首选语言) 定位:Google 官方推荐的首选 Android 开发语言(2019 年起)。 优势: 简洁高效:语法糖减少样板代码(如 data class 自动生成 equals()/hashCode()࿰…...

Python练习(握手问题,进制转换,日期问题,位运算,求和)
一. 握手问题 代码实现 ans0for i in range(1,51):for j in range(i1,51):if i<7 and j<7:continueelse:ans 1print(ans) 这道题可以看成是50个人都握了手减去7个人没握手的次数 答案:1204 二.将十进制整数拆解 2.1门牌制作 代码实现 ans0for i in ra…...

vtk 3D坐标标尺应用 3D 刻度尺
2d刻度尺 : vtk 2D 刻度尺 2D 比例尺-CSDN博客 简介: 3D 刻度尺,也是常用功能,功能强大 3D 刻度尺 CubeAxesActor vtkCubeAxes调整坐标轴的刻度、原点和显示效果,包括关闭小标尺、固定坐标轴原点,以及设置FlyMode模…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...

大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
c# 局部函数 定义、功能与示例
C# 局部函数:定义、功能与示例 1. 定义与功能 局部函数(Local Function)是嵌套在另一个方法内部的私有方法,仅在包含它的方法内可见。 • 作用:封装仅用于当前方法的逻辑,避免污染类作用域,提升…...

第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)
第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10pip3.10) 一:前言二:安装编译依赖二:安装Python3.10三:安装PIP3.10四:安装Paddlepaddle基础框架4.1…...

实战设计模式之模板方法模式
概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...