tensorflow实战学习笔记3:神经网络八股

 

 

 

参考中国慕课mooc北京大学人工智能实战

神经网络八股:六步法

tensorflow实战学习笔记3:神经网络八股_第1张图片

 

 

tensorflow实战学习笔记3:神经网络八股_第2张图片

 

 

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

###描述网络结构(包括拉直层,全连接层(神经元个数,激活函数,哪种正则化)或卷积层()或循环层)
###activation(字符串给出)可选:relu,softmax,sigmoid,tahn
###kernal_regularizer可选:tf.keras.regularizers.l1(),tf.keras.regularizers.l2()
###卷积层:tf.keras.layers.Conv2D(filters=卷积核个数,kernel_size=卷积核尺寸,strides=卷积步长,padding="valid"or"same")

model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(128, activation='relu',kernal_regularizer=哪种正则化),
    tf.keras.layers.Dense(10, activation='softmax')])


###model.compile(optimizer=优化器,loss=损失函数,metrics=["准确率"])
###Optimizer可选:'sgd'ortf.keras.optimizers.SGD(lr=学习率,momentum=动量参数)
                  
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()

tensorflow实战学习笔记3:神经网络八股_第3张图片

 tensorflow实战学习笔记3:神经网络八股_第4张图片

import tensorflow as tf
from tensorflow.keras.layers import Dense, Flatten
from tensorflow.keras import Model

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


class MnistModel(Model):
    def __init__(self):
        super(MnistModel, self).__init__()
        self.flatten = Flatten()
        self.d1 = Dense(128, activation='relu')
        self.d2 = Dense(10, activation='softmax')

    def call(self, x):
        x = self.flatten(x)
        x = self.d1(x)
        y = self.d2(x)
        return y


model = MnistModel()

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()

 

你可能感兴趣的:(tensorflow学习笔记)