回覆列表
-
1 # 論智
-
2 # fans
深度學習現在是比較熱門,因為Keras是為人類而不是天頂星人設計的API。使用者的使用體驗始終是我們考慮的首要和中心內容。
Keras是一個高層神經網路API,Keras由純Python編寫而成並基Tensorflow、Theano以及CNTK後端。Keras 為支援快速實驗而生,能夠把你的idea迅速轉換為結果。
Keras的核心資料結構是“模型”,模型是一種組織網路層的方式。Keras中主要的模型是Sequential模型,Sequential是一系列網路層按順序構成的棧。你也可以檢視函式式模型來學習建立更復雜的模型,搭建一個問答系統、影象分類模型,或神經圖靈機、word2vec詞嵌入器就是這麼快。支撐深度學習的基本想法本就是簡單的。
Keras的口號是:
儘可能縮短從想法到結果的延遲是做好研究的關鍵。
所以,推薦用Keras來學習深度學習(像不像繞口令)。對於學習而言,及時反饋非常非常重要。所以程式語言的學習經常推薦用REPL(讀取-求值-輸出 迴圈,Read-Eval-Print Loop)。深度學習同理。
得益於Keras精心設計的API和優良的文件,用Keras搭神經網路,是難以想象的方便。不消一刻鐘,參考Keras的文件,就可以搭一個神經網路:
# 匯入模組
from keras.models import Sequential
from keras.layers import Dense
import numpy as np
model = Sequential()
# 加上一些密集層
model.add(Dense(units=64, activation=’relu’, input_dim=1424))
model.add(Dense(units=2696))
# 指定損失函式為MSE,使用Adam最佳化
model.compile(loss="mse", optimizer="adam")
# 擬合數據
model.fit(predictors[0:80,], estimator[0:80,], validation_data=(predictors[81:,],estimator[81:,]), epochs=80, batch_size=32)
# 儲存結果
np.savetxt("keras_fit.csv", model.predict(data), delimiter=",")
看,我沒有騙你,就是這麼簡單。