神经网络多数据集联合训练问题
-
问题描述:现有三个数据集dataset_1,dataset_2,dataset_3用于联合训练,但最后需要在dataset_3上进行测试(dataset_3为实际需求中的数据集),对一下两个方案进行实验:
- 优先对dataset_1,dataset_2进行训练,然后在此权重基础上继续对dataset_3训练。
- 联合dataset_1,dataset_2,dataset_3训练,并按比例分配三个数据集在每个batch size传入的张数,如batch size为64时,三个数据集分别传入16,24,24。
- 在训练时,每个数据集依次训练。按dataset_1,dataset_2,dataset_3的比例设定每个数据集的训练步数,如:dataset_1,dataset_2,dataset_3的比例为1:2:1,对应的训练步数可设定为1步,2步,1步,以此循环训练,并在一定时候减小学习率。
- 实验证明,第三种方案效果更好,其次是第二种。
-
可以继续提高dataset_3精度吗:(很难)
- 方案二完成后,用dataset_3专门训练bn层。(不行)
- 方案二完成后,继续联合dataset_1,dataset_2,dataset_3训练,但保证每个batch size中dataset_3的数量所占比重越来越大,如batch size为64时,三个数据集分别传入6,10,48;到后面再增大为,三个数据集分别传入2,6,56。
- 方案二完成后,用dataset_3专门训练所有层。
(不起作用)