?近幾年各種深度學習框架涌現,大家可能很難從眾多的深度學習框架中選擇一個合適的框架進行學習。對于深度學習的初學者,或者覺得Tensorflow,Caffe等框架學習困難難以上手的人,可以考慮學習Keras。
? ?
Keras是一種高度模塊化,使用簡單上手快,合適深度學習初學者使用的深度學習框架。Keras由純Python編寫而成并以Tensorflow、Theano以及CNTK為后端。Keras為支持快速實驗而生,能夠把你的idea迅速轉換為結果。
? ?
Keras的設計原則是:
? ?
用戶友好:Keras是為人類而不是天頂星人設計的API。用戶的使用體驗始終是我們考慮的首要和中心內容。Keras遵循減少認知困難的較佳實踐:Keras提供一致而簡潔的API, 能夠極大減少一般應用下用戶的工作量,同時,Keras提供清晰和具有實踐意義的bug反饋。
? ?
模塊性:模型可理解為一個層的序列或數據的運算圖,完全可配置的模塊可以用最少的代價自由組合在一起。具體而言,網絡層、損失函數、優化器、初始化策略、激活函數、正則化方法都是獨立的模塊,你可以使用它們來構建自己的模型。
? ?
易擴展性:添加新模塊超級容易,只需要仿照現有的模塊編寫新的類或函數即可。創建新模塊的便利性使得Keras更適合于先進的研究工作。
? ?
與Python協作:Keras沒有單獨的模型配置文件類型(作為對比,caffe有),模型由python代碼描述,使其更緊湊和更易debug,并提供了擴展的便利性。
第一部份 Keras簡介,Anaconda安裝,Tensorflow的CPU版本安裝,Keras安裝。
第二部份 Keras實現線性回歸,非線性回歸,手寫數字分類。
第三部份 交叉熵(cross-entropy),過擬合,dropout,正則化以及Keras中各種優化器的介紹。
第四部份 卷積神經網絡CNN的講解,以及用CNN解決MNIST分類問題。
第五部份 遞歸神經網絡LSTM的講解,以及LSTM網絡的使用。
第六部份 使用Keras完成圖像識別。
第七部份 使用Keras完成圖片風格轉換。
第八部份 seq2seq模型講解及使用。
第九部份 使用Keras進行情感分類。
第十部份 使用Keras搭建生成對抗網絡GAN。
|