CovaMNet
CovaMNet copied to clipboard
训练阶段的几个问题
您好,想问一下,在训练阶段,就已经对测试集进行测试了对吗? 还有训练阶段的 # Fix the parameters of Batch Normalization after 10000 episodes (1 epoch) if epoch_item < 1: model.train() else: model.eval() 这几行代码是什么意思呢?epoch_item是不是从for epoch_item in range(opt.epochs):这里获取的
您好,关于第一个问题,是的,在训练阶段进行了测试,方便观察模型的效果; 关于第二个问题,这样设置的目的是希望模型训练完一个Epoch之后,固定模型BN层的参数,提高模型的泛化能力,是一个小的trick,当然你可以去掉这个设置,但是需要在train代码里把模型的模式改成model.train()。
感谢您的回答,还有一个问题不是太懂,在训练阶段的代码中episodeSize是代表batch_size吗?可以改变他的大小吗?我发小改变他之后,取N-way数据标签都是0-4,这样会对训练有影响吗?
EpisodeSize代表训练时few-shot task的个数,从task维度理解,batch_size=1,但是如果从sample维度理解,batch_size=support samples + query samples; 改变它的大小对训练有一定的影响,看你是增加task的个数,还是说只是改变query samples的个数,一般不会改变support set的大小。
谢谢!
Wenbin Li, PhD.
Assistant Professor Department of Computer Science and Technology State Key Laboratory for Novel Software Technology Nanjing University, China
Email: @.; @. @.***> Homepage: https://cs.nju.edu.cn/liwenbin/
jpzhai @.***> 于2022年7月14日周四 11:40写道:
感谢您的回答,还有一个问题不是太懂,在训练阶段的代码中episodeSize是代表batch_size吗?可以改变他的大小吗?我发小改变他之后,取N-way数据标签都是0-4,这样会对训练有影响吗?
— Reply to this email directly, view it on GitHub https://github.com/WenbinLee/CovaMNet/issues/5#issuecomment-1183948701, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE3GGHENW2UCEMZ4BBCNBZTVT6DZXANCNFSM53CXDJMA . You are receiving this because you commented.Message ID: @.***>