因為一些緊急原因,今天都在搞colab(google免費的gpu雲端服務),這邊就寫一些筆記吧,colab應該也算是GCP的一員吧?
0.colab介面是一個ipynb的介面,在每個code cell輸入指令
1.資料可以上傳到自己的google drive,使用colab時可以mount自己的google drive,指令如下:
from google.colab import drive
drive.mount('/content/drive') #/content是你colab的主要資料夾,mount後你googledrive在"drive"
2.想要執行linux指令(ls,pwd,nvidia-smi...),只要在你想執行的指令前加上“!”即可,例如:
!ls
!nvidia-smi
!python train.py
3.為了加速training速度,建議把你的training data從google drive複製到colab的主要資料夾,因為你google drive的實體位置可能距離colab的實體位置有點距離,colab在load data時會延遲。指令:
!cp -R ./drive/'My Drive'/training_data training_data
5.colab不能直接在code cell修改檔案內容(!vi,%vi都不支援),非常的不方便,但有個work around,用“%%writefile”指令可以寫入一個檔案。對要修改的檔案,把原本的內容複製後修改自己要修改的地方變成新的內容,然後用這指令把新的內容覆蓋吊原本的檔案。範例如下:
!ls
output: colabData/
%%writefile something.py
print("everything's fine.")
!ls
output: colabData/ something.py
%run something.py
output: everything's fine.
參考:https://stackoverflow.com/questions/48687091/how-to-edit-and-save-text-files-py-in-google-colab
6.官方說免費的gpu已經從k80升級到了T4!但我今天(Sep. 2019)怎麼是都是k80...:(,網路上也是有的網友拿到k80有的拿到T4
參考:https://www.reddit.com/r/MachineLearning/comments/bglwhy/n_google_colab_now_comes_with_free_t4_gpus/
有了上面這些note應該可以正常run想要的實驗了,目前正在訓練,之後還有遇到什麼問題再補上;)
不能ctrl+v直接貼圖片上來真的很麻煩... :(