Keras: 基于 Python 的深度学习库

你恰好发现了 Keras。

Keras 是一个用 Python 编写的高级神经网络 API,它能够以 TensorFlow, CNTK, 或者 Theano 作为后端运行。Keras 的开发重点是支持快速的实验。能够以最小的时延把你的想法转换为实验结果,是做好研究的关键。

如果你在以下情况下需要深度学习库,请使用 Keras:

允许简单而快速的原型设计(由于用户友好,高度模块化,可扩展性)。

同时支持卷积神经网络和循环神经网络,以及两者的组合。

在 CPU 和 GPU 上无缝运行。

查看文档,请访问 Keras.io。

Keras 兼容的 Python 版本: Python 2.7-3.6。

指导原则

用户友好。 Keras 是为人类而不是为机器设计的 API。它把用户体验放在首要和中心位置。Keras 遵循减少认知困难的最佳实践:它提供一致且简单的 API,将常见用例所需的用户操作数量降至最低,并且在用户错误时提供清晰和可操作的反馈。

模块化。 模型被理解为由独立的、完全可配置的模块构成的序列或图。这些模块可以以尽可能少的限制组装在一起。特别是神经网络层、损失函数、优化器、初始化方法、激活函数、正则化方法,它们都是可以结合起来构建新模型的模块。

易扩展性。 新的模块是很容易添加的(作为新的类和函数),现有的模块已经提供了充足的示例。由于能够轻松地创建可以提高表现力的新模块,Keras 更加适合高级研究。

基于 Python 实现。 Keras 没有特定格式的单独配置文件。模型定义在 Python 代码中,这些代码紧凑,易于调试,并且易于扩展。

快速开始:30 秒上手 Keras

Keras 的核心数据结构是 model,一种组织网络层的方式。最简单的模型是 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 和 y_train 是 Numpy 数组 -- 就像在 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 更深入的教程,请查看:

在代码仓库的 examples 目录中,你会找到更多高级模型:基于记忆网络的问答系统、基于栈式 LSTM 的文本生成等等。

安装指引

在安装 Keras 之前,请安装以下后端引擎之一:TensorFlow,Theano,或者 CNTK。我们推荐 TensorFlow 后端。

你也可以考虑安装以下可选依赖:

cuDNN (如果你计划在 GPU 上运行 Keras,建议安装)。

HDF5 和 h5py (如果你需要将 Keras 模型保存到磁盘,则需要这些)。

然后你就可以安装 Keras 本身了。有两种方法安装 Keras:

使用 PyPI 安装 Keras (推荐):

sudo pip install keras

如果你使用 virtualenv 虚拟环境, 你可以避免使用 sudo:

pip install keras

或者:使用 GitHub 源码安装 Keras:

首先,使用 git 来克隆 Keras:

git clone https://github.com/keras-team/keras.git

然后,cd 到 Keras 目录并且运行安装命令:

cd keras

sudo python setup.py install

配置你的 Keras 后端

默认情况下,Keras 将使用 TensorFlow 作为其张量操作库。请跟随这些指引来配置其他 Keras 后端。

技术支持

你可以提出问题并参与开发讨论:

或者加入 Keras 深度学习交流群,协助文档的翻译工作,群号为 951623081。

你也可以在 GitHub issues 中发布漏洞报告和新功能请求(仅限于此)。注意请先阅读规范文档。

为什么取名为 Keras?

Keras (κ?ρα?) 在希腊语中意为 号角 。它来自古希腊和拉丁文学中的一个文学形象,首先出现于 《奥德赛》 中, 梦神 (Oneiroi, singular Oneiros) 从这两类人中分离出来:那些用虚幻的景象欺骗人类,通过象牙之门抵达地球之人,以及那些宣告未来即将到来,通过号角之门抵达之人。 它类似于文字寓意,κ?ρα? (号角) / κρα?νω (履行),以及 ?λ?φα? (象牙) / ?λεφα?ρομαι (欺骗)。

Keras 最初是作为 ONEIROS 项目(开放式神经电子智能机器人操作系统)研究工作的一部分而开发的。

"Oneiroi 超出了我们的理解 - 谁能确定它们讲述了什么故事?并不是所有人都能找到。那里有两扇门,就是通往短暂的 Oneiroi 的通道;一个是用号角制造的,一个是用象牙制造的。穿过尖锐的象牙的 Oneiroi 是诡计多端的,他们带有一些不会实现的信息; 那些穿过抛光的喇叭出来的人背后具有真理,对于看到他们的人来说是完成的。" Homer, Odyssey 19. 562 ff (Shewring translation).

python官方文档中文版-主页 - Keras 中文文档相关推荐

  1. keras中文文档_【DL项目实战02】图像识别分类——Keras框架+卷积神经网络CNN(使用VGGNet)

    版权声明:小博主水平有限,希望大家多多指导. 目录: [使用传统DNN] BG大龍:[DL项目实战02]图像分类--Keras框架+使用传统神经网络DNN​zhuanlan.zhihu.com [使用 ...

  2. keras中文文档学习笔记—快速上手keras

    keras的核心数据结构是"model",其中最主要的是Sequential模型: Sequential模型调用 from keras.model import Sequentia ...

  3. python pptx教学_基于python-pptx库中文文档及使用详解

    个人使用样例及部分翻译自官方文档,并详细介绍chart的使用 一:基础应用 1.创建pptx文档类并插入一页幻灯片 from pptx import Presentation prs = Presen ...

  4. Python用不好?终于有官方中文文档啦

    点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...

  5. 最好用的python音频库之一:pydub的中文文档(含API)

    pydub 中文文档(含API) 0x00 写在最前 Pydub lets you do stuff to audio in a way that isn't stupid. pydub 提供了简洁的 ...

  6. videojs中文文档详解_MMDetection中文文档—详解

    简介 商汤科技(2018 COCO 目标检测挑战赛冠军)和香港中文大学最近开源了一个基于Pytorch实现的深度学习目标检测工具箱mmdetection,支持Faster-RCNN,Mask-RCNN ...

  7. python中文文档-Python语言、主要工具与类库中文文档

    Python是Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python 提供了非常完善的基础代码库,覆盖了网络.文件.GUI.数据库.文本等大量 ...

  8. Keras中文文档:图像预处理ImageDataGenerator 类详细学习记录

    写在前面的话 受教于学长,Keras的探究还需进行 要把Keras用得熟练并非那么容易 1.ImageDataGenerator 类 参考文献:https://keras.io/zh/preproce ...

  9. keras中文文档_Keras分词器Tokenizer

    Tokenizer 是一个用于向量化文本,或将文本转换为序列的类.是用来文本预处理的第一步:分词. 简单来说,计算机在处理语言文字时,是无法理解文字的含义,通常会把一个词(中文单个字或者词组认为是一个 ...

  10. dropout层加在哪里_常用层 - Keras中文文档

    常用层 常用层对应于core模块,core内部定义了一系列常用的网络层,包括全连接.激活层等 Dense层 keras.layers.core.Dense(units, activation=None ...

最新文章

  1. layUI 学习记录
  2. 动态表单构建器——建造者模式
  3. 用ABAP代码读取S/4HANA生产订单工序明细
  4. [BZOJ 5093]图的价值
  5. 10G 职场晋升/IT干货/生活技能/理财秘籍 【全套】学习资料免费送!
  6. 问题 1066: 2004年秋浙江省计算机等级考试二级C 编程题(2)
  7. socket 编程 基于 select 实现的回射客户端/服务程序
  8. virtualbox 启动时报Kernel driver not installed (rc=-1908) 的错误
  9. 一个 react+redux 工程实例
  10. 计算机主机内有哪些部件常用的,智慧职教: 计算机系统由什么组成?计算机主机内有哪些部件?常用的计算机外设有哪些...
  11. 《redis设计与实现(第二版)》
  12. android高通WiFi,高通QCA9377 WiFi蓝牙模块芯片介绍,
  13. 用python 打开qq自动输入账号密码登陆 (python3 案例1)
  14. 用python模拟clark变换和park变换
  15. 帮嫦娥五号登月的AI还能用来玩游戏,20行Python代码带你领略强化学习的风采
  16. 关于神经网络中隐藏层和神经元的深入理解
  17. 数学建模--正态分布均值的假设检验
  18. 贾立平太讨厌_《最强大脑》水哥微博致歉三遍对不起 网友:节目太虚假,真的追不下去了...
  19. 断舍离------活成自己喜欢的样子
  20. 腾讯云主机学生版 修改主机名

热门文章

  1. openmp 并行 速度更慢_OpenMP和C并行for循环:为什么我的代码在使用OpenMP时会变慢?...
  2. 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 8000401a
  3. IPsec:strongswan与vpp实现ipsec
  4. 三菱PLC史上最全视频教程!(视频+数据+例程)
  5. 对集成电路的认识以及集成电路的重要性
  6. 基于Springboot+Mybatisplus的学校学院门户学生就业指导管理系统
  7. FINALDATA 使用教程
  8. DolphinScheduler大数据调度系统
  9. 仿链家地图找房_iOS地图找房(类似链家、安居客等地图找房)
  10. 漏洞C:/Windows/Fonts/csrss.exe文件找不到简单查找方法