Shitao Xiao

Results 509 comments of Shitao Xiao

是的,没有进行词汇拓展。感谢建议,之后会纳入考虑。

参考https://github.com/FlagOpen/FlagEmbedding/blob/master/FlagEmbedding/baai_general_embedding/finetune/hn_mine.py#L65, neg负例的挖掘全部是从汇总所有的pos+neg从中筛选。 可以传入candidate_pool参数:`candidate_pool `,传入一个文件里面包括你想要挖掘的负样例。 另外,从效果考虑,可以直接从BAAI/bge-m3上进行微调。

可以把所有query和pos汇总再一起当作candidate_pool。 BAAI/bge-m3经过了一次微调,从上面启动应该会更好。

难负例的意义在于挖掘向量模型不好区分的样本进行进一步训练,embedding模型可以选择基础模型,挖完后用基础模型微调。 难负例挖掘一直也是学术届的一个问题,挖掘太难的样本很容易产生伪负例,这些也可以通过其他手段进行进一步剔除。另外, 我们提供了range_for_sampling超参数去控制负样本的范围。

> 您好,我看了项目中微调部分的代码,想与您确认一下,微调训练的损失函数是否采用的是有监督SimCSE的对比损失。 是的,采用和simcse一样的infonce对比loss

MKQA的评测代码会在近期放出。 pos_scores和neg_scores由更准确的模型计算出,如微调过的reranker

datasets库本身是将数据放在磁盘上的,应该不会占据太多内存。您是在加载数据的时候出现了内存溢出问题吗? 另外,欢迎提交PR。但建议保持原来的方式,增加一个参数用来开启流式API

https://github.com/FlagOpen/FlagEmbedding/blob/bd38bd350054d0dba39ea8d602afac1fab141b35/FlagEmbedding/reranker/data.py#L68 GroupCollator中会进行padding。

需要按照datasets :`pip install datasets `