| { | |
| "architecture": { | |
| "base_model": "MobileNetV2", | |
| "input_shape": [ | |
| 224, | |
| 224, | |
| 3 | |
| ] | |
| }, | |
| "custom_layers": [ | |
| { | |
| "type": "GlobalAveragePooling2D" | |
| }, | |
| { | |
| "type": "Dense", | |
| "units": 128, | |
| "activation": "relu" | |
| }, | |
| { | |
| "type": "Dropout", | |
| "rate": 0.5 | |
| }, | |
| { | |
| "type": "Dense", | |
| "units": 1, | |
| "activation": "sigmoid" | |
| } | |
| ], | |
| "training": { | |
| "optimizer": "Adam", | |
| "learning_rate": 0.001, | |
| "loss": "binary_crossentropy", | |
| "metrics": [ | |
| "accuracy" | |
| ] | |
| }, | |
| "fine_tuning": { | |
| "unfreeze_from_layer": 100, | |
| "fine_tune_learning_rate": 0.0001 | |
| } | |
| } |