Skip to content

FusionPulse

arti.nn.FusionPulse is an Alpha API introduced in ARTI 1.6.0 and retained in 1.7.0. It combines several already compact Pulse workspaces into one fixed-size workspace. It does not replace Pulse and is not intended for an unbounded raw sequence.

Pulse workspaces
→ concat
→ joint context + feature-wise salience
→ Half survival
→ shared UnFold
→ fixed [B,K,D] workspace
import torch
from arti.nn import FusionPulse, Pulse
whole = Pulse(k=8, dim=64)(torch.randn(4, 96, 64))
regions = Pulse(k=12, dim=64)(torch.randn(4, 192, 64))
details = Pulse(k=6, dim=64)(torch.randn(4, 48, 64))
fusion = FusionPulse(k=8, dim=64)
workspace, info = fusion.concat(
whole,
regions,
details,
return_info=True,
)
assert workspace.shape == (4, 8, 64)

Source count may vary between calls, and concat() accepts different source slot counts. Equal-size sources can instead be stacked as [B, sources, slots, D] and passed through fusion(stacked).

Pass one [B,Nᵢ] mask per source when lengths differ. Invalid slots do not participate in salience, structural losses, or the shared UnFold queries.

Task loss trains the fused workspace. When repeated observations should consolidate without erasing source-specific evidence, the optional label-free structural term adds three pressures: discourage simultaneous survival of very similar candidates, preserve neighborhood support, and retain a strong representative.

workspace, info = fusion.concat(whole, regions, details, return_info=True)
loss = task_loss(workspace, target) + info["structural_loss"]

Diagnostics include survival, source_index, masks, and the unweighted redundancy, support, and representative loss components. These are engineering signals—not a task metric and not a guarantee that every source is retained equally.

Whole-view, regional, and detail workspaces are a useful application pattern when each view is formed by its own Pulse before fusion. The labels have no built-in semantics: ARTI receives ordinary tensors and masks. Alignment, coordinates, training data, and the task objective remain the integrator’s responsibility.

raw fragments at each scale → separate Pulse modules → compact workspaces
compact workspaces → FusionPulse → one fixed-capacity workspace
  • The tensor input/output contract remains documented in 1.7.0.
  • FusionPulse and its structural-loss defaults are not frozen at the same level as Pulse or UnFold.
  • Random initialization has no task meaning. Train it with a real objective before making quality claims.
  • ARTI 1.7.0 adds Python-owned inspectable exports and locked Python ORT → browser WASM/WebGPU parity fixtures for FusionPulse intermediates.
  • @arti-fit/web treats roles such as workspace, mask, and index as metadata; it contains no JavaScript reimplementation of FusionPulse.

Run the official exported artifact and inspect real intermediate tensors in the Workspace Evidence Lab.