CNN卷积神经网络:CBAPD
C: 卷积层
B:BN层(标准化)
A:激活层
P:池化层
D:随机失活层
最基本的网络模型
import tensorflow as tf
from tensorflow.keras.datasets import cifar10
import numpy as np
from tensorflow.keras.models import Model
from tensorflow.keras.layers import Conv2D,BatchNormalization,Activation,MaxPool2D,Dropout,Dense,Flatten
import os
import matplotlib.pyplot as plt
# 构建模型
class BaseModel(Model):
def __init__(self):
super(BaseModel, self).__init__()
self.c1 = Conv2D(filters=6,kernel_size=(5,5),padding='same')
self.b1 = BatchNormalization()
self.a1 = Activation('relu')
self.p1 = MaxPool2D(pool_size=(2,2),strides=2,padding='same')
self.d1 = Dropout(0.2)
self.flatten = Flatten()
self.f1 = Dense(units=128,activation='relu')
self.d2 = Dropout(0.2)
self.f2 = Dense(units=10,activation='softmax')
def call(self,x):
x = self.c1(x)
x