animal2vec workshop · MPIABDay 3 · 09:30–10:15
What does one point mean?
How to analyze embeddings.
Julian C. Schäfer-Zimmermann
Max Planck Institute of Animal Behavior
Department for the Ecology of Animal Societies
Communication and Collective Movement (CoCoMo) Group
animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

PCA: keep the direction with most variation

Input: one vector per observation72 toy vectors · principal component analysis
→
Output: fewer coordinatesHere: 2 features → 1 retained component

A cloud and a projection axis

Teaching example
Synthetic numbers; projection and variance are calculated.

Choose a projection

Axis angle 0°
Variance retained—
Variance discarded—

High variance is not the same as useful biological information. PCA does not use the labels.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

UMAP: turn neighborhoods into a map

Input: 90 window vectorsNew toy dataset · 8 features per 200 ms window
→
Output: a 2D neighborhood mapUniform Manifold Approximation and Projection

Same observations, new display coordinates

Teaching example

Follow the construction

Stage—
Graph mismatch / pair—

Computed, small full-batch teaching solver—not umap-learn. No animal2vec outputs are used.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

UMAP: settings change what you see

Hold the observations fixed90 windows · same eight input features
→
Change one decision at a timeNeighborhood size · packing · initialization

One dataset, several layout choices

Teaching example

Compare settings

Neighborhood size
min_dist: packing control
Initialization seed
10-neighbor overlap—

Smaller min_dist encourages tighter packing; it does not prove cleaner classes. Small full-batch teaching solver.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

Clustering: assign, average, repeat

Input: unlabelled observations78 synthetic vectors · two features
→
Output: k group assignmentsGroup numbers are not biological class names

K-means on a visible 2D toy space

Teaching example

Choose the assumptions

Number of groups, k
Starting centers
Iteration—
Within-group sum of squares—

K-means assigns every vector. Smaller inertia alone does not tell you the correct number of call types.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

Density clustering: grow connected regions

Input: points and a distance86 synthetic 2D observations
→
Output: groups and unassigned pointsUse local density, not a requested number of groups

DBSCAN: look around one point

Teaching example

Set the neighborhood rule

Radius ε (feature units)
Minimum points, including self
Points inside radius—
Selected point—

“Unassigned” is an algorithmic status. It does not mean acoustic background/noise.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

Retrieval: find examples near a query

Input: one query and a reference setSame 90 windows · eight features · query excluded
→

Choose a point, retrieve its neighbors

Teaching example

Choose a query and distance

or click a point
Rank · distance

Click a ranked result to inspect its source above.

Similarity is not a class prediction. Synthetic records; no audio is loaded.

animal2vec workshop · MPIAB06 · Embeddings to an analysis dataset

Outliers: unusual relative to their neighbors

Input: observations and local neighbors87 synthetic 2D vectors · dense and sparse groups
→
Output: a review priorityHigh score → inspect audio and metadata

A sparse group is not necessarily an outlier

Teaching example

Inspect local density

Neighbors used by LOF
Selected LOF score—
Own local density—
Mean neighbor density—

A high LOF score is not a probability of novelty, an error diagnosis, or a reason to delete the observation.