TensorFlow-2.x-06-MLP的简洁实现

        上一章用TF-2.x实现了MLP的从0开始。本章我使用TF-2.x中的高阶API来实现MLP(多层感知机),很简单,只需要3步即可。

P.S:本章所使用的数据集依旧是fashionmnist数据集。

1、数据集读取

# 1、读取数据集
(x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0 #图像归一化

2、定义模型

def model():
    net=tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=[28,28]),
    tf.keras.layers.Dense(128,"relu"),
    tf.keras.layers.Dense(10,"softmax"),
    ])
    return net

3、训练

net=model()
#网络配置
net.compile(optimizer=tf.keras.optimizers.SGD(0.3),loss=tf.losses.sparse_categorical_crossentropy,
            metrics=["accuracy"])
net.fit(x_train,y_train,128,10,validation_data=(x_test,y_test))

训练结果:
在这里插入图片描述
下面附上所有源码:

import tensorflow as tf
from tensorflow.keras.datasets import fashion_mnist

# 1、读取数据集
(x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

# 2、定义模型
def model():
    net=tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=[28,28]),
    tf.keras.layers.Dense(128,"relu"),
    tf.keras.layers.Dense(10,"softmax"),
    ])
    return net
#3、训练
net=model()
#网络配置
net.compile(optimizer=tf.keras.optimizers.SGD(0.3),loss=tf.losses.sparse_categorical_crossentropy,
            metrics=["accuracy"])
net.fit(x_train,y_train,128,10,validation_data=(x_test,y_test))
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章