반응형
from keras.datasets import cifar10
from keras.models import Model
from keras.layers import Dense, Flatten, Input
from keras.layers import Conv2D, MaxPooling2D
# 데이터 로드
(x_train, y_train), (x_test, y_test) = cifar10.load_data()
# 데이터 정규화
x_train = x_train.astype('float32') / 255
x_test = x_test.astype('float32') / 255
# CNN 모델 생성
inputs = Input(shape=x_train.shape[1:])
conv1 = Conv2D(32, (3, 3), padding='same', activation='relu')(inputs)
conv2 = Conv2D(32, (3, 3), activation='relu')(conv1)
pool1 = MaxPooling2D(pool_size=(2, 2))(conv2)
conv3 = Conv2D(64, (3, 3), padding='same', activation='relu')(pool1)
conv4 = Conv2D(64, (3, 3), activation='relu')(conv3)
pool2 = MaxPooling2D(pool_size=(2, 2))(conv4)
flat = Flatten()(pool2)
dense = Dense(512, activation='relu')(flat)
outputs = Dense(10, activation='softmax')(dense)
model = Model(inputs=inputs, outputs=outputs)
반응형