机器学习训练模型环境配置注意事项-CUDA、pytorch\torch

机器学习训练模型环境配置注意事项-CUDA、pytorch\torch

机器学习入门了解必要工具CUDA、pytorch、torch之间的关系和简介,以及版本之间的对应关系。(训练模型时由于配置环境出错而导致踩坑的次数不少,特此记录)

pytorch和torch

Pytorch的历史可以追溯到2002年诞生于纽约大学的Torch。当时的Torch使用Lua语言作为接口,由于Lua过于小众,不易普及,所以Torch的幕后团队推出了Pytorch,Pytorch一方面对Lua Torch进行封装提供Python接口,另一方面对Tensor之上的所有模块进行了重构,并新增了最先进的自动求导系统。由此看来。Pytorch脱胎于Torch。

学习pytorch入门可以查看pytorch官网,也可以看书《深度学习框架PyTorch入门与实践》

Linux系统上对pytorch进行安装时,官网提供的命令如下
红色下划线处,torchvision是PyTorch中专门用来处理图像的库,非常重要
关于torchvision的使用和介绍,我找到一篇很好的博客,可供学习torchvision包的介绍

CUDA与pytorch

CUDA(Compute Unified Device Architecture),是一种新的操作GPU计算的硬件和软件架构,是建立在NVIDIA的GPUs上的一个通用并行计算平台和编程模型,它提供了GPU编程的简易接口,基于CUDA编程可以构建基于GPU计算的应用程序,利用GPUs的并行计算引擎来更加高效地解决比较复杂的计算难题。它将GPU视作一个数据并行计算设备,而且无需把这些计算映射到图形API。操作系统的多任务机制可以同时管理CUDA访问GPU和图形程序的运行库,其计算特性支持利用CUDA直观地编写GPU核心程序。

CUDA提供了对其它编程语言的支持,如C/C++,Python(因此,若要使用pytorch先安装CUDA可以事半功倍,利用GPU训练模型),Fortran等语言。只有安装CUDA才能够进行复杂的并行计算。主流的深度学习框架也都是基于CUDA进行GPU并行加速的,几乎无一例外。还有一个叫做cudnn,是针对深度卷积神经网络的加速库。

CUDA在软件方面组成有:一个CUDA库、一个应用程序编程接口(API)及其运行库(Runtime)、两个较高级别的通用数学库,即CUFFT和CUBLAS。CUDA改进了DRAM的读写灵活性,使得GPU与CPU的机制相吻合。另一方面,CUDA提供了片上(on-chip)共享内存,使得线程之间可以共享数据。应用程序可以利用共享内存来减少DRAM的数据传送,更少的依赖DRAM的内存带宽。

关于CUDA更加详细的介绍,我找到一篇博客作者写的非常详尽易懂,贴上链接供学习交流CUDA简介

CUDA和pytorch之间的版本对应

pytorch官方网站中,红色箭头处点击可查看cuda和pytorch对应的所有历史版本,图中红框部分可根据
自己系统的情况进行选择并查看下载命令。在这里插入图片描述

模型训练过程中安装三者踩坑

  1. pytorch和CUDA的版本要对应好,不然大概率会报错(一般会导致torch.cuda.is_available()–False,即没办法使用gpu训练模型)
  2. 严格按照模型源码作者给出的requirements文件中要求的环境版本进行配置,尽量安装相同版本,比如作者写了pytorch1.4.0和pytorch1.4+,那么尽量安装pytorch1.4.0版本,不然也有可能报错
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值