學習程式首先要有一個合用的編輯工具,就像我們寫文章、電腦打字,首先就要找有一個好的文書編輯器,像 word,可以隨時增刪、編修、存檔。這個寫程式用的編輯工具就叫:「整合開發環境IDE」(Integrated Development Environment)是輔助程式開發人員開發軟體的應用軟體。程式編寫人員除了可以能夠透過 IDE 編寫程式碼,它還具有轉譯、除錯等功能。在Python從發明至今,市面上有好幾種 Python 開發環境軟體,像是PyCharm CE、Spyder、Visual Studio Code、Jupyter notebook、Jupyter Lab、Google Colab (Colaboratory)等等,每一種IDE都有優缺點,有複雜有簡單,使用者可以選擇適合自己的IDE。如果是初學者,我們會推薦 Jupyter notebook (以及與此類同的進階版本 JupyterLab)。假設你是一位專業的程式設計師或者在開發過程中需要大量整合不同語言的程式碼套件,則會建議使用Visual Studio Code。
JupyterNotebook 的好處是具有直譯的特性,寫好的一小段程式碼,可以立即執行,高度互動,便於呈現資料的視覺化,廣受資料科學研究者喜愛。不過缺點是 JupyterNotebook 必須下載至桌機或筆電中使用,必須花費不少時間來設定環境、路徑、以及尋找版本相容的套件,費時費力。Colab 是線上版的Jupyter Notebook,可以彌補這個缺失,近年來被大量地使用。 Colab 以雲端網頁呈現,環境設定與檔案路徑都可以設定在雲端中,可以節省大量程式、套件安裝的時間,它也有直譯功能,指令操作幾乎與 Jupyter Notebook 雷同,同時Colab允許共用編輯,因此不論是協作,或是分享程式碼,都很方便。唯一要注意的是,它是配合 google drive 使用,必須要有 google 帳號,檔案存取均置於 google drive 中。
本書後半部會提及機器學習與深度學習,此時Colab的優點就更明顯了,因為 Colab可以使用 Google 提供的線上GPU 或 TPU 訓練模型效果會好很多。本書隨後各章的範例程式(學習包) 均可以在 Colab 及 Jupyter notebook 下執行。以下整理了Colab線上端執行的優缺點。
優點
- 使用雲端空間,不用自己的電腦空間。
- 免費使用 Google 的 GPU 算力,執行深度學習訓練更快。
- 可以完美的橫跨 Mac 與 Windows 環境設定的兼容性問題。
- 手機平板也可以執行。
- 方便協作、分享,不必擔心電腦間版本不同的問題。
缺點
- 佔用 Google 雲端硬碟容量。
- 必須有網路才能執行,且免費版執行一段時間後就會斷線。
- 除非深度學習與機器學習,不然執行一般的程式較Jupyter慢。
- 有些套件無法在Colab上運行。
Jupyter notebook 程式安裝於自己的電腦,沒有執行時間的限制。
接著就請大家打開第一個學習包:電腦環境與程式編輯工具。點選連結(以下按鈕),即進入 Colab 環境。
(進入聯結頁面後請按上方中央的「使用 google colaboratory 開啟」鍵)