Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

在VeRi数据集上的训练问题及测试结果。 #107

Closed
fukai001 opened this issue Feb 14, 2019 · 13 comments
Closed

在VeRi数据集上的训练问题及测试结果。 #107

fukai001 opened this issue Feb 14, 2019 · 13 comments

Comments

@fukai001
Copy link

你好,我用VeRi-776数据集进行训练,其中576类作为训练集,200类作为测试集。
1、在model.py中,将class_num=576。
2、在test.py中,将这里model_structure = ft_net(200),设为测试集的200类,执行python test.py时会报错,说训练模型为576维的,而这里200维,不相符。 但是,将这里model_structure = ft_net(576),设为训练集的576类,执行python test.py不报错,但是rank1,rank5,rank10,map的结果全部是0。这是为什么呀?
3、请问,训练集与测试集的类别数目需要一样吗? 在原始code中 Market数据集,训练和测试都是751类。(请问,我使用VeRi-776,如何分配? 是训练集576,测试集200? 还是训练集388,测试集388呢?)

@layumi
Copy link
Owner

layumi commented Feb 15, 2019

Hi @fukai001

  1. 你不需要手动设置,train会自动统计class数量。作为模型的输入。
  2. 测试的时候要和训练的模型一致。 我们是提取特征,而不是提取分类结果。所以你测试时,你需要载入训练的模型(包括分类数是一致的),提取的特征纬度应该是2048(如果你用ft_net)。 关于结果是0,你需要检查特征是否都为不同,在测试时normal等操作是否做的对,输出特征是否为float类型等等,看看哪里有bug。
  3. 原始Market模型数量是不同的, 训练是751类,测试是750类。建议你查一下VerRi-776原来的设置。我记得原来就划好了,可以按照原来的划分进行实验。

@fukai001
Copy link
Author

好的,我再试试,非常感谢!

@layumi layumi closed this as completed Feb 15, 2019
@fukai001
Copy link
Author

Hi @fukai001

  1. 你不需要手动设置,train会自动统计class数量。作为模型的输入。
  2. 测试的时候要和训练的模型一致。 我们是提取特征,而不是提取分类结果。所以你测试时,你需要载入训练的模型(包括分类数是一致的),提取的特征纬度应该是2048(如果你用ft_net)。 关于结果是0,你需要检查特征是否都为不同,在测试时normal等操作是否做的对,输出特征是否为float类型等等,看看哪里有bug。
  3. 原始Market模型数量是不同的, 训练是751类,测试是750类。建议你查一下VerRi-776原来的设置。我记得原来就划好了,可以按照原来的划分进行实验。

你好,对于测试结果为0,我发现应该是图片命名的问题。主要问题在摄像头的命名中。我查看特征向量中的gallery_cam与query_cam发现,所有值都是0。 VeRi数据集的命名是:0002_c002_00030600_0.jpg。有两个问题:
1、命名规则需要完全和Market一样吗? 即,每一个下划线隔开的项目中 的数据位数也必须一致吗?
2、VeRi数据集有20个摄像头,我可以写成:0002_c16s1_00030600_0.jpg吗?

@fukai001
Copy link
Author

不要意思,打扰大神了,我找到问题了,就是图片命名,没有对应上摄像头的名称。 我查看并修改了代码,现在已经解决了,万分感谢。

@weiliuxm
Copy link

请问你具体是什么解决的?
谢谢!

@layumi
Copy link
Owner

layumi commented Mar 19, 2019

https://github.com/layumi/Person_reID_baseline_pytorch/blob/master/test.py#L186
我没跑过VeRi,应该是这一行的0 改成 0:3 来读取 002 或者类似的

@fukai001
Copy link
Author

对的,大神一看就知道。

@weiliuxm
Copy link

是的,大神就是大神!

已解决。非常感谢!

@vz-ww
Copy link

vz-ww commented Dec 19, 2019

你好,我用VeRi-776数据集进行训练,其中576类作为训练集,200类作为测试集。
1、在model.py中,将class_num=576。
2、在test.py中,将这里model_structure = ft_net(200),设为测试集的200类,执行python test.py时会报错,说训练模型为576维的,而这里200维,不相符。 但是,将这里model_structure = ft_net(576),设为训练集的576类,执行python test.py不报错,但是rank1,rank5,rank10,map的结果全部是0。这是为什么呀?
3、请问,训练集与测试集的类别数目需要一样吗? 在原始code中 Market数据集,训练和测试都是751类。(请问,我使用VeRi-776,如何分配? 是训练集576,测试集200? 还是训练集388,测试集388呢?)

你好 请问使用VERI数据集训练要修改什么呢 请问你有上传你的代码么 谢谢

@GaaiLam
Copy link

GaaiLam commented Apr 11, 2020

你好,我用VeRi-776数据集进行训练,其中576类作为训练集,200类作为测试集。
1、在model.py中,将class_num=576。
2、在test.py中,将这里model_structure = ft_net(200),设为测试集的200类,执行python test.py时会报错,说训练模型为576维的,而这里200维,不相符。 但是,将这里model_structure = ft_net(576),设为训练集的576类,执行python test.py不报错,但是rank1,rank5,rank10,map的结果全部是0。这是为什么呀?
3、请问,训练集与测试集的类别数目需要一样吗? 在原始code中 Market数据集,训练和测试都是751类。(请问,我使用VeRi-776,如何分配? 是训练集576,测试集200? 还是训练集388,测试集388呢?)

你好 请问你可以分享一下训练好的pth嘛,暂时在家,我的笔记本训练不了QAQ

@Kang9779
Copy link

Hi @fukai001

  1. 你不需要手动设置,train会自动统计class数量。作为模型的输入。
  2. 测试的时候要和训练的模型一致。 我们是提取特征,而不是提取分类结果。所以你测试时,你需要载入训练的模型(包括分类数是一致的),提取的特征纬度应该是2048(如果你用ft_net)。 关于结果是0,你需要检查特征是否都为不同,在测试时normal等操作是否做的对,输出特征是否为float类型等等,看看哪里有bug。
  3. 原始Market模型数量是不同的, 训练是751类,测试是750类。建议你查一下VerRi-776原来的设置。我记得原来就划好了,可以按照原来的划分进行实验。

您好,想问一下,比如train上的类别为500个ID,val上为200个ID,并且val上的ID在train中不重复,这样train自动统计的class数量是不是不太对?因为从分类的角度来说应该有700个(500+200)

@AI-mzq
Copy link

AI-mzq commented Jun 30, 2020

你好,我想问下。训练时是用fp16训练得到的模型,那么测试时不能用fp16吗 我看test.py中将关于fp16的代码都注释掉了

@yongxianhuang
Copy link

请问有考虑三元组损失吗?我在代码中没有找到

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants