报错:
Traceback (most recent call last):
File "tools/train.py", line 80, in <module>
main()
File "tools/train.py", line 34, in main
cfg.merge_from_list(args.opts)
File "/home/huan/anaconda3/envs/re_id_1/lib/python3.7/site-packages/yacs-0.1.6-py3.7.egg/yacs/config.py", line 245, in merge_from_list
File "/home/huan/anaconda3/envs/re_id_1/lib/python3.7/site-packages/yacs-0.1.6-py3.7.egg/yacs/config.py", line 517, in _check_and_coerce_cfg_value_type
ValueError: Type mismatch (<class 'tuple'> vs. <class 'str'>) with values (('market1501',) vs. market1501) for config key: DATASETS.NAMES
原因是:
训练的时候设置 DATASETS.NAMES
的时候忘记加 ,
,如下,和配置文件'configs/softmax_triplet.yml'
里的类型对不上。
CUDA_VISIBLE_DEVICES='0,1' python tools/train.py -cfg='configs/softmax_triplet.yml' DATASETS.NAMES '("market1501")' SOLVER.IMS_PER_BATCH '256'
应该改成:
CUDA_VISIBLE_DEVICES='0,1' python tools/train.py -cfg='configs/softmax_triplet.yml' DATASETS.NAMES '("market1501",)' SOLVER.IMS_PER_BATCH '256'