{ "model_type": "cnn", "architecture": { "type": "sequential", "layers": [ { "type": "data_augmentation" }, { "type": "conv2d", "filters": 32, "kernel_size": 3, "activation": "relu" }, { "type": "batch_normalization" }, { "type": "max_pooling2d", "pool_size": 2 }, { "type": "conv2d", "filters": 64, "kernel_size": 3, "activation": "relu" }, { "type": "batch_normalization" }, { "type": "max_pooling2d", "pool_size": 2 }, { "type": "flatten" }, { "type": "dense", "units": 256, "activation": "relu" }, { "type": "batch_normalization" }, { "type": "dropout", "rate": 0.3 }, { "type": "dense", "units": 128, "activation": "relu" }, { "type": "batch_normalization" }, { "type": "dropout", "rate": 0.2 }, { "type": "dense", "units": 10, "activation": "softmax" } ] }, "training_config": { "optimizer": { "type": "adam", "learning_rate": 0.001, "beta_1": 0.9, "beta_2": 0.999 }, "loss": "sparse_categorical_crossentropy", "metrics": [ "accuracy" ], "epochs": 20, "batch_size": 32, "validation_split": 0.2 }, "preprocessing": { "input_normalization": "divide_by_255", "input_shape": [ 28, 28, 1 ] } }