matconvnet中使用fastrcnn遇到的问题
2017-10-19 13:34
736 查看
这几天用了matconvnet(MATLAB下的深度学习工具)踩了好几个坑,还好最终总算是能用了。现在把其中遇到的坑总结一下。
matconvnet的官网:http://www.vlfeat.org/matconvnet/
按照官网上的说明,其实在windows和cpu下编译,完全没问题。基本上不用改什么地方,按照官网说明就一遍过了。
当需要训练网络的时候,把代码搬到linux和gpu上,就出现了一些问题,这里把这些问题记录一下。
1.编译过了,但是运行fast-rcnn的demo的时候,报错如下:
Invalid MEX-file '/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64':
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6lengthEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendERKS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1
造成这个现象的原因是libstdc++.so.这个文件。在Windows下没什么问题,但是linux系统有这个文件,matalb自己也有这个问题,所以发生了调用了错误。为了修正这个错误,可以设置一下让matlab调自己的库而不是系统的库。通过在命令行里设置并打开MATLAB就可以了
链接如下: https://stackoverflow.com/questions/43643670/runtime-linker-error-using-thrust-in-matlab-mex-file
2.也是编译通过了,跑demo的时候报错,
CUDA_ERROR_ILLEGAL_ADDRESS
查了很久,也没有查到什么解决办法,matconvnet官方也没有说怎么解决,只是有人提出了编译的时候使用cudnn就不会有这个错误了,我试了一下,还真是这样,所以编译的时候,把cudnn加上就好了。
连接:https://github.com/vlfeat/matconvnet/issues/65#issuecomment-164496925
matconvnet的官网:http://www.vlfeat.org/matconvnet/
按照官网上的说明,其实在windows和cpu下编译,完全没问题。基本上不用改什么地方,按照官网说明就一遍过了。
当需要训练网络的时候,把代码搬到linux和gpu上,就出现了一些问题,这里把这些问题记录一下。
1.编译过了,但是运行fast-rcnn的demo的时候,报错如下:
Invalid MEX-file '/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64':
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6lengthEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendERKS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_' required by
'/data/zycui_data/code/matconvnet-1.0-beta25/matlab/mex/vl_imreadjpeg.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1
造成这个现象的原因是libstdc++.so.这个文件。在Windows下没什么问题,但是linux系统有这个文件,matalb自己也有这个问题,所以发生了调用了错误。为了修正这个错误,可以设置一下让matlab调自己的库而不是系统的库。通过在命令行里设置并打开MATLAB就可以了
链接如下: https://stackoverflow.com/questions/43643670/runtime-linker-error-using-thrust-in-matlab-mex-file
2.也是编译通过了,跑demo的时候报错,
CUDA_ERROR_ILLEGAL_ADDRESS
查了很久,也没有查到什么解决办法,matconvnet官方也没有说怎么解决,只是有人提出了编译的时候使用cudnn就不会有这个错误了,我试了一下,还真是这样,所以编译的时候,把cudnn加上就好了。
连接:https://github.com/vlfeat/matconvnet/issues/65#issuecomment-164496925
相关文章推荐
- fastjson使用遇到的问题
- 使用fastjson遇到的问题
- 使用fastjson遇到的一点问题
- Fastjson在项目中使用遇到的问题
- 使用Gson和FastJson解析JSON数据遇到的问题
- 使用fastjson编辑全大写字段时遇到的问题
- fastjson 使用时遇到的问题
- 用fast rcnn绘制loss曲线遇到的问题
- fast rcnn中遇到的问题
- fast rcnn,faster rcnn使用cudann加速问题
- 使用Access存储Session,遇到了SessionId问题?
- 在IIS 6 中使用HTTP压缩(Compression)遇到的一个问题
- VC6使用过程中遇到的问题收集(1) zz
- 使用System.IO.StreamReader时遇到的问题 (转)
- 使用Oracle中fileopen命令加载文件时遇到的怪问题
- 关于您提到使用WebServices时候遇到“基础连接以关闭”的问题
- 使用WebServices时候遇到“基础连接以关闭”的问题
- datagrid中使用dropdownlist编辑模版时遇到问题
- SimpleDateFormt 使用中遇到的一个小问题
- Java使用Oracle遇到的最大游标超出问题及其解决方法