当前位置:主页 > 计算机电子书 > 人工智能 > Keras下载
深度学习:Keras快速开发入门

深度学习:Keras快速开发入门 PDF 清晰扫描版

  • 更新:2019-05-31
  • 大小:76.8 MB
  • 类别:Keras
  • 作者:乐毅
  • 出版:电子工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

深度学习:Keras快速开发入门

深度学习:Keras快速开发入门

内容节选

Keras 是一个用于构建和训练深度学习模型的高阶 API。它可用于快速设计原型、高级研究和生产,具有以下三个主要优势:

  • 方便用户使用
  • Keras 具有针对常见用例做出优化的简单而一致的界面。它可针对用户错误提供切实可行的清晰反馈。
  • 模块化和可组合
  • 将可配置的构造块连接在一起就可以构建 Keras 模型,并且几乎不受限制。
  • 易于扩展

可以编写自定义构造块以表达新的研究创意,并且可以创建新层、损失函数并开发先进的模型。

导入 tf.keras

tf.keras 是 TensorFlow 对 Keras API 规范的实现。这是一个用于构建和训练模型的高阶 API,包含对 TensorFlow 特定功能(例如 Eager Execution、tf.data 管道和 Estimator)的顶级支持。 tf.keras 使 TensorFlow 更易于使用,并且不会牺牲灵活性和性能。
首先,导入 tf.keras 以设置 TensorFlow 程序:

import tensorflow as tf
from tensorflow.keras import layers

print(tf.VERSION)
print(tf.keras.__version__)
1.11.0
2.1.6-tf

tf.keras 可以运行任何与 Keras 兼容的代码,但请注意:

最新版 TensorFlow 中的 tf.keras 版本可能与 PyPI 中的最新 keras 版本不同。请查看 tf.keras.version。
保存模型的权重时,tf.keras 默认采用检查点格式。请传递 save_format='h5' 以使用 HDF5。

构建简单的模型

序列模型

在 Keras 中,您可以通过组合层来构建模型。模型(通常)是由层构成的图。最常见的模型类型是层的堆叠:tf.keras.Sequential 模型。

内容介绍

《深度学习:Keras快速开发入门》首先介绍了深度学习相关的理论和主流的深度学习框架,对比了不同深度学习框架的优缺点,以Keras这一具有高度模块化,极简式的高层深度学习框架为切入点,从Keras的安装、配置和编译等基本环境入手,详细介绍了Keras的模型、网络结构、数据预处理方法、参数配置以及调试技巧和可视化工具。帮助读者快速掌握一款深度学习框架,从而解决工作和学习当中神经网络模型的使用问题。同时,《深度学习:Keras快速开发入门》还介绍了如何用Keras快速构建深度学习原型并着手实战。最后通过Kaggle的知识竞赛实例向读者展示Keras作为深度学习开发工具的强大之处,从而帮助读者迅速获得深度学习开发经验。

《深度学习:Keras快速开发入门》是一本实践性很强的深度学习工具书,适合希望快速学习和使用Keras深度学习框架的工程师、学者和从业者。特别适合立志从事深度学习和AI相关的行业,并且对于希望用Keras开发实际项目的工程技术人员,是非常实用的参考手册和工具书。

目录

  • 第1章 Keras概述 1
  • 1.1 Keras简介 1
  • 1.1.1 Keras 2 1
  • 1.1.2 Keras功能构成 4
  • 1.2 Keras特点 6
  • 1.3 主要深度学习框架 8
  • 1.3.1 Caffe 8
  • 1.3.2 Torch 10
  • 1.3.3 Keras 12
  • 1.3.4 MXNet 12
  • 1.3.5 TensorFlow 13
  • 1.3.5 CNTK 14
  • 1.3.6 Theano 14
  • 第2章 Keras的安装与配置 16
  • 2.1 Windows环境下安装Keras 16
  • 2.1.1 硬件配置 16
  • 2.1.2 Windows版本 18
  • 2.1.3 Microsoft Visual Studio版本 18
  • 2.1.4 Python环境 18
  • 2.1.5 CUDA 18
  • 2.1.6 加速库CuDNN 19
  • 2.1.7 Keras框架的安装 19
  • 2.2 Linux环境下的安装 20
  • 2.2.1 硬件配置 20
  • 2.2.2 Linux版本 21
  • 2.2.3 Ubuntu环境的设置 22
  • 2.2.4 CUDA开发环境 22
  • 2.2.5 加速库cuDNN 23
  • 2.2.6 Keras框架安装 24
  • 第3章 Keras快速上手 25
  • 3.1 基本概念 25
  • 3.2 初识Sequential模型 29
  • 3.3 一个MNIST手写数字实例 30
  • 3.3.1 MNIST数据准备 30
  • 3.3.2 建立模型 31
  • 3.3.3 训练模型 32
  • 第4章 Keras模型的定义 36
  • 4.1 Keras模型 36
  • 4.2 Sequential模型 38
  • 4.2.1 Sequential模型接口 38
  • 4.2.2 Sequential模型的数据输入 48
  • 4.2.3 模型编译 49
  • 4.2.4 模型训练 50
  • 4.3 函数式模型 51
  • 4.3.1 全连接网络 52
  • 4.3.2 函数模型接口 53
  • 4.3.3 多输入和多输出模型 63
  • 4.3.4 共享层模型 67
  • 第5章 Keras网络结构 71
  • 5.1 Keras层对象方法 71
  • 5.2 常用层 72
  • 5.2.1 Dense层 72
  • 5.2.2 Activation层 74
  • 5.2.3 Dropout层 75
  • 5.2.4 Flatten层 75
  • 5.2.5 Reshape层 76
  • 5.2.6 Permute层 77
  • 5.2.7 RepeatVector层 78
  • 5.2.8 Lambda层 79
  • 5.2.9 ActivityRegularizer层 80
  • 5.2.10 Masking层 81
  • 5.3 卷积层 82
  • 5.3.1 Conv1D层 82
  • 5.3.2 Conv2D层 84
  • 5.3.3 SeparableConv2D层 87
  • 5.3.4 Conv2DTranspose层 91
  • 5.3.5 Conv3D层 94
  • 5.3.6 Cropping1D层 97
  • 5.3.6 Cropping2D层 97
  • 5.3.7 Cropping3D层 98
  • 5.3.8 UpSampling1D层 99
  • 5.3.9 UpSampling2D层 100
  • 5.3.10 UpSampling3D层 101
  • 5.3.11 ZeroPadding1D层 102
  • 5.3.12 ZeroPadding2D层 103
  • 5.3.13 ZeroPadding3D层 104
  • 5.4 池化层 105
  • 5.4.1 MaxPooling1D层 105
  • 5.4.2 MaxPooling2D层 106
  • 5.4.3 MaxPooling3D层 108
  • 5.4.4 AveragePooling1D层 109
  • 5.4.5 AveragePooling2D层 110
  • 5.4.6 AveragePooling3D层 111
  • 5.4.7 GlobalMaxPooling1D层 112
  • 5.4.8 GlobalAveragePooling1D层 113
  • 5.4.9 GlobalMaxPooling2D层 113
  • 5.4.10 GlobalAveragePooling2D层 114
  • 5.5 局部连接层 115
  • 5.5.1 LocallyConnected1D层 115
  • 5.5.2 LocallyConnected2D层 117
  • 5.6 循环层 120
  • 5.6.1 Recurrent层 120
  • 5.6.2 SimpleRNN层 124
  • 5.6.3 GRU层 126
  • 5.6.4 LSTM层 127
  • 5.7 嵌入层 129
  • 5.8 融合层 131
  • 5.9 激活层 134
  • 5.9.1 LeakyReLU层 134
  • 5.9.2 PReLU层 134
  • 5.9.3 ELU层 135
  • 5.9.4 ThresholdedReLU层 136
  • 5.10 规范层 137
  • 5.11 噪声层 139
  • 5.11.1 GaussianNoise层 139
  • 5.11.2 GaussianDropout层 139
  • 5.12 包装器Wrapper 140
  • 5.12.1 TimeDistributed层 140
  • 5.12.2 Bidirectional层 141
  • 5.13 自定义层 142
  • 第6章 Keras数据预处理 144
  • 6.1 序列数据预处理 145
  • 6.1.1 序列数据填充 145
  • 6.1.2 提取序列跳字样本 148
  • 6.1.3 生成序列抽样概率表 151
  • 6.2 文本预处理 153
  • 6.2.1 分割句子获得单词序列 153
  • 6.2.2 OneHot序列编码器 154
  • 6.2.3 单词向量化 155
  • 6.3 图像预处理 159
  • 第7章 Keras内置网络配置 167
  • 7.1 模型性能评估模块 168
  • 7.1.1 Keras内置性能评估方法 168
  • 7.1.2 使用Keras内置性能评估 170
  • 7.1.3 自定义性能评估函数 171
  • 7.2 损失函数 171
  • 7.3 优化器函数 174
  • 7.3.1 Keras优化器使用 174
  • 7.3.2 Keras内置优化器 176
  • 7.4 激活函数 180
  • 7.4.1 添加激活函数方法 180
  • 7.4.2 Keras内置激活函数 181
  • 7.4.3 Keras高级激活函数 185
  • 7.5 初始化参数 189
  • 7.5.1 使用初始化方法 189
  • 7.5.2 Keras内置初始化方法 190
  • 7.5.3 自定义Keras初始化方法 196
  • 7.6 正则项 196
  • 7.6.1 使用正则项 197
  • 7.6.2 Keras内置正则项 198
  • 7.6.3 自定义Keras正则项 198
  • 7.7 参数约束项 199
  • 7.7.1 使用参数约束项 199
  • 7.7.2 Keras内置参数约束项 200
  • 第8章 Keras实用技巧和可视化 202
  • 8.1 Keras调试与排错 202
  • 8.1.1 Keras Callback回调函数与调试技巧 202
  • 8.1.2 备份和还原Keras模型 215
  • 8.2 Keras内置Scikit-Learn接口包装器 217
  • 8.3 Keras内置可视化工具 224
  • 第9章 Keras实战 227
  • 9.1 训练一个准确率高于90%的Cifar-10预测模型 227
  • 9.1.1 数据预处理 232
  • 9.1.2 训练 233
  • 9.2 在Keras模型中使用预训练词向量判定文本类别 239
  • 9.2.1 数据下载和实验方法 240
  • 9.2.2 数据预处理 241
  • 9.2.3 训练 245
  • 9.3 用Keras实现DCGAN生成对抗网络还原MNIST样本 247
  • 9.3.1 DCGAN网络拓扑结构 250
  • 9.3.2 训练 254

资源下载

资源下载地址1:https://pan.baidu.com/s/1RdtQ_i7643OT1INMk0MP4w

网友留言

网友NO.35528
厉成业

tf.keras.Model.fit 采用三个重要参数: epochs:以周期为单位进行训练。一个周期是对整个输入数据的一次迭代(以较小的批次完成迭代)。 batch_size:当传递 NumPy 数据时,模型将数据分成较小的批次,并在训练期间迭代这些批次。此整数指定每个批次的大小。请注意,如果样本总数不能被批次大小整除,则最后一个批次可能更小。 validation_data:在对模型进行原型设计时,您需要轻松监控该模型在某些验证数据上达到的效果。传递此参数(输入和标签元组)可以让该模型在每个周期结束时以推理模式显示所传递数据的损失和指标。

网友NO.24535
池诗兰

我们可以使用很多 tf.keras.layers,它们具有一些相同的构造函数参数: activation:设置层的激活函数。此参数由内置函数的名称指定,或指定为可调用对象。默认情况下,系统不会应用任何激活函数。 kernel_initializer 和 bias_initializer:创建层权重(核和偏差)的初始化方案。此参数是一个名称或可调用对象,默认为 "Glorot uniform" 初始化器。 kernel_regularizer 和 bias_regularizer:应用层权重(核和偏差)的正则化方案,例如 L1 或 L2 正则化。默认情况下,系统不会应用正则化函数。