| { | |
| "model_type": "ResidualConvAutoencoder", | |
| "task": "image-feature-extraction", | |
| "framework": "pytorch", | |
| "architecture": { | |
| "encoder_stages": 5, | |
| "decoder_stages": 5, | |
| "latent_dim": 512, | |
| "input_size": [ | |
| 128, | |
| 128, | |
| 3 | |
| ], | |
| "channels": [ | |
| 64, | |
| 128, | |
| 256, | |
| 512, | |
| 512 | |
| ], | |
| "residual_blocks": true | |
| }, | |
| "training": { | |
| "dataset": "CIFAR-10", | |
| "train_samples": 50000, | |
| "test_samples": 10000, | |
| "batch_size": 1024, | |
| "optimizer": "AdamW", | |
| "learning_rate": 0.001, | |
| "weight_decay": 1e-05, | |
| "epochs": 100, | |
| "loss_function": "MSE", | |
| "scheduler": "ReduceLROnPlateau" | |
| }, | |
| "performance": { | |
| "test_loss": 0.00429, | |
| "validation_loss": 0.004294, | |
| "train_loss": 0.003344, | |
| "parameters": 34849667, | |
| "training_time_minutes": 26.24 | |
| }, | |
| "preprocessing": { | |
| "image_size": [ | |
| 128, | |
| 128 | |
| ], | |
| "normalization": { | |
| "mean": [ | |
| 0.5, | |
| 0.5, | |
| 0.5 | |
| ], | |
| "std": [ | |
| 0.5, | |
| 0.5, | |
| 0.5 | |
| ] | |
| }, | |
| "range": "[-1, 1]" | |
| }, | |
| "calibration": { | |
| "description": "Calibrated MSE reconstruction error thresholds", | |
| "dataset_real": "CIFAR-10 test set", | |
| "dataset_fake": "Random Noise test set", | |
| "image_size": [ | |
| 128, | |
| 128 | |
| ], | |
| "normalization": "mean=0.5, std=0.5 (range [-1, 1])", | |
| "thresholds": { | |
| "strict": { | |
| "value": 0.012767740525305271, | |
| "description": "High confidence - 99th percentile of real images", | |
| "expected_tpr": 1.0, | |
| "expected_fpr": 0.01 | |
| }, | |
| "balanced": { | |
| "value": 0.009065581485629082, | |
| "description": "Balanced - 95th percentile of real images", | |
| "expected_tpr": 1.0, | |
| "expected_fpr": 0.05 | |
| }, | |
| "sensitive": { | |
| "value": 0.00931915920227766, | |
| "description": "Sensitive - mean + 2*std of real images", | |
| "expected_tpr": 1.0, | |
| "expected_fpr": 0.0448 | |
| }, | |
| "optimal": { | |
| "value": 0.20403903722763062, | |
| "description": "Optimal separation between distributions", | |
| "expected_tpr": 1.0, | |
| "expected_fpr": 0.0 | |
| } | |
| }, | |
| "statistics": { | |
| "real_images": { | |
| "mean": 0.004293377045542002, | |
| "std": 0.0025128910783678293, | |
| "median": 0.003766049398109317, | |
| "min": 0.00019204482669010758, | |
| "max": 0.02400028333067894, | |
| "percentile_95": 0.009065581485629082, | |
| "percentile_99": 0.012767740525305271 | |
| }, | |
| "fake_images": { | |
| "mean": 0.40168634057044983, | |
| "median": 0.4016798138618469, | |
| "min": 0.3955906331539154, | |
| "max": 0.4081667363643646, | |
| "percentile_5": 0.3990125060081482 | |
| }, | |
| "separation": { | |
| "mean_difference": 0.39739295840263367, | |
| "ratio": 93.55953216552734 | |
| } | |
| }, | |
| "note": "These thresholds are calibrated on CIFAR-10 vs Random Noise. For real deepfake detection, recalibrate on actual fake images." | |
| } | |
| } |