2018-02-08

Google Colab Free GPU教程
現(xiàn)在,你可以開發(fā)深度學(xué)習(xí)與應(yīng)用谷歌Colaboratory -on的免費(fèi)特斯拉K80 GPU -使用Keras靠益,Tensorflow和PyTorch胧后。

你好!我將向您展示如何使用Google Colab纸巷,Google為AI開發(fā)人員提供的免費(fèi)云服務(wù)何暇。借助Colab凛驮,您可以免費(fèi)在GPU上開發(fā)深度學(xué)習(xí)應(yīng)用程序黔夭。

什么是Google Colab羽嫡?
Google Colab是免費(fèi)的云服務(wù)杭棵,現(xiàn)在它支持免費(fèi)的GPU!

您可以;

提高你的Python編程語言編碼技能先舷。
開發(fā)利用流行的庫如深學(xué)習(xí)應(yīng)用Keras滓侍,TensorFlow,PyTorch捺球,和OpenCV的。
Colab與其他免費(fèi)云服務(wù)最大的區(qū)別在于:Colab提供GPU并且完全免費(fèi)裂逐。

有關(guān)該服務(wù)的詳細(xì)信息可以在常見問題頁面上找到絮姆。

準(zhǔn)備使用Google Colab
在Google云端硬盤上創(chuàng)建文件夾

由于Colab正在使用您自己的Google云端硬盤秩霍,因此我們首先需要指定我們將要使用的文件夾铃绒。我在Google云端硬盤上創(chuàng)建了一個(gè)名為“ 應(yīng)用 ” 的文件夾。當(dāng)然矮燎,您可以使用不同的名稱诞外,或選擇默認(rèn)的Colab筆記本文件夾而不是應(yīng)用程序文件夾灾票。

我創(chuàng)建了一個(gè)空的“應(yīng)用程序”文件夾
創(chuàng)建新的Colab筆記本
通過右鍵單擊>更多> Colaboratory創(chuàng)建一個(gè)新的筆記本

右鍵單擊>更多> Colaboratory
通過點(diǎn)擊文件名來重命名筆記本刊苍。

設(shè)置免費(fèi)的GPU
改變默認(rèn)硬件非常簡單(CPU到GPU或反之亦然) ; 只要按照編輯>筆記本電腦設(shè)置或運(yùn)行>更改運(yùn)行時(shí)類型和選擇GPU的硬件加速器正什。

使用Google Colab運(yùn)行基本的Python代碼
現(xiàn)在我們可以開始使用Google Colab。

我將運(yùn)行Python Numpy教程中的一些基本數(shù)據(jù)類型代碼斯棒。

它按預(yù)期工作:)如果你不知道Python是AI最流行的編程語言荣暮,我會(huì)推薦這個(gè)簡單而干凈的教程旨怠。

使用Google Colab運(yùn)行或?qū)?py文件
首先運(yùn)行這些代碼鉴腻,以便安裝必要的庫并執(zhí)行授權(quán)百揭。

apt-get install -y -qq software-properties-common python-software-properties module-init-tools
器一!add-apt-repository -y ppa:alessandro-strada / ppa 2>&1> / dev / null
祈秕!apt-獲取更新-qq 2>&1> / dev / null
请毛!apt-get -y install -qq google-drive-ocamlfuse
從google.colab導(dǎo)入
auth.authenticate_user()
從oauth2client.client導(dǎo)入GoogleCredentials
creds = GoogleCredentials.get_application_default( )
import getpass
瞭亮!google-drive-ocamlfuse-headless -id = {creds.client_id} -secret = {creds.client_secret} </ dev / null 2>&1 | grep URL
vcode = getpass.getpass()
统翩!echo {vcode} | google-drive-ocamlfuse-headless -id = {creds.client_id} -secret = {creds.client_secret}
當(dāng)你運(yùn)行上面的代碼時(shí),你應(yīng)該看到這樣的結(jié)果:

點(diǎn)擊鏈接委粉,復(fù)制驗(yàn)證碼并粘貼到文本框中娶桦。

完成授權(quán)過程后趟紊,

安裝您的Google云端硬盤:

!mkdir -p驅(qū)動(dòng)器
!google-drive-ocamlfuse驅(qū)動(dòng)器
安裝Keras:

送爸!pip安裝-q keras
將mnist_cnn.py文件上傳到位于Google云端硬盤上的應(yīng)用程序文件夾。

mnist_cnn.py文件
運(yùn)行下面的代碼在MNIST數(shù)據(jù)集上訓(xùn)練一個(gè)簡單的小圓點(diǎn)墨吓。

帖烘!python3 drive / app / mnist_cnn.py

從結(jié)果中可以看出橄杨,每個(gè)紀(jì)元只能持續(xù)11秒照卦。

下載泰坦尼克號(hào)數(shù)據(jù)集(.csv文件)并顯示前5行
如果你想從url下載 .csv文件到“ app”文件夾役耕,只需運(yùn)行:

瞬痘!wget https://raw.githubusercontent.com/vincentarelbundock/Rdatasets/master/csv/datasets/Titanic.csv -P drive / app
您可以直接將.csv文件上傳到“app”文件夾板熊,而不是使用wget方法干签。

在“ app ”文件夾中讀取 .csv文件并顯示前5行:

將pandas導(dǎo)入為pd
titanic = pd.read_csv(“drive / app / Titanic.csv”)
titanic.head(5)

將Github Repo克隆到Google Colab
用Git克隆一個(gè)Github庫很容易。

第1步:找到Github回購并獲得“Git”鏈接
找到任何Github回購使用丹泉。

例如:https://github.com/wxs/keras-mnist-tutorial

克隆或下載>復(fù)制鏈接鸭蛙!

  1. Git克隆
    只需運(yùn)行:

娶视!git clone https://github.com/wxs/keras-mnist-tutorial.git

3.在Google云端硬盤中打開文件夾
文件夾與Github回購當(dāng)然是一樣的:)

4.打開筆記本
右鍵單擊>打開方式> Colaboratory

5.運(yùn)行
現(xiàn)在肪获,您可以在Google Colab中運(yùn)行Github回購。

一些有用的提示
1.如何安裝庫较木?
Keras

青柄!pip install -q keras
導(dǎo)入keras
PyTorch

致开!pip install -q http://download.pytorch.org/whl/cu75/torch-0.2.0.post3-cp27-cp27mu-manylinux1_x86_64.whl torchvision
進(jìn)口火炬
MxNet

!apt install libnvrtc8.0
!pip install mxnet-cu80
將mxnet導(dǎo)入為mx
OpenCV的

!apt-get -qq install -y libsm6 libxext6 && pip install -q -U opencv-python
import cv2
XGBoost

虹蒋!pip install -q xgboost == 0.4a30
import xgboost
GraphViz的

魄衅!apt-get -qq install -y graphviz && pip install -q pydot
import pydot
7zip閱讀器

徐绑!apt-get -qq install -y libarchive-dev && pip install -q -U libarchive
import libarchive
其他圖書館

!pip install或者 !apt-get install安裝其他庫。

  1. GPU是否工作毅访?
    要查看您目前是否在Colab中使用GPU盘榨,可以運(yùn)行以下代碼以進(jìn)行交叉檢查:

import tensorflow as tf
tf.test.gpu_device_name()

3.我使用哪個(gè)GPU草巡?
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
目前,Colab只提供特斯拉K80查乒。

4.什么是RAM郁竟?
棚亩!貓/ proc / meminfo

  1. CPU呢?
    讥蟆!cat / proc / cpuinfo

6.更改工作目錄
通常當(dāng)你運(yùn)行這個(gè)代碼時(shí):

瘸彤!LS
你可能會(huì)看到datalab和驅(qū)動(dòng)器文件夾。

因此低零,您必須在定義每個(gè)文件名之前添加drive / app拯杠。

為了擺脫這個(gè)問題潭陪,你可以簡單的改變工作目錄依溯。(在本教程中,我更改為應(yīng)用程序文件夾)與這個(gè)簡單的代碼:

import os
os.chdir(“drive / app”)
運(yùn)行上面的代碼之后枝秤,如果再次運(yùn)行

淀弹!LS
你會(huì)看到應(yīng)用程序文件夾的內(nèi)容薇溃,并不需要一直添加驅(qū)動(dòng)器/應(yīng)用程序了缭乘。

7.“ No backend with GPU available”錯(cuò)誤解決方案
如果您遇到此錯(cuò)誤:

Failed to assign a backend
No backend with GPU available. Would you like to use a runtime with no accelerator?
稍后再試《榧ǎ現(xiàn)在很多人在GPU上踢輪胎,當(dāng)所有GPU都在使用時(shí)特姐,就會(huì)出現(xiàn)這個(gè)消息到逊。

參考

8.如何清除所有細(xì)胞的輸出
遵循工具>>命令選項(xiàng)板>>清除所有輸出

9.“apt-key輸出不應(yīng)該被解析(標(biāo)準(zhǔn)輸出不是終端)”警告
如果您遇到此警告:

警告:不應(yīng)該分析apt-key輸出(標(biāo)準(zhǔn)輸出不是終端)
這意味著認(rèn)證已經(jīng)完成觉壶。您只需要安裝Google云端硬盤:

铜靶!mkdir -p驅(qū)動(dòng)器
争剿!google-drive-ocamlfuse驅(qū)動(dòng)器
結(jié)論
我認(rèn)為Colab將為世界各地的深度學(xué)習(xí)和人工智能研究帶來新的氣息。

如果你覺得這篇文章有用蚕苇,那么如果你給了它一些掌聲并且分享來幫助別人找到它涩笤,那將意味著很多!并隨時(shí)留下評(píng)論蹬碧。

你可以在LinkedIn上找到我舱禽。

最后的筆記
這篇博文將不斷更新。

更新日志
26-01-2018
“插入應(yīng)用程序 文件夾 到 路徑” 刪除
“下載恩沽,閱讀和顯示.csv文件” 添加
“一些有用的技巧” 補(bǔ)充說
27-01-2018
“更改工作目錄” 添加
28-01-2018
“克隆Github回購谷歌合作” 補(bǔ)充說
“pip安裝mxnet”添加
29-01-2018
No backend with GPU available.添加錯(cuò)誤解決方案

2018年2月2日
“MxNet安裝” 更改(CPU到GPU)
2018年5月2日
“如何清除所有細(xì)胞的輸出” 補(bǔ)充說
apt-key output should not be parsed (stdout is not a terminal)警告添加

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末誊稚,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子罗心,更是在濱河造成了極大的恐慌里伯,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件协屡,死亡現(xiàn)場(chǎng)離奇詭異俏脊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)肤晓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門爷贫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人补憾,你說我怎么就攤上這事腾务。” “怎么了启昧?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵严里,是天一觀的道長。 經(jīng)常有香客問我教硫,道長锋玲,這世上最難降的妖魔是什么伞插? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任耗美,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赶袄。我一直安慰自己幢痘,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著髓梅,像睡著了一般枯饿。 火紅的嫁衣襯著肌膚如雪爸舒。 梳的紋絲不亂的頭發(fā)上鹊奖,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼欢瞪。 笑死重贺,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播堵第,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼阀捅,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼也搓!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體滔岳,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡朴下,死狀恐怖免胃,靈堂內(nèi)的尸體忽然破棺而出扼雏,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站告组,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏掸冤。R本人自食惡果不足惜稿湿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一涕俗、第九天 我趴在偏房一處隱蔽的房頂上張望再姑。 院中可真熱鬧绍填,春花似錦住闯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽攀隔。三九已至皂贩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間昆汹,已是汗流浹背明刷。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留满粗,地道東北人辈末。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親挤聘。 傳聞我的和親對(duì)象是個(gè)殘疾皇子轰枝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容