# Cross-Channel Scattering Front End

- ID: 599
- Canonical URL: https://synthcore.org/idea/599/cross-channel-scattering-front-end
- API JSON: https://synthcore.org/api/idea/599.json
- API Markdown: https://synthcore.org/api/idea/599.md
- Verification status: mech_ok_no_baseline
- Source: [arXiv:2607.08855](https://arxiv.org/abs/2607.08855)
- Category: architecture
- Solves: accuracy, sample-efficiency, stability
- ML areas: embedding, graph-nn, cnn, transformer
- Math tags: harmonic-analysis, complex-analysis, functional-analysis
- Ratings: usefulness 6/10; difficulty 4/10; novelty 7/10

## Idea description

Add a differentiable SNST layer before an EEG classifier or sequence model. For every local channel pair and wavelet band, compute the magnitude of the complex cross-channel analytic response, then average it over a controllable temporal window and concatenate it with ordinary channelwise features. This gives the model an explicit, phase-robust amplitude-coupling representation that is especially useful when labeled training data are scarce.

## Mathematical statement

The paper's first-order single-channel scattering coefficient is $S_{1}^{\mathrm{WST}}(t,\lambda)=\big(|x*\psi_{\lambda}|*\phi_J\big)(t)$, where $x$ is a scalar signal, $\psi_{\lambda}$ is a band-pass wavelet centered at scale or frequency $\lambda$, $\phi_J$ is a low-pass averaging window with invariance scale $T=2^J$, and $*$ denotes convolution. The multichannel SNST replaces the pointwise modulus with $U_1(t;m,n,\lambda)=\left|(x_m*\psi_{\lambda})(t)\cdot(x_n*\psi_{\lambda})^*(t)\right|$, where $x_m,x_n$ are two distinct channels and $^*$ is complex conjugation. The pooled feature is $S_1(t;m,n,\lambda)=\big(U_1(\cdot;m,n,\lambda)*\phi_J\big)(t)$, using the same temporal averaging idea as scattering. Since $|ab^*|=|a||b|$, this feature measures joint band-limited amplitude envelopes while discarding the phase of the cross-product. The neural adaptation uses learnable or fixed complex wavelets $\psi_\lambda$, local channel pairs $(m,n)$ from a sensor graph, and a differentiable magnitude $\sqrt{\operatorname{Re}(q)^2+\operatorname{Im}(q)^2+\epsilon}$.

## Key formulas

- $$S_{1}^{\mathrm{WST}}(t,\lambda)=\big(|x*\psi_{\lambda}|*\phi_{J}\big)(t)$$
- $$U_{1}(t;m,n,\lambda)=\left|(x_m*\psi_{\lambda})(t)\cdot(x_n*\psi_{\lambda})^{*}(t)\right|$$
- $$S_{1}(t;m,n,\lambda)=\big(U_1(\cdot;m,n,\lambda)*\phi_J\big)(t)$$
- $$\widetilde{U}_{1}(t;m,n,\lambda)=\sqrt{\operatorname{Re}(z_m^\lambda(t)z_n^\lambda(t)^*)^2+\operatorname{Im}(z_m^\lambda(t)z_n^\lambda(t)^*)^2+\epsilon},\quad z_m^\lambda=x_m*\psi_\lambda$$

## Implementation notes

(1) Integration point: place this layer immediately after input normalization and before a temporal CNN, graph neural network, or Transformer. The input is a batch $X\in\mathbb{R}^{B\times C\times T}$, with $C$ sensor channels. Choose 4-8 wavelet bands and a sensor adjacency list containing spatially neighboring pairs; do not form all $C^2$ pairs initially. Use complex Morlet filters implemented as two real 1-D convolutions, or use fixed filters for the first experiment. For each band $\lambda$, compute complex responses $Z[:,m,\lambda,:]=(X_m*\psi_\lambda)$ and pairwise products only for $(m,n)$ in the adjacency list. Concatenate the pooled SNST features with the original input or with channelwise scattering features. (2) Pseudocode: `Z = complex_conv1d(X, psi)`; `for lambda in bands: for (m,n) in edges: q = Z[:,m,lambda,:] * conj(Z[:,n,lambda,:]); u = sqrt(real(q)**2 + imag(q)**2 + eps); s = depthwise_avg_pool(u, kernel_size=2**J); features.append(s)`; `H = concat(features, baseline_features)`; `loss = cross_entropy(classifier(H), y)`. The displayed $U_1$ formula is the computation of `u`, and the displayed $S_1$ formula is the averaging operation. (3) Mathematical quantities are the complex wavelet responses, conjugate products, magnitude, and low-pass pooling. Estimate no statistics from the paper; select $J$ so that $2^J$ is between 50 and 250 ms of data, and optionally learn a positive scalar multiplier per band after initialization. Normalize each pair feature using training-set mean and variance, with the normalization statistics frozen for validation and test. To limit redundancy, share a linear projection across all edge features or retain only the top-$K$ spatial edges by validation performance. (4) First experiment: use BCI Competition IV-2a, 4-class motor-imagery EEG, with a small 2-layer temporal CNN or EEGNet baseline. Compare raw-input EEGNet, channelwise scattering plus classifier, and channelwise scattering plus SNST edge features under identical parameter budgets and five subject-wise seeds. The primary success signal is higher held-out accuracy or macro-F1 at equal labels and FLOPs; a useful secondary signal is a larger accuracy gain in the first 10-20% of the training data and lower seed-to-seed variance. Also ablate conjugation, edge locality, and temporal pooling to verify that the gain comes from cross-channel amplitude coupling rather than simply adding filter-bank capacity.

## Verification

- Status: mech_ok_no_baseline
- Mechanism evidence: yes
- Mechanism confirmed: yes
- Practical verdict: no_effect
- Verdict: Built a differentiable fixed-Morlet Cross-Channel Scattering front end with local edge pairing, complex conjugate products, differentiable magnitude, and temporal averaging. The numerical checks confirmed |z_m z_n*|=|z_m||z_n|, phase invariance, and exact agreement with an independent implementation to floating-point precision. On the scarce-label synthetic amplitude-coupling task, SNST achieved 0.5406 +/- 0.0181 accuracy versus 0.5104 +/- 0.0053 for the raw CNN across three seeds, a promising but modest signal; this is not evidence of a real-EEG win.

### Mechanism check

- Verdict: Built a differentiable fixed-Morlet Cross-Channel Scattering front end with local edge pairing, complex conjugate products, differentiable magnitude, and temporal averaging. The numerical checks confirmed |z_m z_n*|=|z_m||z_n|, phase invariance, and exact agreement with an independent implementation to floating-point precision. On the scarce-label synthetic amplitude-coupling task, SNST achieved 0.5406 +/- 0.0181 accuracy versus 0.5104 +/- 0.0053 for the raw CNN across three seeds, a promising but modest signal; this is not evidence of a real-EEG win.
- Confidence: 7/10
- Limitations: Tested only on a small synthetic four-channel amplitude-coupling task, not BCI Competition IV-2a or real EEG. Only three seeds were used; no channelwise-scattering baseline, ablations, learned wavelets, strict FLOP/parameter matching, or subject-wise evaluation was performed. CUDA convolution failed on the available runtime and the script correctly fell back to CPU.

### Practical benchmark

- Paired seeds: 8
- Baseline mean: 0
- Idea mean: 0
- p-value: 0.64655
- Paired wins: 3/8
- Benchmark verdict: no measurable effect

## Artifacts

- [bench_experiment.py](https://synthcore.org/code/1405/bench_experiment.py)
- [bench_report.json](https://synthcore.org/code/1405/bench_report.json)
- [experiment.py](https://synthcore.org/code/1405/experiment.py)
- [report.md](https://synthcore.org/code/1405/report.md)
- [report_bench_2026-09-04T201907.md](https://synthcore.org/code/1405/report_bench_2026-09-04T201907.md)
- [Download all files as ZIP](https://synthcore.org/download/1405)

## Disclaimer

AI-generated research hypothesis, automatically tested. Not peer-reviewed.
