12345678910111213141516171819202122232425262728293031323334353637383940 |
- from keras.models import Sequential
- from keras.layers import Conv2D, MaxPooling2D, Dense, Flatten, Dropout, ReLU, AveragePooling2D
- def create_model(input_shape=(224, 224, 3), num_classes=10):
- model = Sequential([
-
- Conv2D(64, kernel_size=(11, 11), strides=(4, 4), padding="same", input_shape=input_shape),
- ReLU(),
- MaxPooling2D(pool_size=(3, 3), strides=(2, 2)),
- Conv2D(192, kernel_size=(5, 5), padding="same"),
- ReLU(),
- MaxPooling2D(pool_size=(3, 3), strides=(2, 2)),
- Conv2D(384, kernel_size=(3, 3), padding="same"),
- ReLU(),
- Conv2D(256, kernel_size=(3, 3), padding="same"),
- ReLU(),
- Conv2D(256, kernel_size=(3, 3), padding="same"),
- ReLU(),
- MaxPooling2D(pool_size=(3, 3), strides=(2, 2)),
-
- AveragePooling2D(pool_size=(6, 6)),
-
- Flatten(),
- Dropout(0.5),
- Dense(4096),
- ReLU(),
- Dropout(0.5),
- Dense(4096),
- ReLU(),
- Dense(num_classes, activation='softmax')
- ])
- return model
|