Home

Home#

chatter: a Python library for applying information theory and AI/ML models to animal communication

Mason Youngblood

PyPI - Version Python Version Repo Size License Tests



Historically, analyses of sequential structure in animal communication have involved the identification of unit types (e.g. “syllables” in bird song and “notes” in whale song). This collapses continuous variation into discrete categories that align with human perception, a process that loses a great deal of the complexity and nuance present in the actual signals. Recent innovations in machine learning, such as variational autoencoders and vision transformers, allow us to bypass discretization and analyze animal communication signals directly in continuous space. chatter makes it easy for researchers to apply these methods to their data, to quantify features like:

  • Complexity—path length of sequences in latent space per unit time.

  • Predictability—predictability of a transition in latent space.

  • Similarity—cosine similarity between units or sequences in latent space.

  • Novelty—inverse of predicted density of units or sequences in latent space.

Additionally, chatter makes it easy to explore the latent space of a species’ vocalizations, either statically or with an interactive plot like the one below (of syllables in Cassin’s vireo song).

embeddings

This project is heavily inspired by the work of folks like Nilo Merino Recalde and Tim Sainburg. Here is a list of related projects:

Please cite chatter as:

  • Youngblood, M. (2025). Chatter: a Python library for applying information theory and AI/ML models to animal communication (v0.1.3). GitHub. masonyoungblood/chatter

@software{youngblood_chatter_2025,
   author = {Youngblood, Mason},
   title = {Chatter: a Python library for applying information theory and AI/ML models to animal communication},
   version = {v0.1.3},
   date = {2025},
   publisher = {GitHub},
   url = {https://github.com/masonyoungblood/chatter}
}

Full Vignettes

Reference

chatter

Chatter: a Python library for applying information theory and AI/ML models to animal communication.