SPLADE 项目使用教程

SPLADE 项目使用教程

splade SPLADE: sparse neural search (SIGIR21, SIGIR22) splade 项目地址: https://gitcode.com/gh_mirrors/sp/splade

1. 项目介绍

SPLADE(Sparse Lexical and Expansion Model for First Stage Ranking)是一个用于信息检索的稀疏神经网络模型。SPLADE 通过 BERT 的 MLM 头和稀疏正则化来学习查询和文档的稀疏扩展。与密集表示方法相比,稀疏表示具有以下优势:

  • 高效使用倒排索引
  • 显式词汇匹配
  • 可解释性

SPLADE 在域外数据(如 BEIR 基准测试)上表现出色,并且在 MS MARCO 等域内数据集上也表现优异。SPLADE 项目包含训练、索引和检索 SPLADE 模型的代码,并支持在 BEIR 基准上进行评估。

2. 项目快速启动

环境准备

首先,建议从新环境开始,并从 conda_splade_env.yml 文件中安装所需的包。

conda create -n splade_env python=3.9
conda activate splade_env
conda env create -f conda_splade_env.yml

快速启动

在根目录下运行以下命令,以在玩具数据上执行所有步骤(使用 config_default.yaml 配置):

conda activate splade_env
export PYTHONPATH=$PYTHONPATH:$(pwd)
export SPLADE_CONFIG_NAME="config_default.yaml"
python3 -m splade.all \
  config.checkpoint_dir=experiments/debug/checkpoint \
  config.index_dir=experiments/debug/index \
  config.out_dir=experiments/debug/out

3. 应用案例和最佳实践

模型推理

inference_splade.ipynb 允许你加载并使用训练好的模型进行推理,以检查预测的“扩展词袋”。

模型训练

你可以使用以下命令进行模型训练:

python3 -m splade.train

索引和检索

索引和检索可以通过以下命令完成:

python3 -m splade.index
python3 -m splade.retrieve

创建 Anserini 可读文件

在训练后,运行以下命令以创建 Anserini 可读文件:

SPLADE_CONFIG_FULLPATH=/path/to/checkpoint/dir/config.yaml python3 -m splade.create_anserini +quantization_factor_document=100 +quantization_factor_query=100

4. 典型生态项目

Hugging Face

SPLADE 的权重可以在 Hugging Face 上找到,例如:

BEIR 基准

SPLADE 支持在 BEIR 基准上进行评估,BEIR 是一个用于评估信息检索模型的基准数据集。

Anserini

SPLADE 的索引和检索功能可以与 Anserini 集成,Anserini 是一个用于信息检索的开源工具包。

通过这些生态项目,SPLADE 可以与其他信息检索工具和平台无缝集成,提供更强大的检索能力。

splade SPLADE: sparse neural search (SIGIR21, SIGIR22) splade 项目地址: https://gitcode.com/gh_mirrors/sp/splade

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宁承榕Song-Thrush

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值