久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    Anaconda+Pycharm環境下的PyTorch配置方法

     iceer1212 2020-11-02

    文章目錄

    寫給新手的話

    pycharm是什么,為什么讓我指定interpreter

    記事本
    最開始寫C語言代碼的時候,人們使用vi記事本等軟件寫代碼,寫完了之后用GCC編譯,然后運行編譯結果,就是二進制文件。python也可以這樣做,用記事本寫完代碼,保存成如test.py的文件后,通過命令python test.py可以運行這一文件。最初的C語言代碼都是通過這種方式寫的。但是人們很快發現了一個問題,就是這么弄太麻煩了,編寫用vi,運行得切出去用shell,出錯了再切回vi改代碼。這要是編寫、運行、調試都能在同一個窗口里進行,再來點語法檢查,高亮,顏色,代碼提示,那寫代碼的效率不就高多了嗎?所以就有了Microsoft Visual C++等寫代碼工具,這些工具除了提供方便的文本編輯功能,還能夠連接到編譯器(C/C++)、解釋器(javapythonR),把編譯器和解釋器的運行結果顯示在自己的界面上,這些工具被稱為IDE(集成開發環境)。正因為編譯器,解釋器不是它的組成部分,pycharm中每個項目都要指定一個interpreter才能運行。即某個路徑下的python.exe。其他的IDE也都要指定運行環境。

    pip又是什么

    應用商店
    pythonjava一樣,運行起來需要各種包的支持。java興起的最開始,開源jar包作者在各自的網站上面發布自己的包,需要用的開發者就去他們的網站上下載,然而很快就出現了一個問題,如果一個大型工程需要用到幾十個,甚至幾百個jar包,一個個翻網站下載顯然是非常勞累的。所以就有了mavengradle,他們自己建了maven倉庫和gradle倉庫,就像IOS應用商店一樣,開源jar包的作者會把各種版本的jar包統一上傳到倉庫,開發者統一下載,非常方便。
    python問世的時候,javamavengradle早已流行多年,python官方也吸取了經驗,直接官方內置pip工具,官方經營pip倉庫。正式的名稱叫做包管理工具
    conda的功能之一也是包管理工具。

    condavitualenvpipenv 又是什么

    照片管理系統
    python版本繁多,版本之間的區別較大。這種不兼容激化了矛盾,當一臺機器上存在多個python項目,而這些項目又各自依賴于不同的python版本以及各個不同版本的包,這些包對于python版本又非常敏感。即使有pip,配置環境也變成了一件令人絕望的事。以往java等語言沒有這么激烈的矛盾,是因為它們沒有這么多版本,而且版本之間也能大體兼容。
    所以人們就想,如果能把pip配置出來的結果“照”下來。不同項目用不同的“照片”,這問題不就解決了嗎。
    這類任務通常都是靠虛擬化技術。

    • 傳統的虛擬機可以勝任這個任務,但是運行效率有損失,消耗資源多,管理不靈活。
    • 新晉的docker容器比虛擬機更加輕量,更加靈活,但對于這個任務來說,還是同樣的缺點。

    于是conda等軟件應運而生,它不是虛擬機,沒有使用虛擬化技術,自然就沒有運行效率損失。它只是一個物理機上的管理軟件,可以把它想象成一個照片管理系統,只不過它管理的照片有點特殊,叫做虛擬環境,它是某個python運行環境,里面已經裝好了一些特定版本的特定包。
    注意:pippipenv是兩個東西,不可混為一談。

    anaconda是什么,anacondaconda是什么關系,為什么要裝anaconda

    XX照片管理系統+XX全家桶
    anacondaminiconda同為conda官方推薦的conda工具。anacondaconda的關系,就像githubgit的關系,anaconda不光包含了conda命令行軟件,還包含了多如牛毛的預裝python包,以及令人瞠目結舌的黑科技全家桶。
    我們裝anaconda主要是沖著conda管理python運行環境比較方便的原因,以及它那一大堆預裝包。雖然其他的我們用不到,但是大樹底下好乘涼嘛。

    下文所述兩種配置方法異同

    下面有兩種pytorch環境配置方法,推薦使用第一種,即使用condapytorch環境配置方法。第二種費時費力。這是親測的結果。不禁慨嘆還是conda好用,手動擼環境猶如小米加步槍啊。

    使用condapytorch環境配置方法

    安裝anaconda

    下載anaconda

    在https://www./distribution/ 找到合適的安裝包,得到下載鏈接后進行下載

    https://repo./archive/Anaconda3-2019.03-Linux-x86_64.sh
    
    安裝anaconda

    所有步驟參照官方文檔 https://docs./anaconda/install/linux/

    bash Anaconda3-2019.03-Linux-x86_64.sh
    

    使用conda組裝pytorch虛擬環境

    安裝pytorch到本地conda倉庫中

    pytorch官方網站找到合適的安裝命令 https://pytorch.org/get-started/locally/
    注意:CUDA是使用GPU進行計算的組件。

    conda install pytorch-cpu torchvision-cpu -c pytorch
    

    使用下面的命令可以看到conda倉庫中的torch

    conda list |grep torch
    
    創建新的conda虛擬環境

    官方文檔
    https:///projects/conda/en/latest/user-guide/tasks/manage-environments.html

    conda create --name pytorch-py36 --channel pytorch python=3.6 pytorch-cpu torchvision-cpu
    
    使用conda虛擬環境
    activate pytorch-py36
    python
    

    在打開的python命令行里輸入

    import torch
    import torchvision
    import numpy
    

    不報錯則說明構建conda虛擬環境pytorch-py36成功。
    注意:pytorch-py36默認在anaconda目錄下的envs文件夾中。

    pycharm中使用conda虛擬環境
    將自己創建的conda虛擬環境pytorch-py36添加到pycharminterpreter可選列表中

    pycharm新建工程,或在files->settings->project:<xxx>->project interpreter界面,可以設定project interpreter

    • 新建工程界面,選擇Existing enviroment,點擊...按鈕,會彈出添加界面。
    • settings界面,點擊齒輪按鈕,選擇Add,會彈出添加界面。
      在添加界面左側選擇Conda Environment,右邊選擇Existing environment,再點擊...按鈕添加一個已經存在的conda虛擬環境,即剛剛構建的pytorch-py36
    使用已經添加進來的虛擬環境pytorch-py36

    interpreter列表中選擇剛剛添加的interpreter。如果需要對剛添加的interpreter改名,比如把python 3.6 (3)改成pytorch-py36,則點擊齒輪按鈕,點擊show all,里面可以改名。

    大功告成!

    試著使用import torchimport torchvision這樣的語句,不會報錯則成功。

    pytorch手動配置方法

    源碼安裝python3.6.7

    下載python3.6.7
    cd ~
    wget https://www./ftp/python/3.6.7/Python-3.6.7.tgz
    
    創建目錄,改名
    mkdir ~/python
    mkdir ~/python/python367
    mv ~/Python-3.6.7.tgz ~/python/python367.tgz
    
    解壓縮
    cd ~/python
    tar xvf python367.tgz
    
    源碼安裝zlib

    zlibpython需要的依賴庫,必須提前安裝。
    如果有管理員權限,只需用包工具即可安裝,如sudo apt-get install zlib1g-dev;因為沒有管理員權限,所以采用源碼安裝。
    可以用以下兩條命令確認zlib是否存在。

    ls /usr/include |grep zlib
    ls /usr/lib |grep zlib
    

    如果任意一條輸出為空,則說明zlib不存在,需要安裝。
    注意:|grep可以跟在任意命令之后,對該命令的輸出結果進行搜索,只顯示跟搜索內容有關的部分。

    cd ~/python/Python-3.6.7/Modules/zlib
    mkdir ~/python/zlib
    ./configure --prefix=/home4/grad4/wzhao1/python/zlib
    make install
    

    然后將zlib加入到GCCincludelib路徑中。

    export C_INCLUDE_PATH=~/python/zlib/include
    export CPLUS_INCLUDE_PATH=~/python/zlib/include
    export LD_LIBRARY_PATH=~/python/zlib/lib
    export LIBRARY_PATH=~/python/zlib/lib
    

    注意:此處的路徑修改僅對當前shell有效,關閉shell或斷開重連都會導致路徑失效。因為我們只需要編譯一次,所以采用這種方式。想查看這兩個路徑的當前值使用echo命令,即echo $C_INCLUDE_PATH。如果想要每次都生效,可以將export命令寫入.bashrc中。
    注意:GCC編譯時搜索的路徑遠比這些變量多,這些變量只是其中的一部分,且通常默認為空,也不是最優先的。比如最常見的,也是一般情況下最優先的搜索路徑是/usr/include/usr/lib,也就是剛才判斷zlib是否存在的命令中搜索的路徑。
    注意:四個變量含義:C頭文件路徑(.h),C++頭文件路徑(.hpp),動態鏈接庫路徑(.so),靜態鏈接庫路徑(.a)。

    編譯安裝
    cd ~/python/Python-3.6.7/
    ./configure --prefix=/home4/grad4/wzhao1/python/python367
    make
    make install
    

    如有報錯,必須停下來解決問題。如果一直沒有報錯,則會安裝成功。
    注意:--prefix后面的參數必須是絕對路徑,不能出現~...這樣的相對路徑。echo ~可以顯示處當前用戶~目錄的絕對路徑,如/home4/grad4/wzhao1--prefix后面的參數簡單理解,就是windows下的安裝路徑。
    注意:以上過程是自動化編譯,./configure這種可運行文件一般顯示為綠色,它的作用是根據當前環境,制定編譯策略,即MakefileC/C++語言與javapythonscalaR等高度現代化的編程語言不同,它的部分語言特性是根據編譯時環境而定的,這一點頗受詬病。如longint型的數據類型長度竟然取決于編譯時環境。

    驗證安裝1
    cd ~/python/python367/bin
    ./python3.6
    

    如果python命令行正常啟動,且顯示版本也是正確的3.6.7,則安裝成功。

    備份編譯包

    同一環境,尤其是同一服務器下通常不需要重新編譯,只要有人編譯出一份并備份保存,所有人都能直接下載使用。為了這個目的,以及備份的目的,我們要把編譯結果保存成壓縮包。

    cd ~/python
    tar cvf python367.tgz python367
    
    建立軟連接

    軟連接可以簡單理解為windows下的快捷方式,建立軟連接的目的是為了更方便地使用我們安裝的python。從這個步驟開始都不做,python也能正常使用。
    進入~/python/python367/bin下查看目前的情況。

    ls -lh
    

    可以看到,軟連接是淺藍色,并標注了它指向的目標。如python3 -> python3.6,而且可以看到python3.6的文件大小是12M,而python3的大小是9(字節)。
    我們建立名為pythonpip的軟連接。

    ln -s python3.6 python
    ln -s pip3.6 pip
    
    配置環境變量

    修改文件~/.bashrc,添加python3.6.7環境變量。
    注意:這個文件內的變量是用戶變量。系統變量在/etc/profile

    cd ~
    vim .bashrc
    

    注意:用vim進行編輯時,不可使用鼠標。屏幕下端是狀態欄。打開文件時,默認為瀏覽狀態。輸入ai可以進入編輯狀態。按ESC回到瀏覽狀態,在瀏覽狀態下,輸入:q!強制退出不保存,輸入:wq保存退出。

    export PYTHON_HOME="~/python/python367"
    export PATH="$PYTHON_HOME/bin:$PATH"
    

    修改完環境變量后,不會立即生效。用這個命令讓環境變量立即生效。

    source .bashrc
    
    驗證安裝2
    python --version
    pip --version
    

    顯示下列結果即安裝成功

    Python 3.6.7
    pip 10.0.1
    

    今后該用戶的shell里只要輸入pythonpip,默認就是使用剛才安裝的pythonpip

    python3.6.7中安裝pytorch

    下載pytorch

    https://pytorch.org 找到合適的安裝包,得到下載鏈接后進行下載

    wget https://download.pytorch.org/whl/cpu/torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
    
    使用pip安裝pytorch
    pip install torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
    pip install torchvision
    

    注意:torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl不能改名,因為pip會嚴格檢查文件名是否符合當前python版本,不符合則拒絕安裝。

    驗證安裝
    python
    
    import torch
    import torchvision
    

    不報錯則安裝成功。

    Pycharm下使用pytorch

    在新建工程的時候選擇existing interpreter,指定之前安裝的python.exe即可。(即~/python/python367
    對于已經存在的工程,可以按如下步驟操作(如果project interpreter里面有我們要的python.exe,就不需要再add了)

      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
      轉藏 分享 獻花(0

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 成人网站国产在线视频内射视频| 久久亚洲道色宗和久久| 欧美成人一区二区三区不卡| 亚洲精品无码成人AV电影网| 亚洲高清国产拍精品青青草原 | 中文无码乱人伦中文视频在线| 国产破外女出血视频| 成年美女黄网站色大片免费看| 麻豆一区二区中文字幕| 亚洲成AV人片在线观看WV| 亚洲精品熟女一区二区| 久久精品夜夜夜夜夜久久| 中文字幕日韩有码国产| 天天做天天爱天天爽综合网| 国产午夜A理论毛片| 精品人妻中文无码AV在线| 老王亚洲AV综合在线观看| 精品无码人妻一区二区三区| 国产欧美VA天堂在线观看视频| 2021国产成人精品久久| 六月丁香婷婷色狠狠久久| 精品国产精品午夜福利| 7777精品久久久大香线蕉| 92精品国产自产在线观看481页| 欧美精品亚洲精品日韩专区一乛方| 国产一区二区三区导航| 久久精品国产一区二区三区不卡| 亚洲自偷自拍另类小说| 国产精品麻豆中文字幕| 色偷偷888欧美精品久久久| 激情五月开心综合亚洲| 国产中文字幕日韩精品| 亚洲午夜久久久久久久久电影网| 亚洲高清国产拍精品5G| 在线中文一区字幕对白| 无码精品一区二区三区在线| 乱码中字在线观看一二区| 黄色A级国产免费大片视频| 麻豆成人精品国产免费| 亚洲AV无码久久久久网站蜜桃| 色狠狠色噜噜AV一区|