采用mobilenet-v2训练关键点检测模型,数据准备好后:
1.训练level1
sh train.sh
出现问题:
F0514 17:41:13.275457 13942 caffe.cpp:245] Multi-GPU execution not available - rebuild with USE_NCCL
解决方法:
(1)检查cuda和gcc版本(要求:cuda version>6.0,gcc 版本>=gcc 4.8)
cat /usr/local/cuda/version.txt
gcc -v
(2)安装nccl
步骤:
下载nccl:https://developer.nvidia.com/nccl
cd nccl-master
sudo make CUDA_HOME=/usr/local/cuda-8.0/ test #根据自己cuda路径修改CUDA_HOME
sudo make install
sudo ldconfig
2.修改caffe目录下的Makefile.config
把#USE_NCCL:=1 改为USE_NCCL:=1 #把前面的#注释掉
3.重新编译caffe
make all –j24
出现问题:
caffe.pb.h:12:2: error: #error This file was generated by a newer version of protoc which is…
错误原因:
系统内安装的多个版本protobuf选择问题,我的caffe编译时支持protobuf2.6.1版本,而Anaconda安装的protobuf版本为3.6.1,编译时默认选择了3.6.1版本
解决方法:
卸载protobuf3.6.1:conda uninstall libprotobuf
重新安装protobuf2.6.1
具体步骤可查看博客 (https://blog.youkuaiyun.com/zhang_comeon/article/details/100042512)
4.再次重新编译
成功!