1.關于Keras
1)簡介
Keras是由純python編寫的基于theano/tensorflow的深度學習框架。
Keras是一個高層神經(jīng)網(wǎng)絡API,支持快速實驗,能夠把你的idea迅速轉換為結果,如果有如下需求,可以優(yōu)先選擇Keras:
a)簡易和快速的原型設計(keras具有高度模塊化,極簡,和可擴充特性)
b)支持CNN和RNN,或二者的結合
c)無縫CPU和GPU切換
2)設計原則
a)用戶友好:Keras是為人類而不是天頂星人設計的API。用戶的使用體驗始終是我們考慮的首要和中心內容。Keras遵循減少認知困難的最佳實踐:Keras提供一致而簡潔的API, 能夠極大減少一般應用下用戶的工作量,同時,Keras提供清晰和具有實踐意義的bug反饋。
b)模塊性:模型可理解為一個層的序列或數(shù)據(jù)的運算圖,完全可配置的模塊可以用最少的代價自由組合在一起。具體而言,網(wǎng)絡層、損失函數(shù)、優(yōu)化器、初始化策略、激活函數(shù)、正則化方法都是獨立的模塊,你可以使用它們來構建自己的模型。
c)易擴展性:添加新模塊超級容易,只需要仿照現(xiàn)有的模塊編寫新的類或函數(shù)即可。創(chuàng)建新模塊的便利性使得Keras更適合于先進的研究工作。
d)與Python協(xié)作:Keras沒有單獨的模型配置文件類型(作為對比,caffe有),模型由python代碼描述,使其更緊湊和更易debug,并提供了擴展的便利性。
2.Keras的模塊結構
3.使用Keras搭建一個神經(jīng)網(wǎng)絡
延伸閱讀
學習是年輕人改變自己的最好方式