第一章 如何使用keras开发深度学习模型
使用keras在python中创建和评估深度学习神经网络非常,但您必须遵循严格的模型生命周期。在本章中,你将了解在keras中创建、训练和评估深度学习神经网路的过程,以及如何使用训练好的模型进行预测。您还将了解如何使用函数式API,在设计模式时提供更大的灵活性。阅读本章后,您将了解:
1. 如何在keras中定义、编译、拟合和评估深度学习模型
2. 如何为回归和分类预测建模问题选择默认值
3. 如何使用函数式API开发标准的多层感知器,卷积和递归神经网络。
现在让我们来开始吧
1.1 keras模型生命周期
以下是keras神经网路模型生命周期中的5个步骤的概述:
- 定义网路
- 编译网络
- 适合网络
- 评估网络
- 作出预测
让我们依次使用易于使用的keras Sequential API来查看每个步骤。
1.1.1 步骤1:定于网路
第一步是定义神经网络。神经网络在keras中被定义为层序列,这些层的容器就是Sequential类。第一步是创建Sequential类的实例。然后创建图层并按照他们的连接顺序添加这些层。
例如,我们可以分两步走:
model = Sequential()
model.add(Dense(2))
我们也可以通过创建一个图层数组并将其传递给Sequential类的构造函数这一步来完成:
layers = [Dense(2)]
model = Sequential(layers)
网络中的第一层必须定义预期的输入数量。指定他的方式可能因网络类型而异。但对于Multilayer Perceptron模型,这由输入dim属性来指定。例如一个小的多层感知器模型,在可见层中有2个输入,隐藏层中有5个神经元,输出层中有1个神经元,可以定义为:
model = Sequential()
model.add(<