bge训练切换左右塔
您好,想问下在训练bge-embedding模型的时候,我在训练用passage去召回相关的query任务后,在使用微调后模型时,用query召回passage,发现效果不佳。但是从原理上来看,bge只是一个embedding模型,左右塔应该是对称的。想问一下这是什么原因啊
embedding只训练了q到p的损失,没有计算p到q到损失,可能不太具备双向检索的能力,因此建议q和p训练任务与下游任务保持一致。或者修改loss,改为像clip那样的双向loss。
embedding只训练了q到p的损失,没有计算p到q到损失,可能不太具备双向检索的能力,因此建议q和p训练任务与下游任务保持一致。或者修改loss,改为像clip那样的双向loss。
但是我训练时构造训练数据集也是{query:passage, pos:[q1,q2,q3], neg:[q5, q6,...,qm]},理论上这样计算的应该是计算p到q到损失啊
embedding只训练了q到p的损失,没有计算p到q到损失,可能不太具备双向检索的能力,因此建议q和p训练任务与下游任务保持一致。或者修改loss,改为像clip那样的双向loss。
但是我训练时构造训练数据集也是{query:passage, pos:[q1,q2,q3], neg:[q5, q6,...,qm]},理论上这样计算的应该是计算p到q到损失啊
是的,但建议训练和推理保持一致。训练使用什么作为query,测试就使用什么。