干货分享|TensorFlow构建神经网络

MNIST数据集前面章节已经多次遇到过,这里直接引用,并使用TensorFlow构建神经网络模型进行训练。下面举例说明如何构建简单的神经网络并训练。

【例15-33】 TensorFlow构建神经网络训练MNIST数据集。

输入如下代码:

复制代码
# 构建简单模型,训练识别手写体数据集
import tensorflow as tf
# 导入数据
mnist = tf.keras.datasets.mnist
# 将样本从整数转换为浮点数
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
# 将模型的各层堆叠起来,以搭建 tf.keras.Sequential 模型。为训练选择优化器和损失函数
model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',
                 metrics=['accuracy'])
# 训练并验证模型
model.fit(x_train, y_train, epochs=5)
model.evaluate(x_test,  y_test, verbose=2)

运行结果如下:

复制代码
Epoch 1/5
1875/1875 [==============================] - 9s 3ms/step - loss: 0.2945 - accuracy: 0.9141
Epoch 2/5
1875/1875 [==============================] - 5s 3ms/step - loss: 0.1429 - accuracy: 0.9574
Epoch 3/5
1875/1875 [==============================] - 5s 3ms/step - loss: 0.1075 - accuracy: 0.9687
Epoch 4/5
1875/1875 [==============================] - 7s 4ms/step - loss: 0.0883 - accuracy: 0.9726
Epoch 5/5
1875/1875 [==============================] - 6s 3ms/step - loss: 0.0724 - accuracy: 0.9767
313/313 - 1s - loss: 0.0772 - accuracy: 0.9771 - 827ms/epoch - 3ms/step

观察运行结果,该网络训练的准确率已经达到了97.67%。该网络虽然简单,但是注释完整,包含神经网络的各个部分,各种复杂的网络都是在简单网络的基础上发展而来的,希望读者认真理解,多加训练。

本文节选自《细说机器学习:从理论到实践》,内容发布获得作者和出版社授权。

细说机器学习 从理论到实践------京东·

相关推荐
之歆5 小时前
Spring AI入门到实战到原理源码-MCP
java·人工智能·spring
知乎的哥廷根数学学派5 小时前
面向可信机械故障诊断的自适应置信度惩罚深度校准算法(Pytorch)
人工智能·pytorch·python·深度学习·算法·机器学习·矩阵
且去填词5 小时前
DeepSeek :基于 Schema 推理与自愈机制的智能 ETL
数据仓库·人工智能·python·语言模型·etl·schema·deepseek
待续3015 小时前
订阅了 Qoder 之后,我想通过这篇文章分享一些个人使用心得和感受。
人工智能
weixin_397578025 小时前
人工智能发展历史
人工智能
强盛小灵通专卖员6 小时前
基于深度学习的山体滑坡检测科研辅导:从论文实验到系统落地的完整思路
人工智能·深度学习·sci·小论文·山体滑坡
OidEncoder6 小时前
从 “粗放清扫” 到 “毫米级作业”,编码器重塑环卫机器人新能力
人工智能·自动化·智慧城市
Hcoco_me6 小时前
大模型面试题61:Flash Attention中online softmax(在线softmax)的实现方式
人工智能·深度学习·自然语言处理·transformer·vllm
阿部多瑞 ABU6 小时前
`chenmo` —— 可编程元叙事引擎 V2.3+
linux·人工智能·python·ai写作
极海拾贝7 小时前
GeoScene解决方案中心正式上线!
大数据·人工智能·深度学习·arcgis·信息可视化·语言模型·解决方案