python官方文档中文版-主页 - Keras 中文文档
Keras: 基于 Python 的深度學(xué)習(xí)庫
你恰好發(fā)現(xiàn)了 Keras。
Keras 是一個(gè)用 Python 編寫的高級神經(jīng)網(wǎng)絡(luò) API,它能夠以 TensorFlow, CNTK, 或者 Theano 作為后端運(yùn)行。Keras 的開發(fā)重點(diǎn)是支持快速的實(shí)驗(yàn)。能夠以最小的時(shí)延把你的想法轉(zhuǎn)換為實(shí)驗(yàn)結(jié)果,是做好研究的關(guān)鍵。
如果你在以下情況下需要深度學(xué)習(xí)庫,請使用 Keras:
允許簡單而快速的原型設(shè)計(jì)(由于用戶友好,高度模塊化,可擴(kuò)展性)。
同時(shí)支持卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò),以及兩者的組合。
在 CPU 和 GPU 上無縫運(yùn)行。
查看文檔,請?jiān)L問 Keras.io。
Keras 兼容的 Python 版本: Python 2.7-3.6。
指導(dǎo)原則
用戶友好。 Keras 是為人類而不是為機(jī)器設(shè)計(jì)的 API。它把用戶體驗(yàn)放在首要和中心位置。Keras 遵循減少認(rèn)知困難的最佳實(shí)踐:它提供一致且簡單的 API,將常見用例所需的用戶操作數(shù)量降至最低,并且在用戶錯(cuò)誤時(shí)提供清晰和可操作的反饋。
模塊化。 模型被理解為由獨(dú)立的、完全可配置的模塊構(gòu)成的序列或圖。這些模塊可以以盡可能少的限制組裝在一起。特別是神經(jīng)網(wǎng)絡(luò)層、損失函數(shù)、優(yōu)化器、初始化方法、激活函數(shù)、正則化方法,它們都是可以結(jié)合起來構(gòu)建新模型的模塊。
易擴(kuò)展性。 新的模塊是很容易添加的(作為新的類和函數(shù)),現(xiàn)有的模塊已經(jīng)提供了充足的示例。由于能夠輕松地創(chuàng)建可以提高表現(xiàn)力的新模塊,Keras 更加適合高級研究。
基于 Python 實(shí)現(xiàn)。 Keras 沒有特定格式的單獨(dú)配置文件。模型定義在 Python 代碼中,這些代碼緊湊,易于調(diào)試,并且易于擴(kuò)展。
快速開始:30 秒上手 Keras
Keras 的核心數(shù)據(jù)結(jié)構(gòu)是 model,一種組織網(wǎng)絡(luò)層的方式。最簡單的模型是 Sequential 順序模型,它由多個(gè)網(wǎng)絡(luò)層線性堆疊。對于更復(fù)雜的結(jié)構(gòu),你應(yīng)該使用 Keras 函數(shù)式 API,它允許構(gòu)建任意的神經(jīng)網(wǎng)絡(luò)圖。
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'))
在完成了模型的構(gòu)建后, 可以使用 .compile() 來配置學(xué)習(xí)過程:
model.compile(loss='categorical_crossentropy',
optimizer='sgd',
metrics=['accuracy'])
如果需要,你還可以進(jìn)一步地配置你的優(yōu)化器。Keras 的核心原則是使事情變得相當(dāng)簡單,同時(shí)又允許用戶在需要的時(shí)候能夠進(jìn)行完全的控制(終極的控制是源代碼的易擴(kuò)展性)。
model.compile(loss=keras.losses.categorical_crossentropy,
optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))
現(xiàn)在,你可以批量地在訓(xùn)練數(shù)據(jù)上進(jìn)行迭代了:
# x_train 和 y_train 是 Numpy 數(shù)組 -- 就像在 Scikit-Learn API 中一樣。
model.fit(x_train, y_train, epochs=5, batch_size=32)
或者,你可以手動(dòng)地將批次的數(shù)據(jù)提供給模型:
model.train_on_batch(x_batch, y_batch)
只需一行代碼就能評估模型性能:
loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
或者對新的數(shù)據(jù)生成預(yù)測:
classes = model.predict(x_test, batch_size=128)
構(gòu)建一個(gè)問答系統(tǒng),一個(gè)圖像分類模型,一個(gè)神經(jīng)圖靈機(jī),或者其他的任何模型,就是這么的快。深度學(xué)習(xí)背后的思想很簡單,那么它們的實(shí)現(xiàn)又何必要那么痛苦呢?
有關(guān) Keras 更深入的教程,請查看:
在代碼倉庫的 examples 目錄中,你會(huì)找到更多高級模型:基于記憶網(wǎng)絡(luò)的問答系統(tǒng)、基于棧式 LSTM 的文本生成等等。
安裝指引
在安裝 Keras 之前,請安裝以下后端引擎之一:TensorFlow,Theano,或者 CNTK。我們推薦 TensorFlow 后端。
你也可以考慮安裝以下可選依賴:
cuDNN (如果你計(jì)劃在 GPU 上運(yùn)行 Keras,建議安裝)。
HDF5 和 h5py (如果你需要將 Keras 模型保存到磁盤,則需要這些)。
然后你就可以安裝 Keras 本身了。有兩種方法安裝 Keras:
使用 PyPI 安裝 Keras (推薦):
sudo pip install keras
如果你使用 virtualenv 虛擬環(huán)境, 你可以避免使用 sudo:
pip install keras
或者:使用 GitHub 源碼安裝 Keras:
首先,使用 git 來克隆 Keras:
git clone https://github.com/keras-team/keras.git
然后,cd 到 Keras 目錄并且運(yùn)行安裝命令:
cd keras
sudo python setup.py install
配置你的 Keras 后端
默認(rèn)情況下,Keras 將使用 TensorFlow 作為其張量操作庫。請跟隨這些指引來配置其他 Keras 后端。
技術(shù)支持
你可以提出問題并參與開發(fā)討論:
或者加入 Keras 深度學(xué)習(xí)交流群,協(xié)助文檔的翻譯工作,群號為 951623081。
你也可以在 GitHub issues 中發(fā)布漏洞報(bào)告和新功能請求(僅限于此)。注意請先閱讀規(guī)范文檔。
為什么取名為 Keras?
Keras (κ?ρα?) 在希臘語中意為 號角 。它來自古希臘和拉丁文學(xué)中的一個(gè)文學(xué)形象,首先出現(xiàn)于 《奧德賽》 中, 夢神 (Oneiroi, singular Oneiros) 從這兩類人中分離出來:那些用虛幻的景象欺騙人類,通過象牙之門抵達(dá)地球之人,以及那些宣告未來即將到來,通過號角之門抵達(dá)之人。 它類似于文字寓意,κ?ρα? (號角) / κρα?νω (履行),以及 ?λ?φα? (象牙) / ?λεφα?ρομαι (欺騙)。
Keras 最初是作為 ONEIROS 項(xiàng)目(開放式神經(jīng)電子智能機(jī)器人操作系統(tǒng))研究工作的一部分而開發(fā)的。
"Oneiroi 超出了我們的理解 - 誰能確定它們講述了什么故事?并不是所有人都能找到。那里有兩扇門,就是通往短暫的 Oneiroi 的通道;一個(gè)是用號角制造的,一個(gè)是用象牙制造的。穿過尖銳的象牙的 Oneiroi 是詭計(jì)多端的,他們帶有一些不會(huì)實(shí)現(xiàn)的信息; 那些穿過拋光的喇叭出來的人背后具有真理,對于看到他們的人來說是完成的。" Homer, Odyssey 19. 562 ff (Shewring translation).
總結(jié)
以上是生活随笔為你收集整理的python官方文档中文版-主页 - Keras 中文文档的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux进程全解5——父子进程对文件的
- 下一篇: python流量分析_python 监控