【OS安裝與使用】part5-ubuntu22.04基于conda安裝pytorch+tensorflow

文章目錄

  • 一、待解決問題
    • 1.1 問題描述
    • 1.2 解決方法
  • 二、方法詳述
    • 2.1 必要說明
    • 2.2 應用步驟
      • 2.2.1 明確pytorch安裝依賴
      • 2.2.2 conda創建虛擬環境
      • 2.2.3 安裝pytorch
      • 2.2.4 驗證pytorch安裝
      • 2.2.5 安裝Tensorflow
      • 2.2.6 驗證Tensorflow安裝
  • 三、疑問
  • 四、總結


一、待解決問題

1.1 問題描述

為了最終運行MARL算法代碼,在安裝好anaconda環境后,進行pytorch框架的安裝。

1.2 解決方法

操作系統:ubuntu 22.04 LTS
顯卡型號:Geforce RTX 4060 Mobile
顯卡驅動:nvidia-550.120
CUDA版本:CUDA 12.4
預裝軟件:Anaconda

(1)明確pytorch安裝依賴。
(2)conda創建虛擬環境。
(3)安裝pytorch。
(4)驗證pytorch安裝。
(5)安裝tensorflow。
(6)驗證tensorflow安裝。

二、方法詳述

2.1 必要說明

? GPU、Nvidia顯卡驅動、CUDA Toolkit、pytorch框架是什么關系呢?
簡單來說就是圖示中的關系,層層調用。

  • 硬件設備:GPU 是一種專門用于進行圖形計算和并行計算的硬件設備
  • 硬件驅動:Nvidia 顯卡驅動是運行在操作系統上的軟件,用于讓操作系統和應用程序能夠與 Nvidia GPU 進行通信和交互。它提供了對 GPU 硬件的底層控制和管理,確保 GPU 能夠正常工作,并將來自應用程序的指令正確地傳遞給 GPU。
  • GPU應用工具包:CUDA Toolkit 是用于開發基于 CUDA 應用程序的工具包,它包含了編譯器、庫、運行時環境等組件,使開發者能夠利用 GPU 的強大計算能力進行通用計算。它依賴于 Nvidia 顯卡驅動來與 GPU 進行交互。
  • 深度學習框架:PyTorch 是一個流行的開源深度學習框架。它支持使用 GPU 來加速計算,當 PyTorch 運行在安裝了 CUDA Toolkit 和 Nvidia 顯卡驅動的環境中時,它可以通過 CUDA Toolkit 調用 GPU 的計算資源,從而實現對深度學習模型的快速訓練和推理。

在這里插入圖片描述

2.2 應用步驟

2.2.1 明確pytorch安裝依賴

目標導向,首先查看pytorch官網,了解官網安裝依賴。
鏈接:pytorch Get Start

總結如下:

python版本要求:3.9或更新
ubuntu版本要求:13.04或更新
包管理工具:Anaconda 或 pip3

(1)python版本要求:
在這里插入圖片描述

(2)操作系統版本要求
在這里插入圖片描述
(3)包管理工具要求
在這里插入圖片描述

2.2.2 conda創建虛擬環境

依據pytorch中對python版本的要求,創建一個python 3.11的環境。

#查看已創建的虛擬環境
conda info --envs
#創建python 3.11的虛擬環境
conda create -n marl_onpolicy python=3.11
#激活剛創建的虛擬環境
conda activate marl_onpolicy
#安裝pip3
sudo apt install python3-pip
#查看當前虛擬環境下已安裝的包
conda list

在這里插入圖片描述
? 這里為什么要安裝pip3 ?
因為pytorch官網安裝命令提示,已不支持conda安裝。
在這里插入圖片描述

2.2.3 安裝pytorch

確認已安裝的CUDA版本。

nvcc -V

在這里插入圖片描述
在pytorch官網選擇對應選項,并在虛擬環境下運行命令
在這里插入圖片描述

pip3 install torch torchvision torchaudio

安裝過程無報錯,最后提示安裝了如下組件:

Installing collected packages: triton, nvidia-cusparselt-cu12, mpmath, typing-extensions, sympy, pillow, nvidia-nvtx-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, numpy, networkx, MarkupSafe, fsspec, filelock, nvidia-cusparse-cu12, nvidia-cudnn-cu12, jinja2, nvidia-cusolver-cu12, torch, torchvision, torchaudio
Successfully installed MarkupSafe-3.0.2 filelock-3.17.0 fsspec-2025.2.0 jinja2-3.1.5 mpmath-1.3.0 networkx-3.4.2 numpy-2.2.3 nvidia-cublas-cu12-12.4.5.8 nvidia-cuda-cupti-cu12-12.4.127 nvidia-cuda-nvrtc-cu12-12.4.127 nvidia-cuda-runtime-cu12-12.4.127 nvidia-cudnn-cu12-9.1.0.70 nvidia-cufft-cu12-11.2.1.3 nvidia-curand-cu12-10.3.5.147 nvidia-cusolver-cu12-11.6.1.9 nvidia-cusparse-cu12-12.3.1.170 nvidia-cusparselt-cu12-0.6.2 nvidia-nccl-cu12-2.21.5 nvidia-nvjitlink-cu12-12.4.127 nvidia-nvtx-cu12-12.4.127 pillow-11.1.0 sympy-1.13.1 torch-2.6.0 torchaudio-2.6.0 torchvision-0.21.0 triton-3.2.0 typing-extensions-4.12.2

2.2.4 驗證pytorch安裝

(有pycharm、vscode等IDE的可跳過這一步)
首先安裝spyder IDE

conda install spyder
#啟動spyder
spyder

官方提供了驗證方式,在IDE中python編譯以下代碼,能夠正確輸出即表示pytorch安裝成功。

import torch
x = torch.rand(5, 3)
print(x)
if torch.cuda.is_available():print("cuda available_flag: yes")
else:print("cuda available_flag: no")

輸出矩陣,并且表明CUDA可使用,即安裝成功。
在這里插入圖片描述

2.2.5 安裝Tensorflow

在虛擬環境下,開始安裝。
(!需要主要的是,tensorflow 版本對python版本是有需求的,先自動安裝,不能運行再調整版本)

conda install tensorflow-gpu
#查看tensorflow版本
conda list | grep tensor

在這里插入圖片描述

2.2.6 驗證Tensorflow安裝

打開spyder,輸入以下代碼,看是否有輸出。

import tensorflow as tf
tf.add(1, 2).numpy()
hello = tf.constant('Hello, TensorFlow!')
hello.numpy()
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

💐💐💐 完結撒花 💐💐💐

三、疑問

暫無

四、總結

  • GPU、顯卡驅動、CUDA Toolkit都是nvidia官方提供的。
  • pytorch 作為深度學習框架提供了許多模型,用戶可以基于這些模型開發自己應用。
  • anaconda 作為包管理工具可以很好地控制各開發代碼的環境,編寫新代碼時建議創建新環境,以更好控制代碼版本。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/71497.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/71497.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/71497.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

馬拉車算法

Manacher算法 ,用于處理最長回文字符串的問題,可以在O(n)的情況下,求出一個字符串的最長回文字符串 回文串的基礎解法: 以每個點為中心對稱點,看左右兩邊的點是否相同。這種算法的時間復雜度為O&#xff0…

氣象學中的CDO插值(多方法+多分辨率)

文章目錄 說明CDO代碼 說明 需要新建.sh腳本文件,將下面的CDO代碼復制到.sh腳本中,然后運行插值程序。 CDO代碼 #!/bin/bash # # 用戶配置區(按實際需求修改) # input_directory"2m_temperature" # 自定義路徑 gr…

計算機網絡:應用層 —— 動態主機配置協議 DHCP

文章目錄 什么是 DHCP?DHCP 的產生背景DHCP 的工作過程工作流程地址分配機制 DHCP 中繼代理總結 什么是 DHCP? 動態主機配置協議(DHCP,Dynamic Host Configuration Protocol)是一種網絡管理協議,用于自動分…

【OS安裝與使用】part3-ubuntu安裝Nvidia顯卡驅動+CUDA 12.4

文章目錄 一、待解決問題1.1 問題描述1.2 解決方法 二、方法詳述2.1 必要說明2.2 應用步驟2.2.1 更改鏡像源2.2.2 安裝NVIDIA顯卡驅動:nvidia-550(1)查詢顯卡ID(2)PCI ID Repository查詢顯卡型號(3&#xf…

數據導入AI訓練步驟——人工智能訓練

一、人工操作轉化 數據導入過程 整理excel表格,通過數據庫管理工具導入數據,補充數據格式,調整sql語句 復制數據到目標數據 二、整理表格 三、導入數據 通過數據庫導入數據 四、合并 五、驗證更新數據 六、 更新數據 update temp_cus_hmz…

我國首條大型無人機城際低空物流航線成功首航

首航震撼開場:羊肉 “飛” 越 540 公里 在夜色的籠罩下,榆陽馬合通用機場的跑道上,一架大型固定翼無人機蓄勢待發,機身被燈光照亮,宛如一只即將展翅翱翔的鋼鐵巨鳥。它的貨艙里,滿滿裝載著新鮮的榆林羊肉&a…

《跟李沐學 AI》AlexNet論文逐段精讀學習心得 | PyTorch 深度學習實戰

前一篇文章,使用 AlexNet 實現圖片分類 | PyTorch 深度學習實戰 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 本篇文章內容來自于學習 9年后重讀深度學習奠基作之一:AlexNet【下】【論文精讀】】的心得。 《跟李沐…

微軟Win11新動態:官方“換機助手”曝光,PC數據遷移或迎全新體驗

目錄 微軟入局數據遷移領域,第三方工具或面臨挑戰 無縫遷移體驗:近距離傳輸與OTP驗證 模擬圖僅為概念設計,最終功能或存變數 發布時間未定,Insider用戶或率先體驗 總結 微軟在近期發布了Windows 11 Insider Beta頻道的最新版本Build 22635.4945。盡管此次更新并未引入重…

Could not initialize class io.netty.util.internal.Platfor...

異常信息: Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class io.netty.util.internal.PlatformDependent0 Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.reflect.InaccessibleObjec…

java練習(34)

ps:題目來自力扣 尋找兩個正序數組的中位數 給定兩個大小分別為 m 和 n 的正序(從小到大)數組 nums1 和 nums2。請你找出并返回這兩個正序數組的 中位數 。 算法的時間復雜度應該為 O(log (mn)) 。 class Solution {public double findMedianSortedA…

用Java創建一個驗證碼的工具類

在Java中創建一個驗證碼工具類,可以通過以下代碼實現。該工具類支持生成包含字母和數字的隨機驗證碼圖片,并添加干擾線和噪點以提高安全性。以下是詳細實現: 完整代碼實現 import javax.imageio.ImageIO; import java.awt.*; import java.aw…

提升信息檢索準確性和效率的搜索技巧

一、基礎技巧 精準關鍵詞 避免長句子,提取核心關鍵詞(如用“光合作用 步驟”代替“請告訴我光合作用的具體過程”)。 同義詞替換:嘗試不同表達(如“AI 發展史” vs “人工智能 歷史”)。 排除干擾詞 使用…

設計模式 之 工廠模式(簡單工廠模式、工廠方法模式、抽象工廠模式)(C++)

文章目錄 C 工廠模式引言一、簡單工廠模式概念實現步驟示例代碼優缺點 二、工廠方法模式概念實現步驟示例代碼優缺點 三、抽象工廠模式概念實現步驟示例代碼優缺點 C 工廠模式 引言 在 C 編程中,對象的創建是一個常見且基礎的操作。然而,當項目規模逐漸…

DAY12 Tensorflow 六步法搭建神經網絡

六步法: 一.import 導入各種庫,比如: import tensorflow as tf from tensorflow.keras.layers import Dense, Flatten from tensorflow.keras import Model import numpy as np import pandas as pd # 可能還會根據需求導入其他庫&…

Zookeeper分布式鎖實現

zookeeper最初設計的初衷就是為了保證分布式系統的一致性。本文將講解如何利用zookeeper的臨時順序結點,實現分布式鎖。 目錄 1. 理論分析 1.1 結點類型 1.2 監聽器 1.3 實現原理 2. 手寫實現簡易zookeeper分布式鎖 1.1 依賴 1.2 常量定義 1.3 實現zookeeper分布式…

Git是什么

簡單介紹: Git是一個分布式版本控制系統,用于跟蹤文件的更改,特別是在多人協作開發的環境中。 Key: 分布式 版本控制 系統 最常用于軟件開發,但也可以用于管理任何類型的文件和文件夾。 Git幫助團隊跟蹤和管理文件的歷史版本&a…

Pycharm 2024在解釋器提供的python控制臺中運行py文件

2024版的界面發生了變化, run with python console搬到了這里:

【分布式理論12】事務協調者高可用:分布式選舉算法

文章目錄 一、分布式系統中事務協調的問題二、分布式選舉算法1. Bully算法2. Raft算法3. ZAB算法 三、小結與比較 一、分布式系統中事務協調的問題 在分布式系統中,常常有多個節點(應用)共同處理不同的事務和資源。前文 【分布式理論9】分布式…

免費deepseek的API獲取教程及將API接入word或WPS中

免費deepseek的API獲取教程: 1 https://cloud.siliconflow.cn/中注冊時填寫邀請碼:GAejkK6X即可獲取2000 萬 Tokens; 2 按照圖中步驟進行操作 將API接入word或WPS中 1 打開一個word,文件-選項-自定義功能區-勾選開發工具-左側的信任中心-信任中心設置…

【SFRA】筆記

GK_SFRA_INJECT(x) SFRA小信號注入函數,向控制環路注入一個小信號。如下圖所示,當前程序,小信號注入是在固定占空比的基礎疊加小信號,得到新的占空比,使用該占空比控制環路。 1.2 GK_SFRA_COLLECT(x, y) SFRA數據收集函數,將小信號注入環路后,該函數收集環路的數據,以…