Sequential
Sequential API的核心思想是简单地按Sequential排列 Keras 层,因此,它被称为Sequential API。大多数 ANN 也有按Sequential排列的层,数据按照给定的Sequential从一层流到另一层,直到数据最终到达输出层。
可以通过简单地调用Sequential() API 来创建 ANN 模型,如下所示 -
添加图层
要添加一个层,只需使用 Keras 层 API 创建一个层,然后通过 add() 函数传递该层,如下所示 -
在这里,我们创建了一个输入层、一个隐藏层和一个输出层。
访问模型
Keras 提供了一些方法来获取模型信息,如层、输入数据和输出数据。它们如下 -
序列化模型
Keras 提供了将模型序列化为对象以及 json 并稍后再次加载它的方法。它们如下 -
>>> json_string = model.to_json()
>>> json_string '{"class_name": "Sequential", "config":
{"name": "sequential_10", "layers":
[{"class_name": "Dense", "config":
{"name": "dense_13", "trainable": true, "batch_input_shape":
[null, 8], "dtype": "float32", "units": 32, "activation": "linear",
"use_bias": true, "kernel_initializer":
{"class_name": "Vari anceScaling", "config":
{"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}},
"bias_initializer": {"class_name": "Zeros", "conf
ig": {}}, "kernel_regularizer": null, "bias_regularizer": null,
"activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}},
{" class_name": "Dense", "config": {"name": "dense_14", "trainable": true,
"dtype": "float32", "units": 64, "activation": "relu", "use_bias": true,
"kern el_initializer": {"class_name": "VarianceScaling", "config":
{"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}},
"bias_initia lizer": {"class_name": "Zeros",
"config": {}}, "kernel_regularizer": null, "bias_regularizer": null,
"activity_regularizer": null, "kernel_constraint" : null, "bias_constraint": null}},
{"class_name": "Dense", "config": {"name": "dense_15", "trainable": true,
"dtype": "float32", "units": 8, "activation": "linear", "use_bias": true,
"kernel_initializer": {"class_name": "VarianceScaling", "config":
{"scale": 1.0, "mode": "fan_avg", "distribution": " uniform", "seed": null}},
"bias_initializer": {"class_name": "Zeros", "config": {}},
"kernel_regularizer": null, "bias_regularizer": null, "activity_r egularizer":
null, "kernel_constraint": null, "bias_constraint":
null}}]}, "keras_version": "2.2.5", "backend": "tensorflow"}'
>>>
总结模型
理解模型是正确使用模型进行训练和预测的非常重要的阶段。Keras 提供了一种简单的方法,summary 以获取有关模型及其层的完整信息。
上一节中创建的模型摘要如下 -
训练和预测模型
模型为训练、评估和预测过程提供功能。它们如下 -
-
compile - 配置模型的学习过程
-
fit - 使用训练数据训练模型
-
evaluate- 使用测试数据评估模型
-
predict - 预测新输入的结果。