Model Card for esp-aves2-effnetb0-all

Model Details

Model Description

esp-aves2-effnetb0-all is a supervised bioacoustic encoder trained to produce transferable embeddings for downstream bioacoustic tasks (species classification/detection, individual identification, vocal repertoire discovery), as described in What Matters for Bioacoustic Encoding.

  • Developed by: Marius Miron, David Robinson, Milad Alizadeh, Ellen Gilsenan-McMahon, Gagan Narula, Emmanuel Chemla, Maddie Cusimano, Felix Effenberger, Masato Hagiwara, Benjamin Hoffman, Sara Keen, Diane Kim, Jane K. Lawton, Jen-Yu Liu, Aza Raskin, Olivier Pietquin, Matthieu Geist
  • Funded by: More info at https://www.earthspecies.org/about-us#support
  • Shared by: Earth Species Project
  • Model type: Audio representation learning model (CNN; EfficientNet-B0 backbone)
  • License: CC-BY-NC-SA
  • Finetuned from model: EfficientNet-B0 pretrained on ImageNet (see Parent Models)

Model Sources

Parent Models

  1. EfficientNet-B0 (ImageNet)
    • Source: https://docs.pytorch.org/vision/main/models/generated/torchvision.models.efficientnet_b0.html
    • Description: ImageNet-pretrained EfficientNet-B0 initialization used before supervised post-training.
    • License: See upstream repository

Uses

Direct Use

esp-aves2-effnetb0-all can be used directly as an embedding model for bioacoustic tasks such as species classification/detection, retrieval, clustering, individual ID, and repertoire analysis.

Downstream Use

Use frozen embeddings with linear probes, or fine-tune on your target dataset. This model is also suitable for deployment in acoustic monitoring pipelines as a robust feature extractor.

Out-of-Scope Use

Not a generative model; does not output text. Stand-alone classification without probes/finetuning is out of scope.

Bias, Risks, and Limitations

  • Bias: Training data sources (citizen science + curated archives) can bias toward certain taxa/regions and recording setups.
  • Risks: Potential misuse for sensitive species monitoring; apply conservation safeguards and access control.
  • Limitations: Training/evaluation in the paper is standardized at 16 kHz; some taxa may require higher bandwidth.

Recommendations

Validate on in-domain data; for real-world deployments, monitor performance drift and apply data governance for sensitive taxa.

How to Get Started with the Model

Loading this model requires the AVEX (Animal Vocalization Encoder) library avex to be installed.

Installation

pip install avex

Or with uv:

uv add avex

For more details, see https://github.com/earthspecies/avex.

Loading the Model

from avex import load_model

model = load_model("esp_aves2_effnetb0_all", device="cuda")

Using the Model

# Case 1: embedding extraction (features only)
backbone = load_model("esp_aves2_effnetb0_all", device="cuda", return_features_only=True)

with torch.no_grad():
    embeddings = backbone(audio_tensor)
    # Shape: (batch, channels, height, width) for EfficientNet

# Pool to get fixed-size embedding
embedding = embeddings.mean(dim=(2, 3))  # Shape: (batch, channels)

# Case 2: supervised predictions (logits over label IDs; see label_map.json)
model = load_model("esp_aves2_effnetb0_all", device="cuda")

with torch.no_grad():
    logits = model(audio_tensor)
    predicted_class = logits.argmax(dim=-1).item()

Transfer Learning with Probes

from avex.models.probes import build_probe_from_config
from avex.configs import ProbeConfig

# Load backbone for feature extraction
base = load_model("esp_aves2_effnetb0_all", return_features_only=True, device="cuda")

# Define a probe head for your task
probe_config = ProbeConfig(
    probe_type="linear",
    target_layers=["last_layer"],
    aggregation="mean",
    freeze_backbone=True,
    online_training=True,
)

probe = build_probe_from_config(
    probe_config=probe_config,
    base_model=base,
    num_classes=10,  # Your number of classes
    device="cuda",
)

Class Label Mapping

The class label mapping for this supervised learning model can be found at label_map.json in the Hugging Face repository.

Training Details

Training Data

esp-aves2-effnetb0-all follows the paper’s supervised post-training recipe using an All mix (Bioacoustics mix + AudioSet), starting from ImageNet-pretrained EfficientNet-B0.

Training Data Sources

Dataset Description Source License Size
AudioSet general audio Link See dataset terms 5700 hours
Xeno-canto birds Link CC (varies) 10416 hours
iNaturalist diverse taxa Link CC (varies) 1539 hours
Watkins marine mammals Link licensing agreement (paper) 27 hours
Animal Sound Archive diverse taxa Link See archive terms 78 hours

Training Procedure

As described in the paper:

  • Initialization: EfficientNet-B0 pretrained on ImageNet.
  • Supervised post-training: on All (Bio + AudioSet) with a multi-label objective.
  • Augmentations: random additive noise (p=0.5, SNR in ([-10, 20]) dB); mixup-style within-batch mixing (p=0.5) with union of labels.

Training Hyperparameters

Training hyperparameters are specified in train_config.yaml.

Evaluation

Testing Data, Factors & Metrics

Testing Data

The paper evaluates on:

  • BEANS (classification and detection): https://github.com/earthspecies/beans
  • BirdSet (detection): https://huggingface.co/datasets/DBD-research-group/BirdSet
  • Individual ID: Pipit, Chiffchaff, Little Owl, Macaques
  • Vocal Repertoire: Zebra Finch, Giant Otters, Bengalese Finch, Killer Whale

Metrics

  • Linear probing: accuracy / mAP
  • Retrieval: ROC AUC
  • Clustering: NMI

Results

Aggregate results for linear probing (frozen base model) with esp-aves2-effnetb0-all (from the provided LaTeX table):

Benchmark Task Metric Score
BEANS Classification Probe Accuracy 0.800
BEANS Classification Retrieval ROC AUC 0.809
BEANS Classification Clustering NMI 0.584
BEANS Detection Probe mAP 0.362
BEANS Detection Retrieval ROC AUC 0.712
BirdSet Probe mAP 0.279
BirdSet Retrieval ROC AUC 0.707
Individual ID Probe Accuracy 0.531
Individual ID Retrieval ROC AUC 0.701
Vocal Repertoire Retrieval ROC AUC 0.830
Vocal Repertoire Clustering NMI 0.582

Environmental Impact

Not specified in the provided excerpt.

Technical Specifications

Model Architecture and Objective

esp-aves2-effnetb0-all uses an EfficientNet-B0 CNN operating on time-frequency representations (spectrograms), trained with supervised learning on a large multi-source corpus to learn general bioacoustic representations.

Key components:

  • Encoder: EfficientNet-B0
  • Feature extraction: spectrogram frontend (paper uses 16 kHz setup; exact spectrogram params depend on implementation)
  • Output: embeddings (dimension depends on backbone head configuration)

Compute Infrastructure

Not specified in the provided excerpt.

Model Configuration

Model configuration is available in train_config.yaml.

Citation

BibTeX:

@inproceedings{miron2025matters,
  title={What Matters for Bioacoustic Encoding},
  author={Miron, Marius and Robinson, David and Alizadeh, Milad and Gilsenan-McMahon, Ellen and Narula, Gagan and Chemla, Emmanuel and Cusimano, Maddie and Effenberger, Felix and Hagiwara, Masato and Hoffman, Benjamin and Keen, Sara and Kim, Diane and Lawton, Jane K. and Liu, Jen-Yu and Raskin, Aza and Pietquin, Olivier and Geist, Matthieu},
  booktitle={The Fourteenth International Conference on Learning Representations},
  year={2026}
}

Model Card Contact

Contact: marius@earthspecies.org, david@earthspecies.org, milad@earthspecies.org, gagan@earthspecies.org

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Collection including EarthSpeciesProject/esp-aves2-effnetb0-all

Paper for EarthSpeciesProject/esp-aves2-effnetb0-all