以 Keras 開發機器學習模型

門檻低, 可解決多數機器學習問題

攏統講 keras 是一個介面,而非獨立的機器學習框架. 它提供了更高階、更直觀的抽象函數庫, 無論使用何種計算後端, 使用者都可以輕鬆地開發深度學習模型. 它的後端可以是 微軟 CNTK, 早期的 Theano, 或者 Tensorflow. 不過在 2017 年Tensorflow 將 keras 整併到其框架後, 似乎比較容易看到的是 Tensorflow+keras 的範例. 事實上還是可以單獨安裝 keras 的. 如果不排斥 Tensorflow, 當我們 pip install tensorflow 就已經安裝 好 keras.

使用 keras 無非是因為門檻低, 如果行有餘力了解 pytorch 就可以接觸深度學習最近學術界更常用的框架. 許多論文發表夾帶的實作是以 pytorch 開發的. 最近一兩年發表的論文, keras 比較難實作出來是極低的比例, 以一般工業界應用來說, 衡量其學習曲線以及現有的資源, 拿 keras 作為企業導入深度學習技術的起點算是很好的選擇.

雖然 Keras 入門門檻低, 但如果要做好整個AI專案, 我們知道從資料的預處理, 資料擴增, 模型設計, 尋找較優的超參數, 訓練過程等等環節, 都有一定的挑戰, keras 針對每個痛點, 多少有提出相關的模組或API, 後面子章節做學習 keras 開發模型的筆記.