關於深度學習框架 TensorFlow、Theano 和 Keras


【TensorFlow】
1、TensorFlow是啥?
——TensorFlow是Google開發的一款神經網絡的Python外部的結構包,也是一個采用數據流圖來進行數值計算的開源軟件庫。TensorFlow 讓我們可以先繪制計算結構圖, 也可以稱是一系列可人機交互的計算操作, 然后把編輯好的Python文件 轉換成 更高效的C++,並在后端進行計算。
2、為什么用TensorFlow?
1)TensorFlow 無可厚非地能被認定為 神經網絡中最好用的庫之一。
2)它擅長的任務就是訓練深度神經網絡
3)通過使用TensorFlow我們就可以快速的入門神經網絡,大大降低了深度學習(也就是深度神經網絡)的開發成本和開發難度。
4)TensorFlow 的開源性, 讓所有人都能使用並且維護, 鞏固它。使它能迅速更新,提升。
 
【Theano】
1、Theano是啥?
——Theano 是神經網絡python機器學習的模塊,和TensorFlow非常類似,可以說是TensorFlow的鼻祖。TensorFlow基於 Theano進行了很多的升級改進。
2、為什么用Theano?
1)Tensowflow 目前只能在 MacOS 和 Linux, theano 不僅可以在前兩個系統中運行, 還可以在 Windows 系統下運行。
2)Theano 可以使用 GPU 進行運算,用GPU運行比CPU快100倍左右,theano 是比較優秀的 python 模塊。 
3)對於初學者來說,如果可以在 theano 和 tensorflow 中選擇, 個人推薦使用 tensowflow. tensowflow 是比較商業化的模塊,用起來沒有theano 學術化。如果是使用機器學習進行學術性研究,網上已經有很多使用 theano 的學術性資料。所以 theano 在這種情況下是值得推薦的。
3、Theano的安裝
4、Theano的用法
 
【Keras】
1、Keras是啥?
——Keras是一個由Python編寫的開源人工神經網絡庫,可以作為Tensorflow、Microsoft-CNTK和Theano的高階應用程序接口,進行深度學習模型的設計、調試、評估、應用和可視化 [1]  。Keras在代碼結構上完全由面向對象方法編寫,高度模塊化並具有可擴展性,其調用機制和說明文檔有將用戶體驗和使用難度納入考慮,簡化了很多復雜算法的實現難度 [1]  。Keras支持現代人工智能領域的主流算法,包括前饋結構和遞歸結構的深度神經網絡,也可用和參與構建統計學習模型。
2、為什么用Keras?
1)Keras是對Theano進行了包裝,直接使用Keras可以減少很多細節程序的書寫,它是模塊兒化的,使用比較方便。
2)如果說 Tensorflow 或者 Theano 神經網絡方面的巨人. 那 Keras 就是站在巨人肩膀上的人. Keras 是一個兼容 Theano 和 Tensorflow 的神經網絡高級包, 用他來組件一個神經網絡更加快速, 幾條語句就搞定了. 而且廣泛的兼容性能使 Keras 在 Windows 和 MacOS 或者 Linux 上運行無阻礙。
3、兼容 backend
Keras 可以基於兩個Backend(也就是Keras 基於什么東西來做運算):
一個是 Theano,一個是 Tensorflow(是默認的后端)。
如果我們選擇Theano作為Keras的Backend, 那么Keras就用 Theano 在底層搭建你需要的神經網絡;
同樣,如果選擇 Tensorflow 的話呢,Keras 就使用 Tensorflow 在底層搭建神經網絡。
目前 Tensorflow 支持 Mac 和 Linux 系統,而 Theano 不但支持包括 Mac 和 Linux,還支持 Windows 系統, 所以我們就可以選擇自己可以用的 Backend 就可以。
 
若要修改Backend:
打開  C:\Users\admin(當前用戶名)\.keras ,修改文件夾內的keras.json文件如下:

 查看Keras版本的命令:

 

 


 

【Reference】

1、莫凡Python : https://morvanzhou.github.io/

2、keras+theano安裝教程:https://blog.csdn.net/qq_37816453/article/details/81903339

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM