七.卷积神经网络

import tensorflow as tf
import matplotlib.pyplot as plt
import pandas
import numpy as np

if __name__ == '__main__':
    (train_images,train_labels),(test_images,test_labels)=tf.keras.datasets.fashion_mnist.load_data()
    train_images = train_images/255
    test_images = test_images/255

    train_images = np.expand_dims(train_images,-1)#-1最后的位置加上一个维度
    test_images = np.expand_dims(test_images,-1)
    print(train_images.shape)#(60000, 28, 28, 1)四维数据  batch, high, width, channel
    
    model = tf.keras.Sequential([
        #                        filter(3,3)                   四维数据变三维
        tf.keras.layers.Conv2D(64,(3,3),input_shape=train_images.shape[1:],activation='relu',padding='same'),
        tf.keras.layers.Conv2D(64,(3,3),activation='relu', padding='same'),
        tf.keras.layers.MaxPool2D(),
        tf.keras.layers.Conv2D(128, (3,3),activation='relu', padding='same'),
        tf.keras.layers.Conv2D(128,(3,3),activation='relu', padding='same'),
        tf.keras.layers.MaxPool2D(),
        tf.keras.layers.Conv2D(256, (3, 3), activation='relu', padding='same'),
        tf.keras.layers.Conv2D(256, (3, 3), activation='relu', padding='same'),
        tf.keras.layers.MaxPool2D(),
        tf.keras.layers.Conv2D(256, (3, 3), activation='relu', padding='same'),
        tf.keras.layers.GlobalAveragePooling2D(),#batch hight width channel四维数据,Dense接收二维数据,扁平化,高度,宽度,通道取平均值
        tf.keras.layers.Dense(10,activation='softmax')
    ])
    model.compile(
        optimizer='adam',
        loss='sparse_categorical_crossentropy',
        metrics=['acc']
    )
    history = model.fit(
        train_images,
        train_labels,
        epochs=30,
        validation_data=(test_images, test_labels)
    )
    print(history)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值