Speech and audio
Audio Units, Segmentation, Labels, and Timestamps
Design annotation units for frames, events, utterances, speaker turns, clips, and sessions while handling boundary uncertainty.
By the end you can
- Define audio units, segmentation, labels, and timestamps as an operational problem with explicit inputs, outputs, and boundaries
- Distinguish clip-level label, strong temporal label, and sequence annotation without treating them as interchangeable
- Trace the workflow from define the ontology through measure annotation behavior
- Evaluate audio units, segmentation, labels, and timestamps using boundary-tolerant event precision and recall and evidence from difficult deployment slices
Example
Ten-second tags against a 0.1 second event
AudioSet is the largest clip-level audio corpus ever assembled. In 2021 the team that built it went back and measured what its own annotation unit had cost. They re-annotated part of the corpus at roughly 0.1 second resolution. Then they set that against the labels everyone had been training on. The abstract states the arithmetic of the mismatch: “We devised a temporally strong evaluation set (including explicit negatives of varying difficulty) and a small strong-labeled training subset of 67k clips (compared to the original dataset's 1.8M clips labeled at 10 sec resolution).”
The 1.8M clips were not wrong. They simply carried no onset and no offset. Nothing trained on them could produce one, and a single clip could hold several overlapping events under one tag. Fine-tuning on a mix of weak and strong labels raised d' on that strong evaluation set from 1.13 to 1.41 for a ResNet50. Those 67k re-annotated clips are what it cost to put the boundaries back into a corpus collected without them. The bill went to the same organisation that had chosen the unit, years after it chose it.
- The choice really being made was what an annotation unit should be: a frame, an event, an utterance, a speaker turn, a clip or a session. The other half of the choice is how boundary uncertainty gets recorded once the unit is fixed. AudioSet fixed it at ten seconds, for 1.8M clips.
- What goes wrong is narrow and specific. Clip tags are collected first. A requirement finer than the tag is written against them afterwards. Labels at 10 sec resolution cannot supervise a decision that has to land at 0.1 second resolution, however many clips are collected.
- The evidence anyone would ask for is boundary-tolerant event precision and recall. Notice early what that pair of numbers depends on: a tolerance somebody chose. Set the tolerance generously enough and the detector reports as working.
- The response that helped was to annotate the awkward material rather than skip it. The strong evaluation set was built to include explicit negatives of varying difficulty. The mixed weak-and-strong fine-tune is what moved d' from 1.13 to 1.41.
The annotation decides what can be learned
Nothing failed during training in that story. It failed years earlier, at the moment someone decided ten seconds was the unit.
Annotation defines what a model is allowed to learn. A clip-level tag, a frame label, a time interval, a transcript, a speaker turn and a session outcome each answer a different question. Each brings its own rules for boundaries, overlap and uncertainty. They also cost very different amounts to collect, which is why the question so often gets settled by convenience. The cheap unit is the one already sitting in the archive. And 2,084,320 ten-second YouTube clips are far cheaper per hour than 67k clips re-annotated at 0.1 second resolution. It should be settled instead by what the system will be asked to promise. It should also be settled before the architecture. The architecture can be swapped out in an afternoon. The corpus cannot.
A boundary the annotation never recorded is one no later model can recover — it can only be bought again, clip by clip.
Case
TIMIT: 630 speakers, and 61 categories someone chose
The expensive unit is the one with times attached, and the corpus that made that expense ordinary is still cited today. TIMIT was published in 1993 by the Linguistic Data Consortium. Its catalogue entry describes it plainly: “TIMIT contains broadband recordings of 630 speakers of eight major dialects of American English, each reading ten phonetically rich sentences.” The recordings are broadband 16-bit at 16 kHz. What gave the corpus its value was not the audio. It was the time-aligned orthographic, phonetic and word transcriptions that ship beside it, hand verified. The population is itself a recorded choice rather than a neutral sample: about 70% of the 630 speakers are men, 30% women.
Even there, the unit stayed a choice rather than a fact about speech. Graves and Schmidhuber introduced Connectionist Temporal Classification in 2006, and they wrote down what they had inherited: “It has a lexicon of 61 distinct phonemes, and comes divided into training and test sets containing 4620 and 1680 utterances respectively.” Those 61 categories became a softmax output layer of size 62 — the 61 phoneme categories plus the blank label. The choice produced specific numbers. CTC with prefix search decoding reached a label error rate of 30.51 ± 0.19%. A context-independent HMM reached 38.85%, a context-dependent HMM 35.21%, a BLSTM/HMM hybrid 33.84 ± 0.06%.
A lexicon of 61 is a decision, not a property of the recordings. Another project, drawing its boundaries elsewhere, would get different numbers from the same 630 speakers. That is the ordinary condition of annotated audio. The AudioSet mistake was not that ten seconds was chosen badly. It was that the choice went unmarked until someone paid to undo it.
Example
Every workflow cuts the audio differently
Those 61 categories, and that 4620/1680 split into utterances, serve one task. Change the task and the cut moves. What settles one case settles none of the four workflows below. The only thing they share is that each has to make the choice out loud. Each also has its own way of getting it wrong.
- In speech recognition the utterance is the unit. Where its boundaries fall is what changes the system's deletions, its insertions, and how long it makes the speaker wait. TIMIT handed CTC 4620 training and 1680 test utterances already cut. A corpus that arrives pre-segmented hides that someone did the cutting.
- Diarization breaks the moment two people talk at once. The DIHARD challenges wrote that into the scoring rather than around it: “Contrary to practice in the NIST RT evaluations, NO forgiveness collar will be applied to the reference segments prior to scoring and overlapping speech WILL be evaluated.” In DIHARD III, 30 organizations forming 21 teams submitted 499 valid system outputs across 11 domains. Median track-1 DER fell under 20% overall. For meeting speech, web videos and restaurant recordings it ran at 35% to 45%.
- Sound event work runs into the granularity problem head on. Weak clip tags cannot directly supervise a precise boundary. That is why 67k clips had to be re-annotated at 0.1 second resolution beside the 1.8M labelled at 10 sec resolution.
- Music is annotated at several time scales at once — notes, beats, sections, and a genre attached to the whole track. A scheme that picks one of them can answer only one kind of question.
Key idea
Agreement is not proof the ontology is right
Annotation looks solid right up to the point where one of four habits takes hold. Each of them quietly stops the labelling scheme from supporting the claims being made from it. The first is training clip tags for a requirement written at a finer resolution. The second is forcing one label onto overlapping acoustic sources. The third is treating annotator agreement as proof that the ontology is valid. The fourth is dropping the uncertain and the unknown cases from training and evaluation alike.
The fourth is the one that hides the other three, and it has a published alternative. Martín-Morató and Mesaros put the difficulty in one sentence in 2021: “This raises the problem of data reliability, in addition to the general question of how to combine the opinions of multiple annotators in order to estimate the ground truth.” They adapted Krippendorff's alpha and multi-annotator competence estimation (MACE) to multi-label audio. The MATS dataset released alongside does what the fourth habit forbids. It publishes raw and processed annotations from 133 annotators over 3,930 audio files across ten sound classes. Majority-voting, union and MACE resolutions sit side by side, rather than one averaged truth.
Where two people place a soft onset, a reverberant offset, an overlapping source or an ambiguous word, their disagreement is not noise in the annotation. It is a measurement of where the boundary genuinely is unclear. And 133 annotators' raw opinions on 3,930 files are worth more kept than collapsed. Precision offers no way around this. A finer timestamp records a disputed boundary to more decimal places and settles nothing.
Clip tags trained for one granularity cannot back a finer promise; the release requirement, not the convenience of the labels, decides what has to be annotated.
Comparison
Somewhere in the file, or exactly when
One distinction sits under all four habits, and each of its three kinds has a canonical corpus behind it. A clip-level label says that a property occurs somewhere in a recording and nothing at all about where. Its canonical form is AudioSet, described on its own project page: “AudioSet consists of an expanding ontology of 632 audio event classes and a collection of 2,084,320 human-labeled 10-second sound clips drawn from YouTube videos.” That is 5.8 thousand hours, with 527 classes actually annotated in the released data. Every tag records presence within the ten-second window and nothing about onset or offset.
A strong temporal label carries the where — the 67k AudioSet clips re-annotated at roughly 0.1 second resolution. A sequence annotation carries the order and the content as well. That is what TIMIT's time-aligned orthographic, phonetic and word transcriptions are, and what a lexicon of 61 distinct phonemes is used to write. They cost more in that order. They answer different questions in that order. Each has to be checked in a different way. Reading one as though it were another is how 2,084,320 ten-second tags end up standing behind a claim about when a sound began.
Clip-level label
Indicates that a property occurs somewhere in a recording.
- Decision focus: Define the ontology
- Useful evidence: Boundary-tolerant event precision and recall
- Watch for: Training clip tags for a frame-level release requirement
- Best used when its assumptions are documented for audio units, segmentation, labels, and timestamps
Strong temporal label
Marks onset and offset, with explicit boundary tolerance.
- Decision focus: Choose the temporal unit
- Useful evidence: Inter-annotator agreement with prevalence and unit stated
- Watch for: Forcing one label onto overlapping acoustic sources
- Best used when its assumptions are documented for audio units, segmentation, labels, and timestamps
Sequence annotation
Represents ordered words, phones, notes, speakers, or structured events.
- Decision focus: Specify boundary policy
- Useful evidence: Unknown, uncertain, and overlap coverage
- Watch for: Treating annotator agreement as proof that the ontology is valid
- Best used when its assumptions are documented for audio units, segmentation, labels, and timestamps
Visual
Write the boundary policy down first
So the boundary policy goes on paper before any annotator starts. It goes on paper because four separate choices are about to be compressed into a single score: what is measured, what is modeled, what the system decides, and how any of it is verified. The DIHARD evaluation plan is what a written policy looks like when it is done in public. No forgiveness collar on the reference segments, overlapping speech evaluated, both stated before any system was submitted. That rule is why DIHARD III could report 35% to 45% DER on meeting speech, web videos and restaurant recordings, instead of a comfortable single number across 11 domains.
A written policy is also the only way to put the ontology itself under test. Annotators can disagree only about labels the scheme already offers them. An agreement figure measures how consistently people apply the categories they were handed. It says nothing about whether those were the right categories — a lexicon of 61 phonemes, an ontology of 632 audio event classes of which 527 are annotated, ten sound classes in MATS. The categories have to be argued with directly, and it has to happen before annotation volume makes them permanent. At 2,084,320 clips they are permanent.
Define the ontology
State classes, exclusions, hierarchy, unknown cases, and multi-label rules.
Choose the temporal unit
Match annotation granularity to the latency and decision the product requires.
Specify boundary policy
Define tolerance, overlap, truncation, partial events, and uncertain regions.
Measure annotation behavior
Track agreement, adjudication, prevalence, and systematic disagreement by slice.
Labels the ontology allows are the only ones annotators can disagree about, so measuring their behavior tests the annotators and never the ontology.
Example
Precision means nothing without a tolerance
Boundary-tolerant event precision and recall are computed against a tolerance somebody chose. The community that uses them most has written that choice down. The metrics come from a 2016 paper that leaves the collar as a free parameter of the sed_eval toolbox. That paper cites ±100 ms in DCASE 2013 and 250 ms in DCASE 2016, with the offset condition being the same collar or 50% of the reference event duration. DCASE 2017 fixed the parameter and published it: “An event in the system output is considered correctly detected if its temporal position is overlapping with the temporal position of an event with the same label in the ground truth. A tolerance is allowed for the onset and offset (200 ms for onset and 200 ms or half length for offset)”. Its segment-based metrics, separately, score activity on a fixed one-second grid.
That is the whole point. The same system scored on a one-second grid and scored at 200 ms is being asked two different questions. A collar that moved from ±100 ms in 2013 to 250 ms in 2016 to 200 ms in 2017 is not a property of sound. The figures become readable only beside four things: the unit they were computed in, who was labelled and how many of them, how uncertain the number is, and what the recording setup was.
- For the core task, report boundary-tolerant event precision and recall. Never report them without the tolerance they assume. 200 ms for onset and 200 ms or half length for offset is a stated default, not a universal one.
- For how the scheme behaves in human hands, report inter-annotator agreement with the prevalence and the unit stated, since agreement moves with both. MATS publishes majority-voting, union and MACE resolutions side by side rather than choosing one.
- For robustness, report coverage of the unknown, the uncertain and the overlapping cases — the material the fourth habit discards, and the material DIHARD III scored with no forgiveness collar.
- For the lifecycle, report label delay, adjudication cost and correction rate. Those tell you whether this scheme survives another year of incoming data, or whether it ends with 67k clips re-annotated at 0.1 second resolution.
Report boundary-tolerant event precision and recall together with the collar they assume, and beside label delay, adjudication cost, and correction rate.
Steps
Write an annotation handbook page
The handbook page is where all of this becomes somebody's job. Write one for a scheme you are using now. Write it so that a colleague could pick it up and challenge a clip-level tag against a finer release requirement without needing you in the room. Three things have to be on the page: what your definition of the ontology assumes, one counterexample the definition handles badly, and what a measurement of how annotators actually behave would then oblige you to change.
The counterexample is the part people skip, and the record shows what skipping it costs. AudioSet reached 2,084,320 clips before anyone measured, in print, that a strong-labeled subset of 67k clips could move d' from 1.13 to 1.41. MATS spent 133 annotators on 3,930 files precisely to keep the disagreements visible. An afternoon spent on the awkward cases is the cheaper version of both.
1. Provide positive and negative examples
Include near misses, overlaps, and ambiguous cases.
2. Draw temporal examples
Show how to label onset, offset, partial capture, and silence.
3. Define uncertainty
Allow annotators to record doubt instead of inventing certainty.
4. Pilot and revise
Analyze disagreements before scaling annotation volume.
Disagreements are the handbook's real material; scale the annotation volume before reading them and you multiply one bad definition across the whole corpus.
Key takeaways
- Choose the annotation unit against what the system will be asked to promise, not against what is cheap to collect. AudioSet's 2,084,320 ten-second clips were cheap. Undoing that unit cost 67k clips re-annotated at roughly 0.1 second resolution, years later.
- A boundary nobody recorded is one no later model can recover, and added timestamp precision does not put it back. Only re-annotation does. When it was finally paid for, it moved d' from 1.13 to 1.41 for a ResNet50.
- Clip-level labels, strong temporal labels and sequence annotations answer related but different questions. A tag recording presence within a ten-second window is not evidence about onset, however many million of them there are.
- High inter-annotator agreement tells you people applied your categories consistently. It never tells you the categories were right. 61 distinct phonemes, 632 audio event classes with 527 annotated, ten sound classes — each is a decision someone made.
- Keep the uncertain, unknown and overlapping cases in both training and evaluation. MATS releases 133 annotators' raw opinions on 3,930 audio files with majority-voting, union and MACE side by side, and DIHARD III scored overlapping speech with no forgiveness collar.
- Never report boundary-tolerant event precision and recall without the collar they assume — ±100 ms in DCASE 2013, 250 ms in DCASE 2016, 200 ms for onset and 200 ms or half length for offset in DCASE 2017. Pair them with label delay, adjudication cost and correction rate.