{
  "model": "cloud_genus_model.tflite",
  "sha256": "e38601819adcc90831d7029d4fb05829b96e3633ac2a76d8722fa7d54c8e7bd8",
  "sizeBytes": 2055980,
  "format": "TensorFlow Lite with FP16 weights and float32 I/O",
  "runtime": "LiteRT.js 2.5.0 using WebAssembly",
  "provenance": {
    "sourceArtifact": "cloudsnap_mobilenetv3_small_fp16.tflite",
    "architecture": "MobileNetV3Small",
    "trainingDataset": "CCSN v2",
    "datasetDoi": "10.7910/DVN/CADDPD",
    "redistributionStatus": "unconfirmed",
    "publicReleaseAllowed": false,
    "releaseGate": "Confirm the DOI-specific dataset terms, trained-weight redistribution rights, and application-code license before publication."
  },
  "input": {
    "shape": [1, 224, 224, 3],
    "type": "float32",
    "colorOrder": "RGB",
    "valueRange": "0..255",
    "preprocessing": "orientation-corrected centered square crop, then direct 224x224 resize; normalization is embedded"
  },
  "output": {
    "shape": [1, 11],
    "type": "float32",
    "activation": "softmax",
    "labels": "labels.json",
    "hasClearOrUnknownClass": false
  },
  "heldOutCCSN": {
    "images": 253,
    "accuracy": 0.4624505928853755,
    "macroF1": 0.48023565310686595
  },
  "limitations": [
    "Technically validated baseline, not a production-quality classifier",
    "Always selects one of eleven labels, including for out-of-scope images",
    "Cannot infer cloud height, movement, weather hazards, or a forecast from one image"
  ]
}
