VICO-UoE / URL

Universal Representation Learning from Multiple Domains for Few-shot Classification - ICCV 2021, Cross-domain Few-shot Learning with Task-specific Adapters - CVPR 2022
MIT License
127 stars 18 forks source link

请教两个问题 #6

Closed koko6677 closed 2 years ago

koko6677 commented 2 years ago

您好! 感谢您开源您杰出的工作!我最近也想在meta-dataset上进行一些实验,在使用您的代码过程中,我有两个小问题,想请教一下。问题一:在您的代码中,train_net.py好像是在训练一个普通的带全连接层的softmax分类器,在脚本文件中的train_resnet18_sdl.sh中执行训练时,训练过程中似乎没有epoch的概念,例如在ImageNet上一共迭代480000次,请问训练时,这480000次迭代的batch是如何确定的呢?是否是对训练集完整采样的产生的batch,每隔多少次迭代就把训练集遍历了一遍呢?还是说每次参与迭代的样本都是在训练集中随机采样产生呢?那么这样的话,如何避免可能存在的相邻几次迭代的重复采样的问题呢?问题二:在您发布的代码中似乎没有包含meta-train的过程,假如我想使用您的代码进行meta-train,该如何进行呢? 期待您的回复!

WeiHongLee commented 2 years ago

你好,

感谢您的关注!

代码中我们使用了与SUR论文相同的超参来训练,采样函数我们使用的是meta-dataset提供的代码。可以看一下对应的论文以及代码。

我们的代码提供了不同的meta-train以及meta-test的过程。我猜问题二是关于我们的TSA论文?我们在这里有简要的解释。TSA的meta-training阶段,对于single-domain setting (meta-train on ImageNet only) 我们使用在ImageNet上训练的SDL模型,对于multi-domain setting, 我们使用URL模型,也可以使用vanilla MDL模型。

希望以上信息有帮助!

koko6677 commented 2 years ago

你好,

感谢您的关注!

代码中我们使用了与SUR论文相同的超参来训练,采样函数我们使用的是meta-dataset提供的代码。可以看一下对应的论文以及代码。

我们的代码提供了不同的meta-train以及meta-test的过程。我猜问题二是关于我们的TSA论文?我们在这里有简要的解释。TSA的meta-training阶段,对于single-domain setting (meta-train on ImageNet only) 我们使用在ImageNet上训练的SDL模型,对于multi-domain setting, 我们使用URL模型,也可以使用vanilla MDL模型。

希望以上信息有帮助!

您好,感谢您的回复!对于问题二,可能是我没有表述清楚,所以还是有一些疑惑。我仔细看了下您的代码及对应的脚本,三个训练文件train_net.py、train_net_mdl.py、train_net_url.py里的train_loader都是batch的形式,似乎都是在进行non-episode的训练。假如我想进行episode式的meta-train,例如对protonet进行episode式的meta-train过程,您所发布发的代码是否没有这一部分呢?

WeiHongLee commented 2 years ago

你好,我们大部分实验meta-train都是以batch的形式进行,论文中的一些分析实验用使用到了episodic training的方式。如果你希望在meta-dataset上,在meta-train阶段使用episodic training的方式(PyTorch),可以参考CNAPS以及Simple CNAPS

希望这些信息有帮助!

koko6677 commented 2 years ago

你好,我们大部分实验meta-train都是以batch的形式进行,论文中的一些分析实验用使用到了episodic training的方式。如果你希望在meta-dataset上,在meta-train阶段使用episodic training的方式(PyTorch),可以参考CNAPS以及Simple CNAPS

希望这些信息有帮助! 好的!感谢您耐心而又详细的回复!