【自學AI#5】深度學習必備:Keras、Jupyter安裝教學

作者:賴桑

前面幾集的內容,皆是在帶大家認識 AI 與各種 NN ,這集將會介紹程式庫 TensorFlow 以及應用程式介面 Keras ,並詳盡說明如何安裝與架設,最後還會分享一款實用 Python 編輯器,事不宜遲,馬上開始吧!

前面的四集,我們都還是用最簡單又傳統的方法,以一列列程式碼去實現好幾種 NN,因為我在第一集說過,人工智慧的開發設計,從來沒規定一定要用什麼、怎麼做。但正因為沒有規定,所以產生的問題就在於:「總不能每次需要都得重頭開始,太不符合經濟效益了!」所以,許多公司便開發了所謂的引擎、平台,其實就是把 NN 開發製作所需要的程式碼,先分類整理出來做成程式庫,再加上一些介面讓大家可以呼叫、套用。

平台、介面介紹

到底有幾家公司推出幾種平台跟引擎?其實我自己也不知道,經過歷年來在市場上捉對廝殺,目前留下來最負盛名的,就是 Google 的 TensorFlow 。話說回來, TensorFlow 原則上比較適合有經驗的軟體開發人員,因為 TensorFlow 本身設計上,對使用者要求較需要有關於數學、邏輯、資訊管理方面的工作,才能透過 TensorFlow 來做 AI 的應用開發(你得在一開始就對你想做的系統構型,在腦海裡勾勒得很明顯),這對不少人來說,使用AI上形成不易跨越的門檻。

剛巧在2015年 TensorFlow 推出的同時,美國麻省理工學院(又是它,這學校開門就能賺錢)也推出一套能很容易被使用者透過 Python 寫 Deep learning 的應用程式介面 API ,叫做 Keras 。記住, Keras 只有介面喔! Keras 本身還是得透過 TensorFlow ,或者其他像是微軟的 CNTK 這類引擎當作底層,才能執行。

Keras 使用上比較接近人類的想法( TensorFlow 設計上沒有錯,只不過比較是針對電腦系統跟網路通訊的想法),所以透過 Python 呼叫 Keras 能夠很簡單地描述我們人類想要電腦達到 Deep Learning 要做的事情。目前在教學上, Keras 的普及率相當高,所以啦!我們接下來也盡量用 Keras 來當作後續介紹的教本,越後面大家開始有了比較深的體認後,會再逐步拆解介紹 TensorFlow 給大家。

如何安裝與架設環境?

安裝其實很簡單,過去很多書寫了怎麼安裝 TensorFlow ,可是到後來,大多殘念的卡住無法繼續,而目前的 Keras 已經內定支援 TensorFlow ,這對於學習AI真是一舉兩得。

我是用微軟的 Windows 10 ,如果你用其他的機器也沒關係,因為主要都是透過標準程序跟 pip 來安裝。另外,我們接下來會用 Python 3 的機會比較高,請一率先安裝 Python 3.7 這種新的版本。

接著,下載 Anaconda 並安裝,這是因為我們接下來會用到不少電腦環境的作業,為了避免搞到後來一團亂,還是裝一下吧!

接下來會常用到 Python 3,請記得先安裝 Python 3.7

為了跟上後續的教學,請先下載安裝 Anaconda(圖片來源:賴桑提供)

Anaconda 安裝步驟

安裝成功後,開啟 Anaconda Powershell prompt (這步驟會較久,因為要做環境設定),接著建立工作目錄,比如 md d:\pythonwork ,然後切換進去 cd d:\pythonwork 。

這步驟會較久,因為要做環境設定

開始建立虛擬環境,比方命名就是 tensorflow ,最後會問你:「Proceed(y/n)?」,那當然答案就是y囉!

一步驟一步驟跟著做,就不會錯啦

這樣就建立好了虛擬環境,不過要小心,這樣只有建立了而已,電腦可是死的,你得叫電腦進入或退出虛擬環境才行。以我們的例子來說,進入的指令就是 conda activate tensorflow ,退出當然就是 conda deactivate 。安裝我們之後要用的 tensorflow 、 keras ,當然得要在 tensorflow 這個虛擬環境下囉(建議養成以上習慣,免得到時候一大堆東西亂成一團):

建立完還要給電腦指令

進入的指令是 conda activate tensorflow

退出指令是 conda deactivate

新一代編輯器 Jupyter

以上安裝作業環境就大功告成,我們接著可以透過 Keras 更簡單地開發範例給大家當範本。再來,除了傳統的純文字編輯器以外,也可以用較新一代的 Jupyter , Jupyter 會以瀏覽器產生全螢幕的方式編輯與執行結果對照環境。啟動的方式,是進入虛擬環境後,再用 jupyter notebook 這個指令:

除了純文字編輯器,也可以用較新一代的 Jupyter 編輯器

然後你的瀏覽器就會跳出來,只要新增一個檔案,就可以用 Jupyter 產生執行的對照:

新增一個檔案,選擇Python 3

接下來就可以輸入 Python 指令

In: 就是輸入 Python 3 指令的地方,可以一次輸入多列,也可以一次一列,接著按 Run 就能逐步執行,此外不同列可以按 + 號繼續不同輸入。

可以一次輸入多列相當方便

小結

很方便吧?!之後我們就來看看,假如 NN 可以有回溯之前效果的功能,那是不是針對不同時間點的問題,要釐清的話就像 Jupyter 這種編輯器一樣簡單了?我們之後就來試試。

Keras 對 AI 新手來說,是相當適合用來入門深度學習模型的 API ,若你一路跟著自學 AI 系列文章到了這裡,想必對 NN 有了一定了解,看了這麼多應該也技癢的想自己動手試試,馬上下載安裝來玩看看吧!

(責任編輯:楊子嫻)

賴建宏

社群稱號為「賴桑」的他,以電子電機的背景,熱衷於OSHW的應用開發與實作。現為台北科技大學電子所博士班學生,目前主推「農林漁牧大業」計畫的迷你型魚菜共生系統開發。
賴建宏

Author: 賴建宏

社群稱號為「賴桑」的他,以電子電機的背景,熱衷於OSHW的應用開發與實作。現為台北科技大學電子所博士班學生,目前主推「農林漁牧大業」計畫的迷你型魚菜共生系統開發。

Share This Post On

Submit a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *