机器学习深度学习——非NVIDIA显卡怎么做深度学习(坑点排查)

👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er
🌌上期文章:机器学习&&深度学习——数值稳定性和模型化参数(详细数学推导)
📚订阅专栏:机器学习&&深度学习
希望文章对你们有所帮助

这一部分掉坑真的不知道掉了多少个。我是AMD卡的,我想AMD卡的同志们很多都掉过坑了,也许就在我掉过众多坑里面。网上很多说法是AMD卡做深度学习可以使用RCom,然而我发现几乎没有太多资料,毕竟做深度学习的大多数用的是N卡。emmmm,万一掉坑了都没有人能启发到我,所以当时我就放弃了,接下来给出坑点并且排查,最终给出绝对可行的解决方案。

AMD显卡怎么做深度学习

  • 卸载CPU版本的torch
    • 卸载方式
    • 问题
  • 安装GPU版本的torch
    • 安装方式
    • 问题
  • Anaconda配置虚拟环境
  • 下载cuda
    • 问题
  • 最终解决方案

之前的内容中,我都是使用了CPU版本的torch来进行深度学习,在前面的线性模型当然很好跑,因为线性模式确实是比较简单的。但是随着之后的模型越发的复杂,我们很需要GPU来帮助我们实现并行运算,因此我们需要安装GPU版本的torch。

卸载CPU版本的torch

因为听说有了GPU版本的torch,在一些使用的过程中可能会出现冲突,所以我第一下想到的就是卸载CPU版本的torch。卸载的时候还需要把这个torch中所包含的包也一并卸载了。

卸载方式

使用cmd终端卸载,卸载的方式有两种:
1、pip方式卸载:

pip uninstall torch
pip uninstall torchvision

2、conda方式卸载:

conda uninstall pytorch
conda uninstall libtorch

据说是使用了conda方式下载的话就用第二种,pip方式下载的话就用第一种,感觉好像又不是很有道理,总之两个都试过了,也都告诉我卸载成功了。

问题

但是接下来就出现了很奇怪的一幕。我在cmd终端输入如下语句:

python

import torch

torch.__version__

最终告诉我的答案里面是不存在torch,那理论上应该是成功了才对。。。然而我去pycharm中执行:

import torch

print(torch.__version__)

额。。。居然给我输出了CPU版本的torch,我还猜测是不是亲爱的pycharm没缓过来。。。无论重启还是关机都显示含有CPU版本的torch。。。原地捣鼓半天,网上好像也没个针对这个具体问题的解决方案,最终放弃卸载。

安装GPU版本的torch

安装方式

进入pytorch官网:
pytorch官网
在这里插入图片描述
用上面的conda或者pip语句都是可以的,在终端中运行就好,连cuda版本都给咱们指定好了。

问题

我以为pycharm是出了什么毛病,明明终端显示没有CPU版本的torch了,偏偏pycharm输出了。。。我就以为换个GPU版本的torch应该就没事了,这其实也是瞎捣鼓,最终在pycharm中输出CPU版本的torch,在终端输出GPU版本的torch。
因此在pycharm中跑GPU方式的代码是行不通的。。。

Anaconda配置虚拟环境

既然卸载的方式行不通,我就找别的方法,之前已经安装过了Anaconda,我们靠着这个工具来实现环境的配置。步骤如下:
1、我们可以自行创建虚拟环境:

conda create --name pytorch python=3.9

我们可以通过

conda env list

来查看当前的环境,其中base是本来的环境,pytorch是我们创建的虚拟环境。
在这里插入图片描述
2、我们需要激活这个环境,那么接下来下载的东西(包括各种的包、包括GPU版本的torch)都可以下载到这个虚拟环境去,也就是说这个虚拟环境本来就是干净的,不像base环境那样装过CPU版本的torch。
激活的语句为:

avtivate pytorch

再打开当前的环境列表,可以看出pytorch已经被激活:
在这里插入图片描述
3、下载GPU版本的torch
将上面的语句进行下载,接下来就可以把torch下载到自己新建的虚拟环境pytorch中去了。
4、在pycharm中配置它。
打开File-Settings-Project:Python-Python Interpreter:
在这里插入图片描述
点开Add Local Interpreter,即可选择之前的路径成功切换。
但是此时我还是不能运行相关语句,搜相关资料以后知道是没有cuda,运行语句:

print(torch.cuda.is_available())

最后会返回False,因此我们需要下载cuda。

下载cuda

这个步骤就不细说了,这个下载过程是傻瓜式教程,网上有。

问题

这个问题就比较严重了。。。安装都安装不成,安装了我才知道只有NVIDIA卡是可以下载cuda的,那我的方向再一次断了,而且我很难在原有基础上转变思路。

最终解决方案

接下来就是我最终的解决方案了,租借线上平台。
我是用的autodl平台去租借的,大家可以放心使用(我觉得官网有点话都写的不太清楚,我一直不知道到底只是租一个GPU而已还是啥,因为如果只是租一个GPU我没有cuda照样不行,最终还是搞了点钱去试了一下),点开以后里面有使用文档,使用方法很容易,大家可以放心使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/60623.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

判断酒驾司机是否合法饮酒?呼气酒精测试装置背后科学原理与技术

近年来,酒驾交通事故频繁发生,媒体经常报导司机血液中的酒精含量和法定限量。举个例子,某司机的血液酒精含量检测结果是0.15,而法定上限是0.08。那么这些数字实际意味着什么?警方如何判断涉嫌酒驾的司机是否合法饮酒&a…

pycharm制作柱状图

Bar - Bar_rotate_xaxis_label 解决标签名字过长的问题 from pyecharts import options as opts from pyecharts.charts import Barc (Bar().add_xaxis(["高等数学1,2","C语言程序设计","python程序设计","大数据导论",…

基于STM32CubeMX和keil采用通用定时器中断实现固定PWM可调PWM波输出分别实现LED闪烁与呼吸灯

文章目录 前言1. PWM波阐述2. 通用定时器2.1 为什么用TIM142.2 TIM14功能介绍2.3 一些配置参数解释2.4 PWM实现流程&中断2.4.1 非中断PWM输出(LED闪烁)2.4.2 中断PWM输出(LED呼吸灯) 3. STM32CubeMX配置3.1 GPIO配置3.2 时钟配置3.3 定时器相关参数配置3.4 Debug配置3.5 中…

屏幕取色器Mac版_苹果屏幕取色工具_屏幕取色器工具

Sip for Mac 是Mac系统平台上的一款老牌的颜色拾取工具,是设计师和前端开发工作者必不可少的屏幕取色软件,你只需要用鼠标点一下即可轻松地对屏幕上的任何颜色进行采样和编码,并将颜色数据自动存到剪切板,方便随时粘贴出来。 Sip…

第1章 什么是JavaScript

引言 JavaScript最早诞生的原因是希望表单验证可以在客户端得到解决。频繁通过服务端的请求来验证表单缓慢的网速让页面每次刷新都考验着人们的耐心。 如今的js不再局限简单的表单验证,能够实现复杂的计算与交互,包括闭包、匿名(lambda&…

学习笔记|简单分享一下自建Gravatar镜像

目录 前言 Gravatar 使用 思路 操作 步骤一:注册或登录华为云 步骤二:创建委托账号 步骤三:创建OBS桶 步骤四:数据回源配置 步骤五:配置生命周期规则 步骤六:绑定自定义域名 步骤七&#xff1a…

Cocos Creator的 Cannot read property ‘applyForce‘ of undefined报错

序: 1、博主是看了这个教程操作的时候出的bug>游戏开发 | 17节课学会如何用Cocos Creator制作3D跑酷游戏 | P9 代码控制对象移动_哔哩哔哩_bilibili 2、其实问题不是出在代码上,但是发现物体就是不平移 3、node全栈的资料》node全栈框架 正文…

django使用mysql数据库

Django开 发操作数据库比使用pymysql操作更简单,内部提供了ORM框架。 下面是pymysql 和orm操作数据库的示意图,pymysql就是mysql的驱动,代码直接操作pymysql ,需要自己写增删改查的语句 django 就是也可以使用pymysql、mysqlclient作为驱动&a…

python#django数据库一对一/一对多/多对多

一对一OneToOneField 用户和用户信息 搭建 # 一对一 class TestUser(models.Model): usernamemodels.CharField(max_length32) password models.CharField(max_length32) class TestInfo(models.Model): mick_namemodels.CharField(max_length32) usermode…

CMake:检测python解释器和python库

CMake:检测python解释器和python库 导言检测python解释器CMakeLists.txt输出附录 检测python库项目结构CMakeLists.txt相关源码附录 导言 python是一种非常流行的语言。许多项目用python编写的工具,从而将主程序和库打包在一起,或者在配置或构建过程中使…

【暑期每日一练】 day15

目录 选择题(1)解析: (2)解析: (3)解析: (4)解析: (5)解析: 编程题题一描述输入描述输出描述 示例…

Android 9-- 源码角度: Home键的监听和拦截

在做应用层APP需求的过程中,HOME键的监听,Back键的监听,这都是很常见的问题,那你有试过,去拦截HOME键的事件吗,有去了解过如何处理吗,流程如何 首先大家应该先了解一种情况,就是Andr…

Red Hat 安装JDK与IntelliJ IDEA

目录 前言 Red Hat 安装 JDK 1、更新软件包列表 2、安装OpenJDK 3、验证安装 Red Hat 安装IntelliJ IDEA 1、下载 IntelliJ IDEA 2、解压缩 IntelliJ IDEA 安装包 3、移动 IntelliJ IDEA 到安装目录 4、启动 IntelliJ IDEA 前言 YUM是基于Red Hat的Linux发行版的一个…

flask-session、数据库连接池

flask 自带session---》以cookie的形式放到了浏览器中---》加密 真正的session,是在服务端存储 -django中存在djangosession表中 -flask中,使用第三方,保存在---》redis中---》flask-session 使用步骤 pip install flask-session …

Stable Diffusion 使用教程

环境说明: stable diffusion version: v1.5.1python: 3.10.6torch: 2.0.1cu118xformers: N/Agradio: 3.32.0 1. 下载 webui 下载地址: GitHub stable-diffusion-webui 下载 根据自己的情况去下载: 最好是 N 卡:(我的…

vscode无法连接远程服务器的可能原因:远程服务器磁盘爆了

vscode输入密码后一直等待,无法进入远程服务器终端: 同时Remote-SSH输出包含以下内容 在日志中的以下几个部分: [17:15:05.529] > wget download failed 这表明VS Code尝试在远程服务器上下载VS Code服务器时失败了。> Cannot write…

小孩学python课程需要多久,儿童学python哪个机构好

本篇文章给大家谈谈小孩学python课程需要多久,以及儿童学python语言能做什么,希望对各位有所帮助,不要忘了收藏本站喔。 学习儿童python编程越来越受欢迎,原因有很多,对于孩子来说,Python是一种很好的编程语…

Linux|ubuntu下运行python

参考:ubuntu系统下切换python版本的方法 文章目录 python版本问题查看ubuntu下的所有python版本通过apt-get install可以安装不同版本python查看python版本号更新update-alternatives替代列表查看update-alternatives下的python版本切换python版本删除python版本 p…

汽车智能化再掀新热潮!「中央计算架构」进入规模量产周期

中央计算区域控制的新一代整车电子架构,已经成为车企继电动化、智能化(功能上车)之后,新一轮竞争的焦点。 如果说智能化的1.0阶段,是智能驾驶智能座舱的争夺战;那么,即将进入的2.0阶段&#xff…

微服务——操作索引库+文档操作+RestClient操作索引库和文档(java程序)

索引库操作 mapping属性 mapping是对文档的约束,常见约束属性包括: 创建索引库 #创建索引库 PUT /heima {"mappings": {"properties": {"info":{"type": "text","analyzer": "ik_smart"},…