Keras Python深度學習庫簡介

2021-09-10 06:19:33 字數 1966 閱讀 6090

keras是乙個高階神經網路api,用python編寫,能夠在tensorflow,cntk或theano之上執行。 它的開發重點是實現快速開發。 能夠以最小的時間成本從理論到結果,這也進行快速研究驗證的關鍵。

如果您需要深度學習庫,請使用keras:

允許簡單快速的原型設計(通過使用者友好介面,模組化和可擴充套件性)。

支援卷積網路和迴圈網路,以及兩者的組合。

在cpu和gpu上無縫執行。

keras的核心資料結構是一種模型,一種組織層的方式。 最簡單的模型是sequential模型,乙個線性的層疊。 對於更複雜的體系結構,您應該使用keras功能api,它允許構建任意圖層圖。

這是sequential模型:

from keras.models import sequential

model = sequential()

堆疊圖層用.add():

from keras.layers import dense

model.add(dense(units=64, activation='relu', input_dim=100))

model.add(dense(units=10, activation='softmax'))

一旦您的模型完成,請使用.compile()配置其學習過程:

model.compile(loss='categorical_crossentropy',

optimizer='sgd',

metrics=['accuracy'])

如果需要,您可以進一步配置優化程式。 keras的核心原則是使事情變得簡單,同時允許使用者在需要時完全控制(最終控制是源**的易擴充套件性)。

model.compile(loss=keras.losses.categorical_crossentropy,

optimizer=keras.optimizers.sgd(lr=0.01, momentum=0.9, nesterov=true))

您現在可以批量迭代您的訓練資料:

# x_train and y_train are numpy arrays --just like in the scikit-learn api.

model.fit(x_train, y_train, epochs=5, batch_size=32)

或者,您可以手動將批次提供給模型:

model.train_on_batch(x_batch, y_batch)
在驗證批次中評估:

loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
或者生成對新資料的**:

classes = model.predict(x_test, batch_size=128)
構建問答系統,影象分類模型,神經圖靈機或任何其他模型同樣快。深度學習背後的想法很簡單,那麼為什麼他們的開發會很痛苦呢?

keras是專為人類而非機器設計的api。 keras遵循降低認知負荷的最佳實踐。 這使得keras易學易用。

作為keras使用者,您可以更高效地工作,讓您比競爭對手更快地嘗試更多創意 - 這反過來又可以幫助您贏得機器學習競賽。 作為keras使用者,您可以更高效地工作,讓您比競爭對手更快地嘗試更多創意 - 這反過來又可以幫助您贏得機器學習競賽。

這種易用性不會以降低靈活性為代價.

深度學習(一)深度學習學習資料

持續更新 一 學習清單 1 收集了各種最新最經典的文獻,神經網路的資源列表 2 計算機視覺學習清單 3 機器學習學習清單 二 訓練資料 人臉資料 1 香港中文大學訓練資料集 此資料庫包含了20w張人臉,每張標註了5個特徵點 以及幾十種屬性 是否微笑 膚色 髮色 性別等屬性 2 68個人臉特徵點 3 ...

深度學習系列 深度學習簡介

機器學習 使用計算機系統利用經驗改善效能,是人工智慧領域的分支,也是實現人工智慧的一種手段。表徵學習關注如何自動找出表示資料的合適方式,以便更好地將輸入變換為正確的輸出。深度學習 具有多級表示的表徵方法,在每一級 原始資料開始 通過簡單的函式將該級的表示變換為更高階的表示。可以將深度學習看作多個簡單...

深度學習深度學習(一)開篇

深度學習 深度學習 記得9年前寫的一篇部落格,十年的程式設計師,一晃眼,差不多10年又快到了。這一輪的人工智慧,深度學習,他是我見到的乙個非常特殊的程式設計方式 用資料程式設計。是的,他絕對不像其他的程式語言,是完全乙個嶄新的天地,掌握她,絕對會帶來驚喜 你會發現以前感覺超級難的東西會忽然 哇,這個...