初识Keras

作者: 晓迦 | 来源:发表于2019-03-31 19:46 被阅读2次

1.导入tf.keras

import tensorflow as tf
from tensorflow import keras

2.构建一个简单的模型

2.1Sequential model

在Keras中,通过组装图层来构建模型。最常见的模型类型是:tf.keras.Sequential模型。
构建一个简单的全连接模型:

model = keras.Sequential()
model.add(keras.layers.Dense(64, activation='relu')

2.2 Configure the layers

在tf.keras.layers中有很多层,下面是一些通用的参数:

  • activation:设置层的激活函数。 此参数由内置函数的名称或可调用对象指定。 默认情况下,不应用任何激活。
  • kernel_initializer 和 bias_initializer:设置层创建时,权重和偏差的初始化方法。
  • kernel_regularizer和bias_regularizer:设置层的权重、偏差的正则化方法。比如L1或L2正则。

3.Train and evaluate

3.1 Set up training

构建模型后,通过调用compile方法配置其训练过程:

model.compile(optimizer=tf.train.AdamOptimizer(0.001),
              loss='categorical_crossentropy',
              metrics=['accuracy'])
  • optimizer:训练过程的优化方法。此参数通过 tf.train 模块的优化方法的实例来指定,比如:AdamOptimizer,RMSPropOptimizer,GradientDescentOptimizer。
  • loss:训练过程中的损失函数。
  • metrics:训练过程中,监测的指标。

3.2 Iuput Numpy data

fit 方法训练数据

import numpy as np

data = np,random.random((1000, 32))
labels = np.random.random((1000,10))

val_data = np.random.random((100, 32))
val_labels = np.random.random((100, 10))

model.fit(data, labels, epochs=10, batch_size=32, validation_data=(val_data, val_labels))
# epochs 训练多少轮
# batch_size 当传递Numpy数据时,模型将数据分为较小的批次,并在训练期间迭代这些批次。此整数指定每个批次的大小。
# validation_data 在对模型进行原型设计时,您希望轻松监控其在某些验证数据上的性能。 传递这个参数 - 输入和标签的元组 - 允许模型在每个epoch的末尾以传递数据的推理模式显示损失和度量。

3.3 Evaluate and predict

model.evaluate(x, y, batch_size=32)
model.evaluate(x, batch_size=32)

相关文章

网友评论

    本文标题:初识Keras

    本文链接:https://www.haomeiwen.com/subject/shmubqtx.html