chaofan

Results 117 comments of chaofan

Training for 1-2 epochs is enough.

1. It will truncate long contexts, so there is no need to decrease the batch size. 2. Follow the tokenizer's raw padding side.

想减少运行时间的话可以尝试使用低层输出、减少rerank的范围或使用bge-reranker-v2-m3 关于推理加速框架方面我们没有具体探究过

torchrun --nproc_per_node=4就会启动DDP 微调的时候需要加上`--finetune_type from_finetuned_model`以及将`linear_head`放到`target_modules`中 上述报错是计算损失函数时,有些模型参数没有被使用引起的,可以设置`--ddp_find_unused_parameters True`来启用未使用参数检测。这样,PyTorch 会检查哪些参数在计算损失时没有被使用,从而帮助找出问题所在

微调前后使用embedding / embedding + reranker的结果分别是多少呢

reranker是对top-200排序吗,训练后结果比训练前还差吗 训练的时候如果数据支持的话train_group_size可以适当增大点,只用一个hard negative有点少

max_len是问题+答案一起的长度 只对top-100重排的话embedding的recall@100和使用reranker后的recall@100应该是同一个值,是不会出现75.68和72.4的情况的 39 41 51这三个分别是什么结果呢

应该还是领域相关的问题,在特定领域上reranker需要进行微调,同时数据量越多越好,num_train_epochs也不需要那么大,基本上一两个epoch就可以收敛,每组数据最好多放点hard negative,如果hard negative数量少于train_group_size - 1的话,那么只是简单的重复hard negative,并不会带来提升 关于reranker与embedding效果一样这方面,可以测一下MRR或NDCG等指标,看是否存在差距

数据量是足够的,可以使用gradient_checkpointing / deepspeed / fp16 / bf16等节省显存

可以考虑通过评估MRR或NDCG等指标,以确定是否存在差异。同时,也可以尝试在不同的数据集上进行评估。 如果MRR和NDCG的结果相同,可能是reranker的使用存在问题。 否则,可能是reranker在训练过程中出现了问题。可以尝试使用m3-reranker模型进行训练和测试,观察不同步数和学习率等参数设置下的结果差异,以及loss的下降趋势。