训练数据问题

#1
by NLPArtisan - opened

请问这版模型训练数据是用开源的一些数据训练么?有专门对比cmteb的测试任务数据来进行隔离嘛,我们发现开源搜集到的很多数据会与cmteb的测试任务有重合,这会导致泄漏。

SenseNova org

hello, 感谢关注,我们训练数据与cmteb测试集做了隔离。
我们最近在整理技术报告,使用的训练数据也将提及。细节会在未来一周左右的时间放出。

请问这版模型训练数据是用开源的一些数据训练么?有专门对比cmteb的测试任务数据来进行隔离嘛,我们发现开源搜集到的很多数据会与cmteb的测试任务有重合,这会导致泄漏。

hi,哪些数据会和测试任务有重合呢

一开始我们发现按照CMTEB对应的测试任务名去搜集数据,这些很多会有泄漏(泄漏query或passage),而且CMTEB测试数据是公开的明文可以拿到,严格来说,不论何种方式获取的训练数据,都应该和CMTEB测试数据进行隔离,这样训出来的模型指标才相对可靠。

SenseNova org

hello,可以关注一下我们tech report中的dataset部分。
因为我们方法主要关注一种混合的训练损失的有效性,在finetune阶段并没有用太多其他开源的数据。
我们用到的数据大部分来自于cmteb train split,可以保证没有和test split重叠。
对于clustering任务,会稍微有点特殊,我们采用了SFR embedding中的方法,在数据集里对test任务的数据进行了删除,因此也是可以保证没有重叠的。

SenseNova org

piccolo2的方法因为主要关注下游的通用微调方式,我们也在model card里说明了我们采用了stella-v3.5的pretrain。
我们在finetune过程中尽量保证了没有出现数据集的泄露,但还有一种情况是,pretrain模型可能会有overfit的情况,这一点我们确实无法控制。
不过总的来说,采用多任务混合损失进行微调确实有非常不错的效果,推荐您试试github上的微调代码。

Sign up or log in to comment