1.4 Keras深度学习库概述

Keras是Python中的高级深度神经网络API,基于TensorFlow、CNTK或Theano运行。

这里有一些在使用Keras前需要了解的核心概念。TensorFlow是一个用于数值计算和机器智能的深度学习库。它是开源的,基于数据流图进行数值计算。数学运算由节点和多维数据数组表示,即张量由图的边表示。这个框架的技术性非常强,因此数据分析师使用起来可能很困难。Keras使深度神经网络编码变得简单,它还可以在CPU和GPU上无缝运行。

模型是Keras的核心数据结构。序列模型由一个线性的层堆栈组成,是最简单的模型,它提供了通用函数,如fit()、evaluate()和compile()。

可以通过以下代码行创建一个序列模型:

Keras模型中的层

Keras层就像一个神经网络层,包含全连阶层、最大池化层和激活函数层。可以使用模型的add()函数向模型中添加一个层。例如,一个简单的模型可用如下代码表示:

第一层后,Keras将自动推断出所有层的形状。这意味着你只需要为第一层设置输入维度。前面代码片段的第一层:model.add(Flatten(input_shape=(32,32,3)),设置输入维度为(32,32,3),设置输出维度为(3072=32×32×3),第二层以第一层的输出作为输入,并设置输出维度为(100)。这种将输出持续传递到下一层直到最后一层的链条,即模型的输出。