超参数,注意这里我训练所用的GPU为GTX 1060显存不足,所以-b改为了16原文使用的-b为64
"""
参数
训续
# -a 基准模型
# -b batch_size(可调)
# -d 数据集合
# -j 多线程
# opt 优化器adam
# dropout不解释
# combine-trainval 先训练再验证
# num_gpu GPU数量
# epochs 训练轮次(可调)
# features 特征数量(可调)
# stert_save 多少次保存
# branch_name rgasc attention机制
# data-dir 数据文件位置
# Logs-dir 日志文件位置
# ==============================分割线,下面是具体的参数
-a resnet50_rga
-b 16
-d cuhk03labeled
-j 0
--opt adam
--dropout 0
--combine-trainval
--seed 16
--num_gpu 1
--epochs 600
--features 2048
--start_save 320
--branch_name rgasc
--data-dir ./data
--logs-dir ./logs/RGA-SC/cuhk03labeled_b64f2048
"""
代码运行前需要设置超参数,PyCharm在项目的Configuration处将参数直接复制进Parameters即可。
需要注意的是,训练数据集使用的是cudk03,在项目目录中创建data文件、在data文件中创建cuhk03的文件。
cuhk03文件中必须包含三项cuhk03_new_protocol_config_detected.mat、cuhk03_new_protocol_config_labeled.mat、cuhk03_release
剩余项目通过代码生成,后面会提供下载链接。
data
│
└─cuhk03
│ cuhk03_new_protocol_config_detected.mat
│ cuhk03_new_protocol_config_labeled.mat
│
├─cuhk03_release
│ cuhk-03.mat
│ README.md
即images_detected和images_labeled是后来生成的。
另外迁移学习所需要的resnet50模型也需要提前准备好,放置的位置如下所示,使用的是resnet50-19c8e357.pth,直接百度搜索就能搜到。
Relation_Aware......
└─weights
│
└─pre_train
│
└─ resnet50-19c8e357.pth
cuhk03_release下载地址
cuhk03_new_protocol_config_detected.mat和cuhk03_new_protocol_config_labeled.mat下载地址
源码代码地址
如果上面因为上网原因或调试不成功,可以试试这个
调试好的源码