介紹
本文包括以下幾個部分的安裝和使用,一條龍搭建深度學(xué)習(xí)環(huán)境,記錄下來以加快下次裝機效率。
- Ubuntu
- NVIDIA+CUDA+CUDNN
- Anaconda
Ubuntu系統(tǒng)安裝
制作u盤啟動盤
下載Multi Boot USB軟件
下載ubuntu系統(tǒng)iso鏡像,地址:官網(wǎng);中科大;阿里云;蘭州大學(xué);北京理工大學(xué);浙江大學(xué)
原理是把一個iso系統(tǒng),寫入到u盤,在電腦開機的時候,通過u盤的系統(tǒng)來啟動。需要
準(zhǔn)備一個U盤,如果里面有東西,先拷出來備份。將U盤格式化為FAT32格式。
運行Multi Boot USB軟件。
select USB disk是選擇目標(biāo)U盤,等會使用該U盤進行啟動。
Select image是選擇鏡像文件,安裝該鏡像到系統(tǒng)中。
下面選MultiBootUSB即可,Persistence不用動。點Install distro,等待寫入完成即可。
安裝系統(tǒng)
開機時需要選擇boot啟動項,要選擇引導(dǎo)帶有USB、UEFI字樣的啟動項。想打開選擇boot啟動項的界面,筆記本一般按F2,臺式機一般按F8和F9,del和F12也有可能會使用,不同的電腦不一樣??梢园袴1-12順著按一遍。。。。。
進入到安裝界面之后,斷網(wǎng)操作,如果聯(lián)網(wǎng)就會拉慢安裝進度,會安裝語言包等不需要的東西。
進入到安裝類型這里,選其他類型,需要分區(qū)。
EFI分2G,Swap=內(nèi)存大小,Ext4分200-500G。
EFI是系統(tǒng)引導(dǎo)的部分,一般只會用到幾百M;Swap是當(dāng)內(nèi)存不夠時,操作系統(tǒng)會將硬盤當(dāng)虛擬內(nèi)存使用,所以在0.5-2倍內(nèi)存都可以;Ext4掛在根目錄/上;如果還有多于的空間,以后可以靈活掛在home上,或者裝其他系統(tǒng),靈活處理。
后面直接下一步安裝就可以了。
然后會遇到一個用戶和密碼設(shè)置,這里可以創(chuàng)建一個自己的初始用戶。
安裝完成
安裝完成后先把root用戶密碼改一下,打開terminal:sudo passwd,先輸入自己的密碼,然后輸入想要設(shè)置的root密碼。
我安裝筆記本時,裝好了但是wifi不能用,應(yīng)該是什么網(wǎng)卡驅(qū)動沒裝的原因,這里給出幾個蠢方法解決。
- 先連上網(wǎng)線,讓電腦有網(wǎng)。然后運行兩個命令就可以了。
sudo apt-get update
sudo apt-get install --reinstall bcmwl-kernel-source
查看網(wǎng)卡lspci
官網(wǎng)對應(yīng)解決方案 sudo service network-manager restart- 蠢方法2
NVIDIA+CUDA+CUDNN 參考
NVIDIA是顯卡驅(qū)動,CUDA是并行運算平臺,CUDNN是神經(jīng)網(wǎng)絡(luò)平臺。
查看顯卡型號:
lspci |grep VGA
lspci | grep -i nvidia
下載
先給出3個網(wǎng)址,需要下載,CUDA和CUDNN版本要保持一致。
NVIDIA GeForce驅(qū)動
NVIDIA Tesla驅(qū)動
CUDA
CUDNN 在Ubuntu安裝CUDNN要下載runtime,developer,doc and sample一共3個文件。
下載完畢后,sh文件需要加上運行權(quán)限sudo chmod a+x 文件名
NVIDIA安裝
卸載原有驅(qū)動
# 如果之前是用apt-get安裝
sudo apt-get remove --purge nvidia*
# 如果之前是用runfile文件安裝
sudo chmod +x *.run
sudo ./原來安裝的文件名 --uninstall
禁用服務(wù)
sudo gedit /etc/modprobe.d/blacklist.conf
文本最后加上
blacklist nouveau
options nouveau modeset=0
更新
sudo update-initramfs -u
因為顯卡需要控制顯示在屏幕上的圖像,所以如果圖形界面處于占用狀態(tài),安裝驅(qū)動是必然會失敗的。關(guān)閉X-Window服務(wù)。
sudo service lightdm stop
可以重啟一下
reboot
安裝
sudo ./文件名
如果重啟之后還不行,用sudo init 3,再安裝。
驗證方法:nvidia-smi
CUDA
sudo ./文件名
幾個重要的選項
accept #同意安裝
n # 不安裝驅(qū)動,已經(jīng)安裝最新驅(qū)動
y # 安裝CUDA Toolkit
<Enter> #安裝到默認(rèn)目錄
y # 創(chuàng)建安裝目錄的軟鏈接
n # 不復(fù)制Samples
驗證方法:nvcc -V
CUDNN
# 安裝
sudo dpkg -i runtime文件
sudo dpkg -i developer文件
sudo dpkg -i doc文件
# 驗證方法
cp -r /usr/src/cudnn_samples_v7/ /home/wdong/
cd /home/wdong/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
# 如果成功安裝會顯示
Test passed!
Anaconda搭建環(huán)境
在裝包的時候發(fā)現(xiàn)權(quán)限有問題,運行下面的指令,將yourname換成自己的用戶名。
sudo chown -R yourname:yourname /home/marley/anaconda3
各個深度學(xué)習(xí)框架的安裝方法
注:下面帶有超鏈接的是需要點進去,選擇對應(yīng)自己系統(tǒng)和環(huán)境的版本進行安裝。
-
pytorch
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
這里cudatoolkit=10.0可以直接在10.1的環(huán)境下使用,無需更改。
如果發(fā)現(xiàn)速度很慢,刪掉后面的-c pytorch,并使用命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ - tensorflow
conda install tensorflow-gpu -
mxnet
pip install mxnet-cu101 - keras
conda install keras
測試是否可以使用gpu
運行下面的代碼,并使用nvidia-smi -l 2監(jiān)測gpu的占用,如果在程序運行期間發(fā)生了GPU占用,則說明可以正常使用。
- pytorch
# -*- coding: UTF-8 -*-
import torch
from torch.autograd import Variable
# 將變量或者數(shù)據(jù)移到GPU
gpu_info = Variable(torch.randn(3,3)).cuda()
# 將變量或者數(shù)據(jù)移到CPU
cpu_info = gpu_info.cpu()
- tensorflow and keras
import tensorflow as tf
from tensorflow import keras
import numpy as np
import os
# os.environ["CUDA_VISIBLE_DEVICES"] = ""
fashion_mnist = keras.datasets.fashion_mnist
(train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()
model = keras.Sequential([
keras.layers.Flatten(input_shape=(28, 28)),
keras.layers.Dense(128, activation=tf.nn.relu),
keras.layers.Dense(10, activation=tf.nn.softmax)
])
model.summary()
model.compile(optimizer=tf.train.AdamOptimizer(),
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(train_images, train_labels, epochs=10)
- mxnet
import mxnet as mx
from mxnet import nd
from mxnet.gluon import nn
for i in range(10):
b = nd.random.uniform(shape=(10000, 10000), ctx=mx.gpu(0))
print(b)
print(mx.cpu(), mx.gpu(), mx.gpu(0))
其他包的安裝
- opencv
pip install opencv-python或者pip install opencv-python==3.4.5.20 - dlib人臉識別庫
以下幾個東西要先裝好,再能裝dlib,不然報錯。
distro:pip install distro
cmake:sudo apt-get install cmake
然后執(zhí)行dlib的安裝命令,其中會用到cmake編譯源碼,所以要花一點時間:
pip install dlib
裝完了打開python運行import dlib,不報錯則成功。 - tensorboardX
pip install tensorboardX