生成简易的神经网络训练测试代码
时间: 2023-11-14 07:21:36 浏览: 69
好的,下面是一个简单的神经网络训练和测试代码的示例:
```python
import tensorflow as tf
from tensorflow.keras import layers
# 定义神经网络模型
model = tf.keras.Sequential([
layers.Dense(64, activation='relu', input_shape=(784,)),
layers.Dense(64, activation='relu'),
layers.Dense(10, activation='softmax')
])
# 编译模型
model.compile(optimizer=tf.keras.optimizers.Adam(0.001),
loss='categorical_crossentropy',
metrics=['accuracy'])
# 加载数据集
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
# 数据预处理
x_train = x_train.reshape(60000, 784).astype('float32') / 255
x_test = x_test.reshape(10000, 784).astype('float32') / 255
y_train = tf.keras.utils.to_categorical(y_train, 10)
y_test = tf.keras.utils.to_categorical(y_test, 10)
# 训练模型
model.fit(x_train, y_train, epochs=5, batch_size=32, validation_data=(x_test, y_test))
# 评估模型
test_loss, test_acc = model.evaluate(x_test, y_test)
print('Test accuracy:', test_acc)
```
这个代码使用的是 TensorFlow 2.x 版本的 API,首先定义了一个包含两个隐藏层和一个输出层的神经网络模型。然后使用 `compile` 方法编译模型,指定了优化器、损失函数和评价指标。接着加载了 MNIST 数据集,对数据进行预处理。然后使用 `fit` 方法训练模型,指定了训练数据、训练轮数、批次大小和验证数据。最后使用 `evaluate` 方法评估模型,输出测试准确率。