From e96a2b315301e056df6f69ad96070361eb264cd2 Mon Sep 17 00:00:00 2001 From: Xin Wang Date: Wed, 16 Sep 2026 01:55:24 +0800 Subject: [PATCH] revise manuscript method and add architecture figure --- manuscript/main/Makefile | 10 +- manuscript/main/README.md | 7 +- manuscript/main/figures/.gitignore | 4 + .../main/figures/method_architecture.pdf | Bin 0 -> 84405 bytes .../main/figures/method_architecture.tex | 97 +++++++++ manuscript/main/main.tex | 186 +++++++++--------- 6 files changed, 212 insertions(+), 92 deletions(-) create mode 100644 manuscript/main/figures/.gitignore create mode 100644 manuscript/main/figures/method_architecture.pdf create mode 100644 manuscript/main/figures/method_architecture.tex diff --git a/manuscript/main/Makefile b/manuscript/main/Makefile index e671c8d..aa235be 100644 --- a/manuscript/main/Makefile +++ b/manuscript/main/Makefile @@ -1,10 +1,16 @@ LATEXMK ?= latexmk -.PHONY: all clean +.PHONY: all clean figure -all: +all: figures/method_architecture.pdf mkdir -p build $(LATEXMK) -pdf -interaction=nonstopmode -halt-on-error -outdir=build main.tex +figure: figures/method_architecture.pdf + +figures/method_architecture.pdf: figures/method_architecture.tex + $(LATEXMK) -pdf -interaction=nonstopmode -halt-on-error -outdir=figures $< + clean: $(LATEXMK) -C -outdir=build main.tex + $(LATEXMK) -c -outdir=figures figures/method_architecture.tex diff --git a/manuscript/main/README.md b/manuscript/main/README.md index b5ec23f..72ff270 100644 --- a/manuscript/main/README.md +++ b/manuscript/main/README.md @@ -26,13 +26,18 @@ Current source layout: main/ main.tex references.bib + figures/ + method_architecture.tex # reproducible TikZ source + method_architecture.pdf # manuscript-ready vector figure latexmkrc Makefile README.md build/ # generated, ignored ``` -The manuscript is intentionally a content skeleton with visible TODOs. Do not +Running `make` regenerates the method figure when its TikZ source changes +before compiling the manuscript. The manuscript is intentionally a content +skeleton with visible TODOs. Do not turn planned implementations, controls, or results into completed claims. The frozen paper story is documented in diff --git a/manuscript/main/figures/.gitignore b/manuscript/main/figures/.gitignore new file mode 100644 index 0000000..dd57b0b --- /dev/null +++ b/manuscript/main/figures/.gitignore @@ -0,0 +1,4 @@ +method_architecture.aux +method_architecture.fdb_latexmk +method_architecture.fls +method_architecture.log diff --git a/manuscript/main/figures/method_architecture.pdf b/manuscript/main/figures/method_architecture.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5796102613f29902a229a36c5876715bbc25b8fe GIT binary patch literal 84405 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, + flow/.style={-{Latex[length=2.0mm]}, line width=0.65pt, draw=navy}, + aux/.style={-{Latex[length=1.8mm]}, line width=0.6pt, draw=teal}, + box/.style={draw=navy, rounded corners=1.5pt, line width=0.65pt, + fill=bluefill, minimum height=7mm, align=center, inner sep=2.3pt}, + localbox/.style={box, draw=teal, fill=tealfill}, + residualbox/.style={box, draw=orange, fill=orangefill}, + labelbox/.style={align=center, text=navy}, + note/.style={font=\sffamily\tiny, text=grayline, align=center} +] + +\node[labelbox] (av) at (0,2.65) {causal full-scene AV\\prefix $\mathcal X_{\leq t_n}$}; +\node[box, right=7mm of av, minimum width=24mm] (qwen) {frozen\\Qwen2.5-Omni}; +\node[box, right=8mm of qwen, minimum width=12mm] (g) {global\\$G_{t_n}$}; + +\node[labelbox] (audio) at (0,1.45) {mixed audio\\$\leq t_n$}; +\node[localbox, right=7mm of audio, minimum width=24mm] (cpc) {frozen causal CPC\\25-Hz processing}; +\node[localbox, right=8mm of cpc, minimum width=12mm] (u) {shared\\$U_{t_n}$}; + +\node[labelbox] (faces) at (0,0.15) {visible face crops\\$\leq t_n$}; +\node[localbox, right=7mm of faces, minimum width=24mm] (asd) {frozen causal AV/ASD\\25-Hz processing}; +\node[localbox, right=8mm of asd, minimum width=20mm] (persons) {anonymous set\\$\mathcal P_{t_n}=\{[V_i;s_i]\}$}; + +\node[box, minimum width=21mm] (base) at (8.25,2.05) {$G+U$ base head\\$Z^{\rm base}_{t_n}$}; +\node[localbox, minimum width=22mm] (attn) at (8.25,0.70) {masked person MHA\\query: $G_{t_n}+U_{t_n}$\\\scriptsize memory: $\mathcal P_{t_n}+$ NULL}; +\node[residualbox, minimum width=19mm] (res) at (10.65,0.70) {zero-init residual\\$\Delta Z_{t_n}$}; +\node[circle, draw=navy, fill=white, line width=0.7pt, + minimum size=5.5mm, inner sep=0pt] (sum) at (11.55,2.05) {$+$}; +\node[box, minimum width=21mm] (out) at (13.15,2.05) {$10\!\times\!3$ future activity\\$0.2$--$2.0$ s}; + +\draw[flow] (av) -- (qwen); +\draw[flow] (qwen) -- (g); +\draw[aux] (audio) -- (cpc); +\draw[aux] (cpc) -- (u); +\draw[aux] (faces) -- (asd); +\draw[aux] (asd) -- (persons); +\draw[flow] (g.east) -| ($(base.west)+(-0.25,0.12)$) -- (base.west); +\draw[aux] (u.east) -| ($(base.west)+(-0.25,-0.12)$) -- (base.west); +\draw[flow] (g.east) -- ++(0.3,0) |- (attn.north west); +\draw[aux] (u.east) -- ++(0.5,0) |- (attn.west); +\draw[aux] (persons.east) -- (attn.west); +\draw[flow] (base) -- (sum); +\draw[aux] (attn) -- (res); +\draw[flow, draw=orange] (res.north) |- (sum.south); +\draw[flow] (sum) -- (out); + +\node[note, below=1.5mm of base] {trained first, then frozen}; +\node[note, below=1.2mm of res] {trainable adaptation}; + +\draw[grayline, line width=0.45pt] (-0.15,-0.62) -- (14.35,-0.62); +\node[anchor=west, font=\sffamily\scriptsize\bfseries, text=navy] + at (-0.05,-0.92) {Causal streaming at cutoff $t_n$}; + +\node[anchor=east, text=navy] at (2.25,-1.45) {Omni input}; +\draw[fill=bluefill, draw=navy, line width=0.55pt] (2.45,-1.67) rectangle (4.35,-1.23); +\draw[fill=bluefill, draw=navy, line width=0.55pt] (4.35,-1.67) rectangle (6.25,-1.23); +\node[text=navy] at (3.40,-1.45) {cached 2-s blocks}; +\node[text=navy] at (5.30,-1.45) {$\cdots$}; +\draw[fill=orangefill, draw=orange, line width=0.65pt] (6.25,-1.67) rectangle (9.15,-1.23); +\node[text=orange] at (7.70,-1.45) {current partial block}; +\draw[dashed, draw=orange, line width=0.8pt] (9.15,-2.90) -- (9.15,-1.02); +\node[anchor=south, text=orange, font=\sffamily\tiny\bfseries] at (9.15,-1.02) {$t_n$}; +\node[note, anchor=west] at (9.40,-1.45) {latest observed input included\\up to 8-s rolling budget}; + +\node[anchor=east, text=teal] at (2.25,-2.15) {local encoder}; +\foreach \x in {2.55,2.85,...,8.85} { + \draw[draw=teal, line width=0.55pt] (\x,-2.33) -- (\x,-1.97); +} +\draw[draw=teal, line width=0.55pt] (2.55,-2.15) -- (9.15,-2.15); +\node[note, anchor=west, text=teal] at (9.40,-2.15) {25 Hz internal states}; + +\node[anchor=east, text=navy] at (2.25,-2.72) {forecast grid}; +\draw[draw=navy, line width=0.65pt] (2.55,-2.72) -- (9.15,-2.72); +\foreach \x/\lab in {3.15/0.2,4.65/0.4,6.15/0.6,7.65/0.8,9.15/$t_n$} { + \draw[draw=navy, line width=0.75pt] (\x,-2.92) -- (\x,-2.52); + \node[below=0.5mm, font=\sffamily\tiny, text=navy] at (\x,-2.92) {\lab}; + \draw[-{Latex[length=1.4mm]}, draw=teal, line width=0.55pt] (\x,-2.32) -- (\x,-2.50); +} +\node[note, anchor=west, text=navy] at (9.40,-2.72) {5 Hz fusion and prediction\\every fifth local right edge}; + +\end{tikzpicture} +\end{document} diff --git a/manuscript/main/main.tex b/manuscript/main/main.tex index ce1926c..0d4a062 100644 --- a/manuscript/main/main.tex +++ b/manuscript/main/main.tex @@ -107,117 +107,125 @@ corresponding TODO gates pass: positives and explicitly annotated hard-negative opportunity regions. \end{itemize} -\begin{figure}[t] +\begin{figure*}[t] \centering -\fbox{\parbox[c][1.00in][c]{0.94\columnwidth}{\centering -\todo{Draw only the selected method: causal AV to the long-context Omni path; -the short-window mixed-audio and anonymous person-set path; residual fusion; -the common $10\times3$ head; and the separate wearer-entry/INT-yield evaluation. -Mark physical cutoffs, trainable modules, person masks, and NULL/OFFSCREEN. -Do not draw oracle labels, rejected track variants, or multiple backbones.}}} -\caption{Long-context Omni understanding and short-window local floor evidence -for wearer-relative future-activity prediction.} +\includegraphics[width=0.98\textwidth]{figures/method_architecture.pdf} +\caption{Our strictly causal global--local architecture (top) and streaming +alignment (bottom). At every 5-Hz cutoff $t_n$, the global state includes the +latest partial 2-s Omni block, while every fifth causal 25-Hz local state +provides shared audio and an anonymous visible-person set. Masked person +attention contributes only through a zero-initialized residual to the matched +$G+U$ baseline.} \label{fig:method} -\end{figure} +\end{figure*} \section{Method} \label{sec:method} -\subsection{Causal wearer-relative projection} +\subsection{Model Architecture} +\label{sec:model_arch} -At decision time $t$, the model observes only the stream -$\mathcal X_{\leq t}$ and predicts $K=10$ future bins at $\Delta=0.2$~s. For -bin $k$, the multilabel target +At decision time $t$, the model observes only the audiovisual stream +$\mathcal X_{\leq t}$ and predicts $K=10$ future bins spaced by +$\Delta=0.2$~s. For horizon $k$, the multilabel target $\vect y_{t,k}=[y^{\mathrm{bg}},y^{\mathrm{w}},y^{\mathrm{o}}]$ denotes -background, camera-wearer activity, and activity by one or more other people. -Wearer--other overlap is allowed. The model outputs +background, camera-wearer activity, and activity by one or more other people; +wearer--other overlap is allowed. The output is \begin{equation} \hat{\vect Y}_t=f_\theta(\mathcal X_{\leq t}) \in[0,1]^{K\times3}. \label{eq:task} \end{equation} -The wearer-activity forecast also provides causal behavioral scores at every -horizon. At decision time $t$, if the wearer is silent, -$\hat y^{\mathrm w}_{t,k}$ acts as a take-turn score for future bin $k$; if -the wearer is active, $1-\hat y^{\mathrm w}_{t,k}$ acts as a yield score. -These scores are trained only from future activity targets and are not event -hazards or committed controller actions. -Adjudicated wearer-entry and INT-yield events used for behavioral evaluation are -defined separately from participant-resolved annotations in -Sec.~\ref{sec:experiments}. -\subsection{Global Omni baseline} - -Let $\vect g_t\in\mathbb R^{d_g}$ be the causal global readout of -Qwen2.5-Omni at the physical cutoff $t$ \cite{xu2025qwenomni}. The frozen -baseline trains only a dimension-matched prediction head. A matched PEFT/LoRA -baseline updates a pre-registered subset of the Omni model under the same -examples, context, optimizer budget, head, and evaluator. Its purpose is to -test whether generic parameter adaptation is sufficient; one negative recipe -is not interpreted as a general limitation of LoRA or all Omni models. - -\todo{Freeze the exact Qwen2.5-Omni-3B revision, processor, input rates, -streaming/cache semantics, readout layer, context, dtype, LoRA targets/rank, -trainable parameter budget, and cutoff audit. Add Qwen2.5-Omni-7B only as a -capacity-scaling control. MiniCPM-o 4.5 is restricted to the diagnostic -streaming/cache ablation below and does not enter the core method or support a -cross-family superiority claim.} - -\subsection{Causal local floor adapter} - -The candidate local path operates on the most recent $L_\ell$ seconds. At local instant -$\tau\leq t$, a causal audio encoder produces $\vect a_\tau$ from mixed audio. -For the anonymous visible-person set -$\mathcal P_\tau=\{(\vect x_{\tau,i},\vect b_{\tau,i})\}_{i=1}^{N_\tau}$, -a shared visual encoder and masked set operator produce +Our architecture complements globally integrated Omni context with explicitly +accessible local floor evidence (Fig.~\ref{fig:method}). Let +$\vect g_t\in\mathbb R^{d_g}$ denote the causal Qwen2.5-Omni Thinker readout +at $t$ \cite{xu2025qwenomni}. In parallel, the frozen MuVAP ASD frontend +\cite{qi2026muvap} produces one shared mixed-audio CPC state $\vect u_t$ and a +variable-size set of visible-person states \begin{equation} - \vect v_\tau=\mathrm{SetPool} - \left(\{E_v(\vect x_{\tau,i},\vect b_{\tau,i})\}_{i=1}^{N_\tau} - \cup\{\vect v_\varnothing\}\right), - \label{eq:set} + \mathcal P_t=\{\vect p_{t,i}\}_{i=1}^{N_t},\qquad + \vect p_{t,i}=[\vect v_{t,i};s_{t,i}], + \label{eq:person_state} \end{equation} -where $\vect v_\varnothing$ handles an empty or offscreen visible set. The -operator is permutation invariant and uses no participant-ID embedding or -cross-time identity. A causal short-window encoder summarizes local dynamics, +where $\vect v_{t,i}$ is a causal visual state and $s_{t,i}$ is one +audio--visual speaking logit. The shared audio state is not duplicated in +each person token. The prediction model receives neither participant IDs nor +cross-time track identity; provided causal face boxes are used only to isolate +the representation and fusion question. + +A matched global--audio head first maps $[\vect g_t;\vect u_t]$ to baseline +logits $\vect Z_t^{\mathrm{base}}\in\mathbb R^{K\times3}$ and an intermediate +state $\vect h_t$. The same inputs query the current person set: \begin{equation} - \vect \ell_t=F_\ell - \left(\{[\vect a_\tau;\vect v_\tau]\}_{\tau\in(t-L_\ell,t]}\right). - \label{eq:local} + \begin{aligned} + \vect q_t &= W_g\vect g_t+W_a\vect u_t,\\ + \mathcal M_t &= \{W_p\vect p_{t,i}\}_{i=1}^{N_t} + \cup\{\vect p_\varnothing\},\\ + \vect c_t &= \mathrm{MHA}(\vect q_t,\mathcal M_t,\mathcal M_t), + \end{aligned} + \label{eq:person_attention} \end{equation} -The adapter preserves the global initialization through a zero-initialized -residual output, +where masking supports variable cardinality and the learned null token +$\vect p_\varnothing$ makes the attention well defined for an empty set. If +$m_t$ indicates that at least one valid person observation exists, the person +branch supplies only a residual logit correction, \begin{equation} - \vect z_t=\vect g_t+W_o\, - \sigma\!\left(W_g\vect g_t+W_\ell\vect\ell_t\right), - \qquad W_o\vert_{\mathrm{init}}=0, - \label{eq:fusion} + \vect Z_t=\vect Z_t^{\mathrm{base}} + {}+m_t\,\mathrm{reshape}\!\left(W_r[\vect h_t;\vect c_t;m_t]\right), + \qquad W_r\vert_{\mathrm{init}}=0, + \label{eq:residual} \end{equation} -and the common head maps $\vect z_t$ to Eq.~\eqref{eq:task}. This implements an -evidence-access hypothesis rather than adding an unconstrained second model: -the global path retains broad context, while the local path preserves timely -floor evidence. +and $\hat{\vect Y}_t=\mathrm{softmax}_c(\vect Z_t)$. Thus, after copying and +freezing the trained $G+U$ head, the complete model initially reproduces that +baseline exactly; only the person projection, query, masked attention, and +residual readout are trained in the adaptation stage. -\todo{Freeze $L_\ell$, local audio/video rates, crop source and resolution, -set pooling, causal temporal encoder, masks, reset rules, parameter count, and -latency. If the local path runs faster than the 5-Hz global/output grid, compare -it with a same-parameter 5-Hz variant before using the term ``dual-rate.'' Use -provided causal boxes only as a clearly labeled method-isolation condition; -online detection/tracking is not a paper contribution unless actually run.} - -\subsection{Training} - -The primary objective is class-balanced binary cross entropy over valid -horizons and activity channels, +We use the EgoSpeak/LSTR multi-positive cross-entropy over causal-valid rows, \begin{equation} - \mathcal L_{\mathrm{act}}= - \sum_{t,k,c}m_{t,k}w_c\, - \mathrm{BCE}(\hat y^c_{t,k},y^c_{t,k}). + \begin{aligned} + \mathcal L&=-\frac{1}{M}\sum_{t,k,c}m_{t,k}y^c_{t,k} + \log\mathrm{softmax}_c(\vect Z_{t,k}),\\ + M&=\sum_{t,k}m_{t,k}. + \end{aligned} \label{eq:loss} \end{equation} -No transcript, target-of-speech label, close microphone, future frame, or -per-person speech label enters the deployable model. \todo{Add an active-speaker -or event auxiliary loss only if it improves the frozen primary protocol and -its label/input boundary is fully reported.} +For an overlap target, both active channels contribute a log-probability term. +No transcript, target-of-speech annotation, close-microphone signal, speech +label, or future observation is supplied to the forecasting model. The +wearer forecast is interpreted only at evaluation time: it is an entry proxy +when the wearer is silent and its complement is a yield proxy when the wearer +is active, not a trained event hazard or committed controller action. + +\subsection{Causal Streaming Architecture} +\label{sec:causal_streaming} + +We distinguish encoder processing granularity from the common forecasting +rate. Predictions are emitted at $t_n=n\Delta$, $n\geq1$, while every +representation used at $t_n$ is restricted to media available by that physical +cutoff. + +The global path uses an 8-s rolling causal presentation budget with +source-aligned 2-s audiovisual blocks. Completed blocks are cached and +replayed, while the currently incomplete block is a temporary tail. At every +200-ms cutoff, the tail is rebuilt with all newly observed audio and video and +included in computing $\vect g_{t_n}$; when it reaches 2~s, it is committed to +the reusable history. Consequently, the Omni state is not held constant for +2~s: it includes the latest available content at every decision cutoff without +observing media after $t_n$. We retain the final four Thinker query-layer +states and fuse them in the matched head with a concatenation MLP. + +The local frontend operates causally at 25~Hz. State $j$ consumes the +half-open interval $[j/25,(j+1)/25)$ and is timestamped at its right edge. +Mixed audio is encoded once as a continuous shared CPC stream, while each +available face crop is processed by the causal visual and audio--visual +speaking modules. Ten-second extraction chunks may prepend up to 2~s of past +context, never future context. At a 5-Hz forecasting cutoff, we select the +local state whose right edge equals $t_n$; hence every fifth 25-Hz state aligns +with one Omni prediction row. The two paths therefore describe the same +causal prefix: the Omni path preserves integrated conversational context, +whereas the local path exposes fine-grained audio and visible-person floor +evidence. Fusion and prediction occur only on the common 5-Hz grid. \section{Experiments} @@ -301,8 +309,8 @@ matched PEFT/LoRA adaptation, global features with recent local audio, a parameter- and history-matched temporal local branch, and the proposed causal local audio--visual adapter. Qwen2.5-Omni-7B is used as a capacity-scaling control. All learned variants use identical causal examples, prediction -horizons, prediction heads, and the class-balanced binary cross-entropy -objective in Eq.~\eqref{eq:loss}. +horizons, prediction heads, and the multi-positive cross-entropy objective in +Eq.~\eqref{eq:loss}. The diagnostic streaming ablation additionally uses MiniCPM-o 4.5 \cite{cui2026minicpmo45}. Its native cached stream is evaluated at its native