YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
AP LULC Random Forest Voting Ensemble
Model Details
| Field | Value |
|---|---|
| Artifact | ap_lulc_rf_voting_ensemble.joblib |
| Model type | Soft-voting scikit-learn VotingClassifier |
| Task | Multiclass land-use/land-cover (LULC) classification |
| Number of classes | 13 |
| Voting | Soft voting, weights [2, 1, 2] |
| Parallelism | n_jobs=-1 |
| Random seed | 42 where supported |
| Training samples | 77,848 |
| Test samples | 19,462 |
| Recorded training time | 1.8 minutes |
Component estimators
- Random Forest: 200 trees,
max_depth=30. - Extra Trees: 200 trees,
max_depth=30,class_weight="balanced". - HistGradientBoosting:
learning_rate=0.08,max_iter=300,l2_regularization=0.1.
Intended Use
This model is intended to classify land-use/land-cover observations into the 13 classes listed below, using spectral, index, texture, elevation, and coastal-distance features. It may support land-restoration analysis, mapping, prioritization, and exploratory geospatial workflows.
It is not intended to make unattended decisions about people, property, environmental enforcement, or restoration funding. Predictions should be reviewed by domain experts and checked against current imagery or field observations before operational use.
Inputs
Input records must provide these features in the expected schema:
B3B8B11NDVINDBIB8_glcm_contrastB8_glcm_energyELEVATIONDIST_COAST
The artifact does not document sensor/platform, spatial resolution, coordinate reference system, units, preprocessing, missing-value handling, or feature scaling. These must match the training pipeline before inference.
Outputs
The classifier predicts one of the following classes:
| ID | Class |
|---|---|
| 1 | Forest |
| 2 | Cropland |
| 3 | Plantation |
| 4 | Fallow_Land |
| 5 | Shrubland_Scrub_Grassland |
| 6 | Barren_Rocky_Sandy |
| 7 | Salt_Affected_Land |
| 8 | Mining |
| 9 | Built_up |
| 10 | Water_Bodies |
| 11 | Inland_Wetlands |
| 12 | Coastal_Wetlands |
| 13 | Swamp_Mangroves |
The model also supports class probabilities through scikit-learn's soft-voting interface. Probabilities should be treated as model scores, not as guaranteed real-world probabilities, unless calibration has been separately demonstrated.
Evaluation
The following metrics were embedded in the artifact. Per-class metrics, confusion matrices, geographic holdout results, and confidence intervals were not included.
| Metric | Value |
|---|---|
| Overall accuracy | 0.8937 |
| Balanced accuracy | 0.8768 |
| Macro precision | 0.8976 |
| Macro recall / TPR | 0.8768 |
| Macro F1 | 0.8850 |
| Weighted precision | 0.8939 |
| Weighted recall / TPR | 0.8937 |
| Weighted F1 | 0.8932 |
| Macro ROC AUC | 0.9947 |
| Cross-validation mean accuracy | 0.8847 |
| Cross-validation accuracy standard deviation | 0.0013 |
The evaluation split and cross-validation strategy are not documented in the artifact. Reported performance may therefore overestimate generalization to new regions, dates, sensors, or land-cover conditions.
Limitations and Risks
- Performance may vary with geography, season, atmospheric conditions, sensor characteristics, image resolution, and class prevalence.
- Spectral and texture features can be sensitive to preprocessing and neighborhood definitions.
- The class list includes rare or easily confused categories such as wetlands, mangroves, fallow land, and barren land; aggregate metrics do not show where errors occur.
- Spatial or temporal leakage between training and test data cannot be assessed from the saved artifact.
- A high ROC AUC does not guarantee reliable class decisions or calibrated probabilities.
- Class IDs and names must be preserved exactly when integrating predictions with downstream geospatial products.
Fairness, Environmental, and Safety Considerations
Land-cover labels and imagery can reflect incomplete sampling, annotation disagreement, and regional bias. Incorrect predictions could misdirect restoration work or obscure sensitive ecosystems. Use geographic validation, uncertainty review, independent field verification, and a documented escalation path for low-confidence or high-impact cases.
Reproducibility and Compatibility
The file is a joblib/pickle-based artifact. Loading serialized models executes Python deserialization behavior, so load it only from a trusted source. The embedded estimators report scikit-learn version 1.6.1; loading in the inspected environment (scikit-learn 1.7.0) produced InconsistentVersionWarning. Reproduce or deploy with the training dependency versions when possible, and validate predictions after any dependency upgrade.
The artifact does not include the training dataset, source code, package lockfile, preprocessing pipeline, feature-generation code, evaluation split, or model checksum. Those items should be archived alongside a production release.
Maintenance
Before deployment or retraining, verify feature definitions and units, class mapping, missing-value behavior, geographic and temporal performance, per-class error rates, calibration, and drift. Record the dataset version, imagery dates, training region, dependency versions, validation protocol, and checksum for each released artifact.
Provenance
This card is based on metadata embedded in ap_lulc_rf_voting_ensemble.joblib. Information not present in the artifact is explicitly identified as undocumented and should be completed by the model owner.