YOLO11m-cls NOAA Pacific Benthic Classifier (Tier-3)

Patch/Point Based Classifer

Model Overview

A YOLO11m image classification model trained to classify fine-grained benthic cover categories (Tier-3) in underwater reef imagery from NOAA Pacific Islands surveys. This model classifies 67 taxonomic and functional categories including coral genera, algae types, and substrate classes, achieving 60.1% top-1 accuracy and 85.9% top-5 accuracy.

  • Model Architecture: YOLO11m-cls (medium)
  • Task: Image Classification (fine-grained, 67 classes)
  • Image Size: 224 Γ— 224 pixels
  • Classes: 67 fine-grained benthic categories

Top 10 Classes by Sample Count

Rank Code Description Train Samples
1 TURFH Turf Algae (High) ~29,700
2 CCAH Crustose Coralline Algae (Healthy) ~29,700
3 SAND Sand ~29,700
4 PESP Porites spp. (encrusting) ~29,700
5 MOEN Montipora (encrusting) ~28,900
6 POMA Porites (massive) ~25,900
7 EMA Encrusting Macroalgae ~21,900
8 HALI Halimeda spp. ~20,400
9 TURFR Turf Algae (Rubble) ~15,400
10 POCS Pocillopora spp. ~12,500

See class_list_full.csv for the complete 67-class inventory.

Results & Metrics

Training Performance

Metric Value
Best Top-1 Accuracy 60.1% (epoch 95)
Best Top-5 Accuracy 85.9%
Best Validation Loss ~1.58
Epochs Trained ~130 (early stopped)

Test Set Performance

Evaluated on 56,864 ground truth samples (67 classes):

Metric Value
Accuracy 59.8%
Balanced Accuracy 50.0%
Top-5 Accuracy 85.9%
Macro F1 0.538
Macro Precision 0.610
Macro Recall 0.500

Performance Context

Fine-grained 67-class classification is significantly more challenging than Tier-1 (8-class) due to:

  • High inter-class similarity: Many coral genera have similar visual appearance
  • Class imbalance: Minority classes (e.g., MOBR, LOBS, FUSP) have very few samples
  • Taxonomic ambiguity: Some morphological forms are difficult to distinguish even for experts

Despite these challenges, the model achieves strong top-5 accuracy (85.9%), meaning the correct class is usually among the model's top predictions.

Visualizations

Model Performance Overview

T3 Model Performance

Confusion Matrix

YOLO11m Confusion Matrix

Note: 67-class confusion matrix is dense due to the fine-grained nature of the classification task.

Additional visualizations included:

  • confusion_matrix_normalized.png β€” Training validation confusion matrix
  • results.png β€” Training curves (loss, accuracy, learning rate)

Model Weights

Training Configuration

Parameter Value
Base Model yolo11m-cls.pt (pretrained)
Dataset NMFS-OSI/noaa-pacific-benthic-cover-t3
Training Split 265,046 images
Validation Split 56,770 images
Test Split 56,864 images
Total Classes 67
Epochs 200 (early stopped at ~130)
Patience 35
Batch Size 32
Image Size 224 Γ— 224
Optimizer AdamW
Initial LR 0.001
LR Schedule Cosine annealing (cos_lr: true)
Final LR 0.01 Γ— initial
Warmup Epochs 5
Dropout 0.3
Weight Decay 0.01
Precision AMP (mixed precision)
Seed 42

Augmentations

Augmentation Value
HSV Hue 0.02
HSV Saturation 0.4
HSV Value 0.3
Rotation Β±20Β°
Translation 0.1
Scale 0.3
Shear 10Β°
Flip UD 0.5
Flip LR 0.5
Mosaic 1.0

Dataset & Annotations

  • Dataset: NOAA Pacific Benthic Cover T3
  • Total Images: 378,680 (train/val/test split: 70/15/15)
  • Classes: 67 fine-grained taxonomic/functional categories
  • Source: NOAA PIFSC Ecosystem Sciences Division (ESD) β€” NCRMP surveys
  • Regions: Hawaii, Marianas, American Samoa, Pacific Remote Island Areas
  • Annotation Method: Human analysts using CoralNet interface with Tier-3 taxonomic labels

Class Categories Include:

  • Hard Corals: Acropora, Montipora, Pocillopora, Porites, Pavona, Leptastrea, Fungia, etc.
  • Soft Corals: Octocorals, zoanthids
  • Algae: CCA, turf, Halimeda, Dictyota, macroalgae varieties
  • Substrate: Sand, rubble, hard bottom
  • Other: Sponges, invertebrates, mobile fauna

How to Use

from ultralytics import YOLO

# Load the trained model
model = YOLO("yolo11m_cls_noaa-pacific-benthic-t3.pt")

# Predict on an image
results = model.predict(source="coral_image.jpg", imgsz=224)

# Get predictions
for result in results:
    top1_idx = result.probs.top1
    top1_conf = result.probs.top1conf.item()
    class_name = result.names[top1_idx]
    print(f"Predicted: {class_name} (Confidence: {top1_conf:.2%})")
    
    # Top-5 predictions (useful for fine-grained classification)
    top5_indices = result.probs.top5
    top5_confs = result.probs.top5conf.tolist()
    print("Top-5 predictions:")
    for idx, conf in zip(top5_indices, top5_confs):
        print(f"  {result.names[idx]}: {conf:.2%}")

Batch Inference

from ultralytics import YOLO
from pathlib import Path

model = YOLO("yolo11m_cls_noaa-pacific-benthic-t3.pt")

# Predict on folder of images
results = model.predict(source="path/to/images/", imgsz=224)

for result in results:
    filename = Path(result.path).name
    pred_class = result.names[result.probs.top1]
    confidence = result.probs.top1conf.item()
    print(f"{filename}: {pred_class} ({confidence:.2%})")

Hierarchical Inference (T3 β†’ T1)

For applications requiring broad categories, T3 predictions can be mapped to T1:

# Example T3 to T1 mapping
T3_TO_T1 = {
    'POCS': 'CORAL', 'POMA': 'CORAL', 'MOEN': 'CORAL', 'PESP': 'CORAL',
    'ACBR': 'CORAL', 'ACTA': 'CORAL', 'FASP': 'CORAL', 'LEPT': 'CORAL',
    'CCAH': 'CCA', 'CCAR': 'CCA',
    'TURFH': 'TURF', 'TURFR': 'TURF',
    'HALI': 'MA', 'DICO': 'MA', 'LOBO': 'MA',
    'SAND': 'SED', 'RUB': 'SED',
    'OCTO': 'SC',
    # ... extend as needed
}

t3_pred = result.names[result.probs.top1]
t1_pred = T3_TO_T1.get(t3_pred, 'OTHER')

Intended Use

Primary Applications

  • Fine-grained benthic classification at genus/morphology level
  • Coral community composition analysis
  • Detailed reef monitoring and biodiversity assessment
  • Research requiring taxonomic-level predictions
  • Transfer learning baseline for regional or species-specific models

Out-of-Scope Use

  • Species-level identification beyond Tier-3 label semantics
  • Regulatory or policy decisions without expert validation
  • Regions outside the Pacific without additional fine-tuning
  • Applications requiring >90% accuracy on rare classes

Limitations

  • Class Imbalance: Many rare classes (e.g., MOBR, LOBS, FUSP, PLER) have very few training samples and lower accuracy
  • Geographic Bias: Trained on Pacific Islands data; may not generalize to other ocean basins
  • Taxonomic Confusion: Visually similar genera (e.g., Montipora vs Porites encrusting forms) may be confused
  • Image Quality Sensitivity: Performance degrades with poor lighting, motion blur, or particulates
  • 67-Class Complexity: Fine-grained classification inherently more challenging than broad categories

Recommendations

  • Use Top-5 Predictions: For fine-grained classification, consider the top-5 predictions rather than just top-1
  • Confidence Thresholds: Filter low-confidence predictions for higher precision
  • Expert Validation: Have domain experts review predictions for rare or ambiguous classes
  • Regional Fine-tuning: Consider fine-tuning on local data for deployment outside Pacific Islands

Ethical Considerations

  • Model predictions should supplement, not replace, expert taxonomic review
  • Uncertainty in fine-grained predictions should be communicated when used for ecological assessments
  • Performance on rare classes should be carefully evaluated before conservation applications

Environmental Impact

  • Hardware: NVIDIA T4 GPU
  • Cloud Provider: Google Cloud (us-central1)
  • Training Time: ~12 hours

Metadata & Citation

Citation:

Pacific Islands Fisheries Science Center (2026). 
Ecosystem Sciences Division (ESD) Benthic Image Classification Model (Tier-3).
NOAA Fisheries.

Related Metadata:

Related Resources:

Contact

For questions or inquiries:
Michael Akridge β€” Michael.Akridge@noaa.gov


Disclaimer

This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA project content is provided on an 'as is' basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.

Downloads last month
40
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for NMFS-OSI/yolo11m-cls-noaa-pacific-benthic-cover-t3

Quantized
(63)
this model

Dataset used to train NMFS-OSI/yolo11m-cls-noaa-pacific-benthic-cover-t3

Collection including NMFS-OSI/yolo11m-cls-noaa-pacific-benthic-cover-t3