tensorflow2.0初体验(手写数字识别)

import tensorflow as tf
try:
    import tensorflow.python.keras as keras
except:
    import tensorflow.keras as keras
from tensorflow.python.keras import layers

mnist = 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  # 除以 255 是为了归一化。

# Sequential 用于建立序列模型
# Flatten 层用于展开张量,input_shape 定义输入形状为 28x28 的图像,展开后为 28*28 的张量。
# Dense 层为全连接层,输出有 128 个神经元,激活函数使用 relu。
# Dropout 层使用 0.2 的失活率。
# 再接一个全连接层,激活函数使用 softmax,得到对各个类别预测的概率。
model = keras.Sequential()
model.add(layers.Flatten(input_shape=(28,28)))
model.add(layers.Dense(128,activation="relu"))
model.add(layers.Dropout(0.2))
model.add(layers.Dense(10,activation="softmax"))

# 优化器选择 Adam 优化器。
# 损失函数使用 sparse_categorical_crossentropy,
# 还有一个损失函数是 categorical_crossentropy,两者的区别在于输入的真实标签的形式,
# sparse_categorical 输入的是整形的标签,例如 [1, 2, 3, 4],categorical 输入的是 one-hot 编码的标签。
model.compile(optimizer="adam",
              loss="sparse_categorical_crossentropy",
              metrics=['accuracy'])

# fit 用于训练模型,对训练数据遍历一次为一个 epoch,这里遍历 5 次。
# evaluate 用于评估模型,返回的数值分别是损失和指标。
model.fit(x_train,y_train,epochs=5)
model.evaluate(x_test,y_test)

输出:

   32/10000 [..............................] - ETA: 15s - loss: 0.0443 - accuracy: 0.9688
 3360/10000 [=========>....................] - ETA: 0s - loss: 0.1070 - accuracy: 0.9676 
 6816/10000 [===================>..........] - ETA: 0s - loss: 0.0945 - accuracy: 0.9712
10000/10000 [==============================] - 0s 20us/sample - loss: 0.0772 - accuracy: 0.9771

注:
tensorflow2.0, 我看有的地方用import tensorflow.keras as keras,有的地方用import tensorflow.python.keras as keras。。

参考博客:https://blog.csdn.net/qq_20084101/article/details/88285262,感谢!

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值