Pbihao / HDMNet

93 stars 9 forks source link

关于fss_list #15

Closed kkang-ai closed 1 year ago

kkang-ai commented 1 year ago

尊敬的作者,您好。在复现您的实验的时候,我发现您fss_list中coco数据条目与BAM不一致。请问您在获取fss_list时采取了与BAM不同的操作吗?这个操作是什么?

Pbihao commented 1 year ago

您好,首先非常感谢您对于我们的工作的兴趣,我们在实验中直接使用的是BAM中的fss_list,同时也是PFENet中的list。 对于您说的不一致的情况,我猜测是否是您看的是缓存文件中的条目,因为为了不在训练过程中每次都单独生成一个浪费时间,代码中有部分将每次的进行了缓存,这里您可以将dataset中的相关代码注释掉,就可以重新生成。 如果有什么问题,欢迎反馈,我也可以帮忙检查一下,祝您科研愉快

Pbihao commented 1 year ago

您好,首先感谢您严谨的态度。 我刚刚又检查了一遍,发现Pascal都是一致的,COCO中貌似有几个不一样,貌似BAM中的list删除了几个样本,不过应该不会影响最终的结果,这个数量级相比于总的太小了。当时BAM一方出来的时候我们就进行了复现,并且全部follow可他的实现过程,并没有做任何修改,以及当时大家也没有发现那个问题。 不知道是不是后来作者又做了什么修改,我继续查明一下,不过还是感谢您的严谨的态度。

Pbihao commented 1 year ago

您好,我刚刚进行了验证, 首先对比我们的list和BAM中的list, 发现我们的list中会比BAM多出及其微量的图片(比例大约0.05%),其余绝大部分相同 对于不同的图片进行采样,对于采样出的图片进行验证,确认的图片全部满足实验的要求,不存在训练集中出现验证集中类别,导致信息泄露的问题。 可能后来BAM作者做了什么修改把,貌似删了些case,不过这个0.05%的比例应该也不会造成啥影响,也可能是由于原生数据导致的。 最后再次,感谢您的严谨学术态度!

kkang-ai commented 1 year ago

感谢您的回复,在使用您的(训练权重文件)+(BAM的list)复现时,我发现在fold2上的实验结果与论文有所出入,其他fold基本与论文一致。此外,您在训练时是否遇到coco的fold2,有个别类别在验证时iou始终为0(我猜测是1000次抽取时没有抽到此类)。

Pbihao commented 1 year ago

coco上我们采样使用的10000次的实验,1000确实太少了,所以我当时觉得BAM这个操作很不稳定,在coco上抖得厉害,轻轻松松两三个点抖出去了,而且之前的工作基本也都是10000以上。 不过等于0确实没有遇到欸,会不会是配错了或者别的地方出问题了?我们的结果都是直接报上去,然后我验证过直接执行inference是可以复现的。 不过这个都好说,大不了重跑一边,结果应该都是可以复现的,抖动应该也是小于一个左右很稳 欸,刚才那个问题真的吓我一跳,我还以为我信息泄露了,吓死我了

kkang-ai commented 1 year ago

哈哈哈,确实没泄露。我没有重新跑,只用了您的权重在BAM的list上测试了一下,coco fold2上低了1.9,不知道是不是显卡不一样的问题,不过其他fold都和论文差不多。训练中的1000次验证中也没出现一直等于0吗,我这边第20个类一直等于0。能看一下您在coco_fold2的log文件吗? image

Pbihao commented 1 year ago

我找不到最终版本的log了,但是我找到一个中间跑消融的log 确实低,但是不是0,我感觉0很不正常啊,就算是特别低,也应该是0.08这种,因为实验有抖动嘛,抖抖也不可能是0啊。 可能真的是你说的,类别一个都没有,感觉有一个都不会是这么绝对的数字。 1000我只跑过一次,一看最大最小相差四个点我直接放弃了,哈哈哈哈哈哈,这种差距,实验结果岂不是全看运气,运气好想多少有多少,所以可能也没咋留意 image

Pbihao commented 1 year ago

确实找不到最后的log了,我们学校的服务器迁移过一次,丢了很多东西,找到一些探索的时候随随便便跑的 image image

kkang-ai commented 1 year ago

下面这个图片是训练时的log图片吗,我在10000测试时也不是0,在训练的时候1000次选最优的时候,我第20类一直是0,所以我感觉我是在19个类别里选最好的。

Pbihao commented 1 year ago

是test的,我找不到最后的log了,但是有中间过程的结果。训练过程的会高一些。 不过不好意思啊,因为我还要帮朋友改nips的rebuttal,所以时间也有限,抱歉啊

kkang-ai commented 1 year ago

好的,感谢您的耐心回复。

kkang-ai commented 1 year ago

抱歉,还得在打扰您一下。在做coco实验的时候,需要将下图中的test_num改为10000吗,还是说训练的时候就是1000,用1000的结果做10000次测试。 207daed6d4ae09fc3922c30bc388f9b

Pbihao commented 1 year ago

训练的时候可以小一点,不然训练太慢了,测试的时候改成10000.。 这里是为了节省训练的时间开销.

kkang-ai commented 1 year ago

您做实验的时候选取的是多少,方便透露吗?我是否可以把这个当做一个可调节的参数?

Pbihao commented 1 year ago

3000,不过这个超参数我没咋仔细研究,随便调的。然后最后的结果也没咋仔细调,跑了个结果就报了,因为few-shot一次的开销实在太大了

kkang-ai commented 1 year ago

我明白了,感谢。