FlagEmbedding icon indicating copy to clipboard operation
FlagEmbedding copied to clipboard

如何把交叉选负样本的功能关了

Open Scottlinzy opened this issue 2 years ago • 5 comments

请问如何把交叉选负样本的功能关了,因为可能存在别的集合的负样本是这个集合的正样本,同样也会存在别的集合的正样本也是这个集合的正样本

Scottlinzy avatar Jan 05 '24 13:01 Scottlinzy

目前还不具备这个选项,需要修改modeling.py文件中的代码:https://github.com/FlagOpen/FlagEmbedding/blob/master/FlagEmbedding/baai_general_embedding/finetune/modeling.py#L89, 如果您实现了的话欢迎提交PR。

一种替代的方式是把per_device_train_batch_size设为1,这样就不会使用其他的负样本。同时可以通过设置参数gradient_accumulation_steps来控制更新的batch size。

staoxiao avatar Jan 06 '24 12:01 staoxiao

怪不得我觉得训练后的结果有些问题~~~

xxllp avatar Mar 26 '24 01:03 xxllp

目前已加入该功能:设置--use_inbatch_neg False可关闭交叉选负样本

staoxiao avatar Mar 26 '24 03:03 staoxiao