深度学习踩坑实录

20220328:清华镜像源你害人不浅啊

起因:cuda + pytorch检测不到cuda,torch.cuda.is_available()返回false。

过程:显卡驱动、cuda、torch版本各种问题都排查了无果。

解决:看到这篇文章https://www.jb51.net/article/205490.htm,发现清华镜像源下载的torch是cpu版本的。。。cpu版本的。。。版本的。。。的。。。conda命令里面加-c pytorch即可解决

教训:官网给的命令是有道理的,镜像源不可过度信任。。。

20220726:float也分三六九等

报错:RuntimeError: expected scalar type Float but found Double

原因:numpy的默认dtype是float64(np.float),而torch默认是float32(torch.float)

解决:torch.float一下

参考:https://stackoverflow.com/questions/60239051/pytorch-runtimeerror-expected-object-of-scalar-type-double-but-got-scalar-type

20230309:终究逃不过tensorflow

报错:找不到 libcudnn.so.8,然而我已经在conda环境里面安装了cudnn

原因:tf不会自动链接到虚拟环境里面的lib,去/usr/local/里面找了,没找到

解决:一种方式是在global里面装cudnn,手动装相当麻烦而且需要root权限。或者是已经在环境里装好了(比如用conda install -c nvidia cudnn安装,路径是~/miniconda3/envs/${env_name}/lib/libcudnn.so.8),其中env_name是你的环境名称,然后把这个lib加进path里:LD_LIBARY_PATH=~/miniconda3/envs/env_name/lib:$LD_LIBRARY_PATH就可以找到这个库了。

参考:无

20230309:再次逃不过tensorflow

报错:书接上文,虽然找到了库但是报错:

Node:'XXX/1st_Conv1D/Conv1D'
DNN libraryisnotfound.

原因:cudnn版本和tf版本不匹配。

解决:去官网Build from source | TensorFlow找一下匹配的版本,用conda安装,然后就行了。

参考:tensorflow - How to solve Conv1D DNN library is not found? - Stack Overflow

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容