如何使用 Keras 在 Python 中实现集成?

keraspythonserver side programmingprogramming

Tensorflow 是 Google 提供的机器学习框架。它是一个与 Python 结合使用的开源框架,用于实现算法、深度学习应用程序等。它用于研究和生产目的。

可以使用以下代码行 − 在 Windows 上安装 ‘tensorflow’ 包

pip install tensorflow

Keras 是作为 ONEIROS(开放式神经电子智能机器人操作系统)项目研究的一部分开发的。Keras 是一个用 Python 编写的深度学习 API。它是一个高级 API,具有高效的接口,可帮助解决机器学习问题。它在 Tensorflow 框架之上运行。它旨在帮助快速进行实验。它提供了开发和封装机器学习解决方案所必需的抽象和构建块。

Keras 已存在于 Tensorflow 包中。可以使用下面的代码行访问它。

import tensorflow
from tensorflow import keras

与使用顺序 API 创建的模型相比,Keras 函数式 API 有助于创建更灵活的模型。函数式 API 可以处理具有非线性拓扑、可以共享层并处理多个输入和输出的模型。深度学习模型通常是包含多个层的有向无环图 (DAG)。函数式 API 有助于构建层图。

我们使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 有助于在浏览器上运行 Python 代码,并且不需要任何配置,并且可以免费访问 GPU(图形处理单元)。Colaboratory 建立在 Jupyter Notebook 之上。以下是实现 Ensemble 模型 − 的代码片段

示例

def get_model():
   inputs = keras.Input(shape=(128,))
   outputs = layer.Dense(1)(inputs)
   return keras.Model(inputs, output)
print("调用 'get_model' 方法")
model_1 = get_model()
model_2 = get_model()
model_3 = get_model()

my_inputs = keras.Input(shape=(128,))
y1 = model_1(my_inputs)
y2 = model_2(my_inputs)
y3 = model_3(my_inputs)
print("模型中各层的平均值")
my_outputs = layer.average([y1, y2, y3])
print("正在创建集成模型")
ensemble_model = keras.Model(inputs=my_inputs, output=my_outputs)

代码来源 − https://www.tensorflow.org/guide/keras/ functional

输出

调用 'get_model' 方法
模型中各层的平均值
正在创建集成模型

解释

  • 模型可以嵌套,这意味着它可以包含子模型。

  • 子模型用于集成。

  • 这意味着多个模型组合成一个模型,并对每个模型的预测取平均值。


相关文章