Update llm assisted annotation

This commit is contained in:
Xin Wang
2026-09-14 23:04:21 +08:00
parent 068b7ab9e6
commit 06b5e6c385
12 changed files with 1348 additions and 238 deletions

View File

@@ -514,6 +514,130 @@ signed latency, causal-control evidence, and main limitation. If no learned
variant passes these tests, reframe the submission as an information audit or
do not make the method claim.}
\appendix
\section{LLM-Assisted Behavioral Event Annotation}
\label{app:event_annotation}
EasyCom provides participant-resolved speech intervals, transcripts, and
target-of-speech metadata, but raw speech transitions do not uniquely specify
conversational floor function. A wearer onset can be a genuine floor entry, a
backchannel, or a within-turn resumption; a wearer offset can reflect yielding,
natural completion, or a temporary pause. We therefore construct a separate
behavioral-event layer while preserving the original speech intervals used for
dense activity targets. The pipeline has three stages: deterministic candidate
construction, language-model-assisted semantic pre-labeling, and mandatory
human adjudication. The language model never supplies final ground truth.
\subsection{Deterministic candidate construction}
\textbf{Floor-level wearer entries.}
Raw wearer onsets are conditionally grouped into floor-level episodes. Let
$g$ be the silence from the preceding wearer offset to a new raw onset. In the
current audit configuration, an onset is stored as a
\textsc{Wearer-Resume} control rather than proposed as an EOT entry when
$g\leq0.8$~s and the gap contains no plausible competing non-wearer floor
activity. A non-feedback contribution that occupies at least $0.4$~s of the
gap, or continues across the resumed wearer onset, conservatively preserves a
new entry candidate. A short ($\leq1.0$~s) feedback-like lexical or nonverbal
contribution is retained as evidence but does not by itself split the wearer
episode. These rules group events only; they do not modify the source
annotations.
Following each candidate non-wearer release, the generator opens an EOT
opportunity and scans forward until a floor-level wearer entry or a competing
non-wearer onset terminates it. A retained \textsc{Wearer-Onset} candidate
therefore contains two immutable anchors: the non-wearer release
(\emph{opportunity anchor}) and the subsequent floor-level wearer onset
(\emph{behavior anchor}). The response delay is stored explicitly. Silence
duration alone does not cancel the opportunity; an unpaired wearer onset is
kept only as an audit control and does not enter the primary EOT queue.
\textbf{EOT hard negatives.}
Two participant-resolved timing rules independently propose regions in which
the wearer should remain silent. A \textsc{Same-Speaker-Pause} region is
created when a non-wearer resumes within 2~s and both the wearer and all other
participants remain silent in the intervening gap. An
\textsc{Other-to-Other} region is created when a different non-wearer begins
within 1.5~s, the original speaker does not first resume, and the wearer stays
silent through the handover. The semantic pre-labeler can additionally assign
\textsc{EOT-Wearer-Backchannel} to a floor-level onset that is interpretable
as feedback rather than a response.
\textbf{INT candidates and hard negatives.}
Let $t_w$ be the start of the current floor-level wearer episode, $t_o$ a new
non-wearer onset, and $t_y$ the episode-ending wearer offset. A potential
\textsc{INT-Yield} is proposed only when
\begin{equation}
t_w < t_o < t_y < t_o^{\mathrm{off}},
\label{eq:int_candidate}
\end{equation}
with a one-frame (50-ms) tolerance only at the offset boundary in the current
audit. Thus the competing activity must begin after the wearer acquired the
floor and must continue across the wearer yield. Pre-existing non-wearer
activity, post-completion onsets, offsets internal to merged wearer episodes,
and offsets without crossing activity are retained separately as
\textsc{Wearer-Offset-Control} records and are not sent for semantic
pre-labeling. Thus ordinary completion-to-silence cases do not enter the
primary INT review queue.
INT hard-negative regions are also proposed without requiring a wearer
offset. If a non-wearer contribution ends while the wearer remains active
throughout it and for at least another 0.4~s, the region is labeled by rule as
\textsc{INT-Other-Backchannel} when it is short and feedback-like, and
\textsc{INT-Non-Takeover-Overlap} otherwise. These timing labels are candidate
priors, not final semantic annotations.
\subsection{Semantic pre-labeling}
For every primary candidate, the annotation assistant receives the candidate
source and rule type, immutable timestamps, participant-resolved activity,
neighboring onsets and offsets, gap and overlap measurements, transcript
context, and target-of-speech metadata when available. Participant identities
are used only inside this annotation package. The assistant is instructed to
treat timing as factual, not to invent prosody, gaze, gesture, intention, or
other unavailable cues, and not to equate onset with floor entry, offset with
yield, silence with EOT, or overlap with interruption. EasyCom's \texttt{[L]}
marker is treated as evidence of laughter only: it is not by itself a sustained
floor take or takeover.
The allowed decisions are \textsc{Positive}, \textsc{Hard-Negative},
\textsc{Not-Applicable}, \textsc{Exclude}, and \textsc{Unsure}. Positive
events are typed as \textsc{EOT-Response} or \textsc{INT-Yield}; hard
negatives use a fixed subtype vocabulary. The current pre-labeling run uses
\texttt{deepseek-v4-flash}, temperature zero, and two passes: a primary pass
and a skeptical pass that seeks alternative explanations. If they disagree on
the verdict, event type, or hard-negative subtype, the combined suggestion is
\textsc{Unsure}. Model identifier, prompt version, per-request prompt hashes,
both raw decisions, confidence values, and explanations are stored with every
candidate.
\subsection{Human adjudication and scoring eligibility}
Every AI-pre-labeled candidate enters an event-centered interface containing
the original video, local participant timeline, transcript, deterministic
timing evidence, and the AI suggestion. The adjudicator performs one primary
action: accept the complete AI label, relabel it, or exclude an unscorable
sample. Relabeling exposes the same constrained verdict, event-type, and
hard-negative subtype vocabulary. A confidence level is required; notes are
optional, and an optional $\pm0.2$~s boundary correction is available only for
an evident source-annotation error. The original event time is always retained.
Only the completed human decision is eligible to become semantic ground truth.
\textsc{Not-Applicable} denotes a valid observation outside the committed
EOT/INT task, whereas \textsc{Exclude} denotes a region that cannot be scored
reliably because of annotation corruption, a recording boundary, missing
context, timestamp corruption, or another unresolved defect. Neither category
enters the primary event denominator. Transcripts, participant identities,
target-of-speech metadata, annotation-model outputs, and future observations
are never inputs to the evaluated forecasting model.
\todo{Before freezing this annotation protocol, audit randomly sampled
continuous timeline segments without candidate hints to estimate candidate
recall for EOT, INT, and each hard-negative family. Independently double-label
a pre-registered subset, report its size and agreement statistic, freeze all
candidate parameters and prompt/model identifiers on Sessions 4--12, and
report final candidate, control, exclusion, and adjudicated-label counts.}
\bibliographystyle{IEEEbib}
\bibliography{references}