如何使用Python程序使用Keras来训练模型?

如何使用Python程序使用Keras来训练模型?

Keras是作为ONEIROS项目(Open-ended Neuro-Electronic Intelligent Robot Operating System)研究的一部分开发出来的,它是一个用Python编写的深度学习API。它是一个高级API,具有生产力接口,有助于解决机器学习问题。它运行在Tensorflow框架的顶部。它被构建为帮助快速进行实验。它提供了必要的抽象和构建块,这些对于开发和封装机器学习解决方案至关重要。

它高度可伸缩并具有跨平台功能。这意味着Keras可以在TPU或GPU集群上运行。Keras模型也可以导出到Web浏览器或移动电话上运行。

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

import tensorflow
from tensorflow import keras

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

我们正在使用Google Colaboratory运行以下代码。 Google Colab或Colaboratory帮助在浏览器上运行Python代码,不需要任何配置,并免费使用GPU(图形处理单元)。Colaboratory是基于Jupyter Notebook构建的。以下是训练模型的代码片段-

更多Python相关文章,请阅读:Python 教程

示例

print("正在绘制模型")
keras.utils.plot_model(model, "my_resnet.png", show_shapes=True)
print("将数据拆分为训练和测试数据")
(x_train,y_train),(x_test,y_test)= keras.datasets.cifar10.load_data()
print("将数据类型转换为浮点类型")
x_train = x_train.astype("float32") / 255.0
x_test = x_test.astype("float32") / 255.0
y_train = keras.utils.to_categorical(y_train,10)
y_test = keras.utils.to_categorical(y_test,10)
print("正在编译模型")
model.compile(
   optimizer = keras.optimizers.RMSprop(1e-3),
   loss = keras.losses.CategoricalCrossentropy(from_logits=True),
   metrics = [“acc”],
)
model.fit(x_train[:2000],y_train[:2000],batch_size = 64,epochs = 2,validation_split = 0.2)

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

输出

正在绘制模型
将数据拆分为训练和测试数据
正在从https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz下载数据
170500096/170498071 [==============================] - 2秒 0us/step
将数据类型转换为浮点类型
正在编译模型
Epoch 1/2
25/25 [==============================] - 9s 332ms/step - loss: 2.3163 - acc: 0.1028 -
val_loss: 2.2962 - val_acc: 0.1175
Epoch 2/2
25/25 [==============================] - 12s 492ms/step - loss: 2.3155 - acc: 0.1175 -
val_loss: 2.2606 - val_acc: 0.1200
<tensorflow.python.keras.callbacks.History at 0x7f48d3ecfb00>

说明

  • 将输入数据拆分为训练集和测试集。

  • 将数据类型转换为“float”类型。

  • 使用“compile”方法编译模型。

  • 使用“fit”方法将模型拟合到训练数据上。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程