{ "model_type": "unet", "input_shape": [4, 384, 384], "num_classes": 1, "architecture": { "encoder": { "downsample_blocks": [ {"in_channels": 4, "out_channels": 32}, {"in_channels": 32, "out_channels": 64}, {"in_channels": 64, "out_channels": 128} ], "bottleneck": {"in_channels": 128, "out_channels": 256} }, "decoder": { "upsample_blocks": [ {"in_channels": 256, "out_channels": 128}, {"in_channels": 128, "out_channels": 64}, {"in_channels": 64, "out_channels": 32} ] }, "spatial_attention": { "conv": {"in_channels": 2, "out_channels": 1, "kernel_size": 3, "padding": 1} }, "output": {"in_channels": 32, "out_channels": 1, "kernel_size": 1} }, "training": { "optimizer": "Adam", "learning_rate": 0.0008, "weight_decay": 1e-5, "loss_function": "BCEWithLogitsLoss", "batch_size": 8, "epochs": 15, "patience": 4, "scheduler": "ReduceLROnPlateau", "scheduler_params": { "mode": "min", "factor": 0.1, "patience": 2 } }, "metrics": { "validation": { "Jaccard_index": 0.8897, "Precision": 0.9445, "Recall": 0.9328, "Specificity": 0.9797, "Overall_Accuracy": 0.9706 } }, "data": { "dataset_path": "../input/38cloud-cloud-segmentation-in-satellite-images/38-Cloud_training", "input_channels": ["red", "green", "blue", "nir"], "target": "binary_cloud_mask", "normalization": "divide_by_max_value_uint16", "augmentation": false, "train_val_split": 0.8, "image_size": [384, 384] }, "misc": { "device": "cuda_if_available", "grad_clip": 1.0, "threshold": 0.5 }, "output": { "model_file": "pytorch_model.bin", "visualization": { "samples": 5, "types": ["original_image", "ground_truth_mask", "predicted_mask"] } } }