| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- gameplay tag
- 보안
- 유니티
- Aegis
- gameplay effect
- rpc
- listen server
- 게임 개발
- Unreal Engine
- photon fusion2
- linear regression
- gas
- C++
- 언리얼 엔진
- Replication
- stride
- UI
- 게임개발
- local prediction
- attribute
- ability task
- Multiplay
- CTF
- gameplay ability system
- unity
- widget
- MAC
- 언리얼엔진
- animation
- os
Archives
- Today
- Total
Replicated
Keras CNN - MNIST 본문
from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense, Input
from keras.layers import Dropout
from keras.layers import Flatten
from keras.layers import Convolution2D
from keras.layers import MaxPooling2D
from keras.utils import to_categorical
import numpy as np
import matplotlib.pyplot as plt
img_rows=28
img_cols=28
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train, X_test = X_train / 255.0, X_test / 255.0
X_train = X_train.reshape(X_train.shape[0], img_rows, img_cols, 1)
X_test = X_test.reshape(X_test.shape[0], img_rows, img_cols, 1)
y_train = to_categorical(y_train)
y_test = to_categorical(y_test)
seed = 100
np.random.seed(seed)
num_classes = 10
데이터 준비

CNN은 채널이 끼어드니 행, 열, 채널 수까지 해줘야 함
def cnn_model():
model = Sequential()
model.add(Input(shape=(img_rows, img_cols, 1)))
model.add(Convolution2D(32, kernel_size=(5, 5),
padding='valid', # or 'same'
strides=(1, 1),
activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(127, activation='relu'))
model.add(Dense(num_classes, activation='softmax'))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
return model
모델 생성, 컴파일
model = cnn_model()
model.summary()
disp = model.fit(X_train, y_train,
validation_data=(X_test, y_test),
epochs=10,
batch_size=200,
verbose=1)
scores = model.evaluate(X_test, y_test, verbose=0)
print("loss: %.2f" % scores[0])
print("acc: %.2f" % scores[1])
모델 학습

모델 요약

결과
plt.plot(disp.history['accuracy'])
plt.plot(disp.history['val_accuracy'])
plt.title('model accuracy')
plt.ylabel('accuracy')
plt.xlabel('epoch')
plt.legend(['train', 'validation'], loc='upper left')
plt.show()

시각화
'학부 > 딥러닝' 카테고리의 다른 글
| 전이 학습 (Transfer Learning) (0) | 2025.12.07 |
|---|---|
| Keras CNN - Argumentation (0) | 2025.10.25 |
| Keras CNN (0) | 2025.10.25 |
| Keras - MNIST (0) | 2025.10.25 |
| Keras 개요 (0) | 2025.10.18 |