Mebigger
Mebigger
@CaptainEven 非常感谢您的回复, 您的意思是把train函数中的net=RepNet 改成 net=InitRepNet 吗,如果是的话,我改完之后accuary还是0(我已经导入了vgg16网络和预训练的权重)。
@CaptainEven 对的,标签先经过了ProcessVehicleID.py的处理,print了vgg.state_dict(),确认权重模型没问题
@CaptainEven C:\Softwares\python.exe C:/WYX-Py_projects/Veichle_ReID/Program/RepNet-VehicleReID-master/RepNet.py => out_ids: 10086, out_attribs: 257 => in dim: 1000, out dim: 10086 => in dim: 1024, out dim: 10086 => Mix difference network: InitRepNet( (conv1_1): Conv2d(3, 64,...
@CaptainEven 好的,再次感谢 tips:我需要把InitRepNet.py中的 feats=vgg_oirg.model.features._modules classifier=vgg_oirg.model.classifier._modules中的.model删掉才可以训练
@CaptainEven 已经全部改成您的文件了,目前,accuracy还是0,我继续训练试试,再次感谢您的回复
@CaptainEven 好的, 您的机器太快了,我的1080ti,不知道要训练到什么时候, 但是我发现gpu的利用率并不是很高,cpu的利用率反而非常高
@CaptainEven 终于跑起来了,我的得改成batchsize=8,内存不够用 之前GPU利用率为0是并没有用gpu,最后找到原因是----os.environ['CUDA_VISIBLE_DEVICES'] = '1'这个地方的“1”,我需要改成“0”,因为我只有一个gpu 下边是网友的解释: os.environ[“CUDA_DEVICE_ORDER”] = “PCI_BUS_ID” # 按照PCI_BUS_ID顺序从0开始排列GPU设备 os.environ[“CUDA_VISIBLE_DEVICES”] = “0” #设置当前使用的GPU设备仅为0号设备 设备名称为'/gpu:0' 我觉得和device = torch.device('cuda: 0' if torch.cuda.is_available() else 'cpu')这句话也有关。 非常感谢您的耐心指导以及回复
@CaptainEven 您好,现在训练的有点过拟合,train达到99.99%,test只有49左右,请问您有什么小技巧吗,我正尝试该参数呢,您的CarReID_data是自己创建的数据集吗,对应的pair_set_car.txt内容是什么格式的呢?
这个是我用train训练的结果:   下边这是用train_mc训练的结果:   为什么加上FocalLoss之后效果反而到不好了呢?
@CaptainEven 您好,您说的arc loss 是arcFace Loss吗?  为什么在train函数中计算veicle_id的时候使用Foclaloss,而不是arc loss呢?