Stateful Cross-Session Injection: Attacks, Detection, and Session-Boundary Defenses
A research project that studies how prompt injections persist across agent sessions — building a stateful evaluation harness that measures...
Build an audio-classification pipeline that turns field recordings into mel-spectrograms and suggests likely bird species with confidence scores — an identification aid for birders, bioacoustics students, and citizen scientists.

An audio machine-learning project that takes a field recording of a bird and suggests the likely species — with a confidence score and an explicit reminder that a human makes the final call. Recordings are converted into mel-spectrogram images, a convolutional classifier is trained on labeled community recordings from Xeno-canto, and predictions are presented as candidates for verification, not verdicts. It is the portfolio’s first audio-ML pipeline: waveforms in, spectrograms in between, species candidates out, and an honest uncertainty story throughout.
>An identification aid, not an authority. Predictions can be wrong; a single clip can contain multiple birds; noisy environments quietly degrade reliability; and some species are simply hard to separate by sound. Every prediction is a candidate to check against a field guide, a regional reference, or an expert birder — never a confirmed identification.
Birding by ear is a superpower that takes years to build, and the demand for it is enormous: migration seasons generate floods of “what was that?” moments, and automated recorders collect thousands of hours of audio that nobody has time to listen to. Commercial apps exist, but they are closed: you cannot inspect their training data, their error patterns, or their confidence behavior. Community-built databases like Xeno-canto host a genuinely open collection of labeled bird recordings from around the world — but turning raw community audio into a working classifier is the hard part, and it is exactly the part tutorials skip. The gap between “there is a big open dataset” and “I have a working, honest species-suggestion tool” is this project.
Audio ML has its own shape. The signal is a one-dimensional waveform; the classic move is to transform it into a two-dimensional image-like representation (a spectrogram) and let image-style classifiers do the rest. Each stage below has a landmine; the pipeline text flags them where they bite.
Use the Xeno-canto API to fetch labeled recordings for a chosen set of species, along with their metadata (species, location, recordist, license). Start with a modest, geographically coherent species list rather than “all birds” — a focused regional subset trains better and evaluates more honestly. Record the query and retrieval date: community datasets grow and change, and provenance is part of the science. Respect the individual recording licenses when you redistribute anything.
Field recordings arrive at different sampling rates, loudness levels, and channel counts. Standardize the sampling rate, convert to mono, and normalize amplitude. This is also where you trim silence at clip edges and decide how to handle clipped (over-loud) audio — models learn bad habits from distorted input.
Many Xeno-canto recordings are longer than a training clip should be. Segment them into fixed-length windows (a few seconds each) and decide what to do with segments that contain no bird sound at all. Naive segmentation creates silent or noise-only training examples; even a simple energy threshold to discard near-silent windows pays for itself in model quality.
Transform each segment into a mel-spectrogram — a time–frequency image with perceptually spaced frequency bins. The mel-spectrogram is the workhorse representation for environmental sound: it compresses the parts of the spectrum that matter for species discrimination while keeping the computation tractable. Keep the spectrogram parameters (window size, hop length, number of mel bands) consistent across the entire dataset; changing them mid-project silently invalidates your trained models.
Three field-recording facts shape everything downstream:
Fine-tune an image-style CNN on the mel-spectrograms. Because spectrograms are images, the transfer-learning machinery from vision projects carries over — but the “images” are spectrograms, so augmentations must be audio-legal: time-shifting and light noise injection yes, vertical flips no (upside-down frequencies are meaningless). Log per-class validation metrics throughout; audio models degrade quietly on rare classes long before aggregate metrics notice.
For a new clip, output the top-3 species candidates with probabilities. A high confidence on a clear single-bird clip means one thing; a low confidence on a noisy multi-bird dawn chorus means another — and the UI must say so. Confidence thresholds matter: below a chosen level, the tool should say “likely one of these, but verify” instead of pretending certainty.
The finished tool always ends with the human: show the candidates, link to reference audio for each candidate species, and invite verification. Keeping a small log of user corrections is both good product design and a future training set.
A minimal but complete MVP:
Explicitly out of MVP: continuous recording analysis, on-device inference, many-hundred-species coverage, and call-type separation. All are natural extensions.
The site’s machine-learning projects classify images (leaves, satellite patches, faces) and time series (sensor data, sales) — this is the first that classifies sound. The Crop Disease Detection with Computer Vision project fine-tunes a CNN on leaf photos; #057 fine-tunes the same family of model on mel-spectrogram images of sound, which is a genuinely different feature pipeline (waveform → time–frequency representation → CNN) for a different sensory world. There is no other audio-ML Idea on the site: no overlapping subject, no shared pipeline, and a distinct audience of birders and bioacoustics students rather than farmers or developers building dashboards.
| Tool type | Approach | Limitation |
|———–|———-|————|
| Commercial bird-ID apps | Closed models on proprietary data | Uninspectable; error patterns and confidence behavior invisible |
| Research bioacoustic models | Large models from academic labs | Not student-buildable or rebuildable end to end |
| Generic audio classifiers | Pre-trained audio tags applied to clips | No species-specific training, no regional awareness |
| Expert human listening | Skilled birders identify by ear | Years of training; not scalable to recording archives |
This project’s differentiators: a fully open data-to-model pipeline on community recordings, per-class honesty about noisy and rare species, recording-level evaluation hygiene, and a verification-first product stance.
Browse more Project Ideas · Intermediate Ideas
A research project that studies how prompt injections persist across agent sessions — building a stateful evaluation harness that measures...
A research project that measures, for the first time at registry scale, how much tool-poisoning risk actually exists across public...
A research project that measures the full trade-off curve between prompt-injection resistance and task utility for LLM agent defenses —...
Ready to level up? These ideas offer more complexity:
Published on September 12, 2026
A team of developers, researchers, and innovators who review and publish practical ideas for builders and creators.
Published on September 12, 2026
A team of developers, researchers, and innovators who review and publish practical ideas for builders and creators.