tensorflow08——Sequential模型处理mnist数据集

文章介绍了MNIST手写数字数据集,该数据集包含60,000个训练样本和10,000个测试样本。通过TensorFlow构建了一个神经网络模型,经过训练后,模型在训练集和测试集上分别达到了高精度的识别率。模型包括Flatten层、Dense层以及使用ReLU和softmax激活函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MNIST是一个手写体数字的图片数据集,该数据集来由美国国家标准与技术研究所(National Institute of Standards and Technology (NIST))发起整理,一共统计了来自250个不同的人手写数字图片,其中50%是高中生,50%来自人口普查局的工作人员。该数据集的收集目的是希望通过算法,实现对手写数字的识别。

训练集一共包含了 60,000 张图像和标签
测试集一共包含了 10,000 张图像和标签

import tensorflow as tf
# 手写数字识别

mnist = tf.keras.datasets.mnist

# 从数据集中把训练集和测试集提取出来 x数据 y对应标签
# (这样写是因为在这个数据集里,训练就和测试集本来就已经划分好了)
# 其他的数据集并不是这样
(x_train, y_train), (x_test, y_test) = mnist.load_data()

# 把训练集和测试集的数据进行归一化
x_train, x_test = x_train/255.0, x_test/255.0

# 定义模型
model = tf.keras.models.Sequential([

    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax'),
])

# 模型编译

```python

```python
model.compile(
    optimizer='adam',
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),
    metrics=['sparse_categorical_accuracy'])

model.fit(x_train, y_train, batch_size=32, epochs=5, validation_data=(x_test, y_test), validation_freq=1)
model.summary()

输出

Train on 60000 samples, validate on 10000 samples
Epoch 1/5
60000/60000 [============================== ] - 6s 103us/sample - loss: 0.2575 - sparse_categorical_accuracy: 0.9262 - val_loss: 0.1350 - val_sparse_categorical_accuracy: 0.9588
Epoch 2/5
60000/60000 [============================== ] - 6s 96us/sample - loss: 0.1146 - sparse_categorical_accuracy: 0.9661 - val_loss: 0.1008 - val_sparse_categorical_accuracy: 0.9700
Epoch 3/5
60000/60000 [============================== ] - 6s 95us/sample - loss: 0.0784 - sparse_categorical_accuracy: 0.9761 - val_loss: 0.0846 - val_sparse_categorical_accuracy: 0.9750
Epoch 4/5
60000/60000 [============================== ] - 6s 100us/sample - loss: 0.0587 - sparse_categorical_accuracy: 0.9822 - val_loss: 0.0798 - val_sparse_categorical_accuracy: 0.9758
Epoch 5/5
60000/60000 [============================== ] - 6s 98us/sample - loss: 0.0458 - sparse_categorical_accuracy: 0.9858 - val_loss: 0.0807 - val_sparse_categorical_accuracy: 0.9752
Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   

=================================================================
flatten (Flatten)             multiple                  0         
_________________________________________________________________
dense (Dense)                multiple                  100480    
_________________________________________________________________
dense_1 (Dense)              multiple                  1290      

================================================
Total params: 101,770
Trainable params: 101,770
Non-trainable params: 0
_________________________________________________________________
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fortunate.F

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值