1. 程式人生 > >Google Colab基礎使用指南

Google Colab基礎使用指南

1. 資料匯入

google colab的資料匯入主要有兩種方法, 臨時上傳, 從Google Drive匯入

臨時上傳

 

點選上圖紅色圈出的部分, 在彈出的框裡面選擇檔案, 點選上傳, 可以將本地的檔案傳到伺服器中

這種方法比較方便, 但是由於google colab的雲端伺服器是臨時分配的, 所以在一段時間不用或者連續執行12個小時導致伺服器連線斷開之後, 會丟失檔案

從Google Drive匯入

google drive匯入有多種方法, 但是之前我在部落格上面找到的方法已經失效, 而且頗為麻煩

我再重新介紹一個更方便的方法

1. 還是點選第1張圖紅色圈出的部分

2. 再點選程式碼段, 找到Downloading files importing data from Google Drive

 

點選會新建一個cell裡面有傳入data的程式碼

3. 找到需要的檔案, 從網址中複製id, 填入下面的紅框部分

有時候需要注意, google drive的文件可能被設定為了私密狀態, 直接複製到colab裡面也不能夠使用

需要右鍵點選檔案然後建立分享連結, 在分享連結裡面有可以匯入的id

一個個查在需要匯入的檔案少的時候還算方便, 但是檔案多了就很麻煩了

此時可以使用命令直接解析出來, 所有的檔案id

# 列出根目錄的所有檔案
# "q" 查詢條件教程詳見:https://developers.google.com/drive/v2/web/search-parameters
file_list = drive.ListFile({'q': "'root' in parents and trashed=false"}).GetList()
for file1 in file_list:
  print('title: %s, id: %s, mimeType: %s' % (file1['title'], file1['id'], file1["mimeType"]))

 以上程式碼可以看到根目錄下的資料夾和檔案的id

既然談到了從Google Drive匯入, 就不得不提google drive檔案的上傳問題了. 由於眾所周知的原因, 我們不能直接登入上傳, 有的梯子對於上傳做了限速, 在我們的資料集比較大的時候就得想別的方法了

我用的是Multcloud和MEGAsync網盤相結合的方法進行上傳, multcloud也支援百度網盤, 只是很慢. 這種方法上傳有時候有點用, 但速度也一般.

 實在不行就還是得換梯子了.

2. 硬體加速器

我相信很多人跟我一樣就是為了免費的GPU才翻出牆外使用google colab, 除了之前的GPU就在這幾天google colab也提供了免費的TPU

工具欄->修改->筆記本設定->硬體加速器

3. 快捷鍵

google colab跟jupter notebook和kaggle kernel長得差不多, 但是少部分快捷鍵不太一樣, 許多命令變成了ctrl+m再加上jupyter的命令, 我認為這也是一大改進(jupyter的很多快捷鍵還得用esc切換到命令狀態去敲), 美中不足的是有的快捷鍵會跟瀏覽器快捷鍵衝突

快捷鍵名稱 快捷鍵 jupyter
show keyboard shortcuts
Ctrl/Cmd M H
H
Insert code cell above
Ctrl/Cmd M A A
Insert code cell below
Ctrl/Cmd M B B
Delete cell/selection
Ctrl/Cmd M D DD
Interrupt execution 
Ctrl/Cmd M I II
Convert to code cell
Ctrl/Cmd M Y Y
Convert to text cell
Ctrl/Cmd M M M
Split at cursor
Ctrl/Cmd M - Ctrl Shift -

以上是從Medium上面搬運的快捷鍵對比節選