Perceiver IO

The paper generalizes attention models by routing large structured inputs and outputs through a fixed-size latent array.

Metadata

FieldValue
PaperPerceiver IO: A General Architecture for Structured Inputs & Outputs
AuthorsAndrew Jaegle, Sebastian Borgeaud, Jean-Baptiste Alayrac, Carl Doersch, Catalin Ionescu, David Ding, Skanda Koppula, Daniel Zoran, Andrew Brock, Evan Shelhamer, Olivier Henaff, Matthew M. Botvinick, Andrew Zisserman, Oriol Vinyals, Joao Carreira
Year2021
VenueICLR 2022
arXiv2107.14795
OpenReviewfILj7WpI-g
Statusfull note started

One-Line Takeaway

Transformers scale poorly when attention is applied directly to huge input/output arrays; Perceiver IO keeps the expensive recurrent computation in a fixed-size latent array and uses cross-attention to interface with arbitrary inputs and outputs.

Question

Many domains can be written as arrays:

  • text tokens;
  • image patches or pixels;
  • audio samples;
  • video frames;
  • point sets;
  • multimodal streams;
  • dense output grids;
  • class logits;
  • optical-flow fields;
  • game states and action distributions.

The standard Transformer is flexible, but self-attention over input tokens costs:

for hidden width . This becomes expensive when is very large, as in high-resolution images, video, long audio, or dense multimodal observations.

Domain-specific models solve this by using inductive biases:

  • CNNs use locality and translation sharing;
  • RNNs use recurrence over sequence steps;
  • GNNs use graph neighborhoods;
  • U-Nets use hierarchical image grids;
  • point-cloud models use permutation-aware set operations.

The paper asks:

Can one architecture process large structured inputs and produce structured outputs without building a separate backbone for every modality?

Main Claim

Perceiver IO separates three jobs:

  1. encode raw inputs into an input array;
  2. move information from the input array into a fixed-size latent array;
  3. decode task-specific outputs by querying the latent array.

The high-level computation is:

where:

  • is raw task input;
  • is the input token/array representation;
  • is a learned latent array;
  • is fixed or at least much smaller than ;
  • is an output array specified by output queries.

The core idea:

Most repeated self-attention happens over the latent size , not the input size .

Architecture Contract

ComponentInputOutputRole
Input adapterraw modality datainput array domain formatting
Input cross-attentionlatent queries , input keys/values updated latentsingest information
Latent Transformerlatent arrayprocessed latentsmain computation
Output queriesdesired output positions/tasksquery array define output structure
Output cross-attentionoutput queries, latent keys/valuesoutput arraydecode structured predictions

This makes the architecture modular:

Input Cross-Attention

Let the input array be:

and the latent array be:

The input cross-attention uses latents as queries and inputs as keys/values:

Then:

The attention matrix has shape:

So input ingestion costs roughly:

This is the key scaling move. Direct self-attention on would cost:

When :

Latent Self-Attention

After the input is read into the latent array, Perceiver IO applies repeated Transformer blocks to :

Each latent self-attention layer costs:

If the model uses latent layers:

Because is fixed by architecture design, not by raw input length, the expensive depth of computation is bounded.

The full rough cost is:

where is the number of output queries.

Output Query Decoding

The original Perceiver already used a latent bottleneck for input processing. Perceiver IO adds a more general output interface.

Let output queries be:

These queries specify what the model should output. They can represent:

  • class queries;
  • pixel coordinates;
  • audio time positions;
  • language positions;
  • optical-flow locations;
  • arbitrary task slots.

Output decoding cross-attends from output queries to processed latents:

Then:

The output attention matrix has shape:

So output decoding costs:

This is what makes Perceiver IO different from a plain latent encoder. The output array is not restricted to a single pooled vector.

Input and Output Arrays

Perceiver IO treats both input and output as arrays. This is a broad abstraction.

Task TypeInput ArrayOutput Query
Classificationimage/audio/text tokensclass query or label slots
Dense predictionpixels or patchesoutput pixel/location queries
Language modelingtoken arraytarget-position queries
Multimodal learningconcatenated modality arraystask-specific queries
Optical flowpaired image featuresspatial flow queries
Game state modelingobservation tokensaction/value queries

The architecture does not remove task-specific formatting. It moves that formatting to adapters and queries.

Positional and Modality Encoding

Attention alone is content-based. For structured arrays, the model usually needs extra information:

where:

  • is a position, coordinate, or Fourier feature;
  • can mark modality or source type;
  • maps raw values to hidden features.

For images:

or a Fourier encoding of the pixel/patch coordinate.

For audio:

or a time/frequency coordinate.

For multimodal arrays, modality embeddings can indicate whether an element comes from text, image, audio, or another source.

Why the Latent Array Matters

The latent array is a learned computational workspace:

It is not the same as:

  • a sequence of input tokens;
  • a class token;
  • a pooled vector;
  • a set of fixed labels.

The latent slots repeatedly exchange information through self-attention:

up to residual and normalization details.

This gives the model a controlled internal memory size. The price is information bottleneck risk:

If is too small or the queries do not read the right information, the bottleneck can discard details.

Comparison to Standard Transformer

PropertyStandard Transformer EncoderPerceiver IO
Main self-attention domaininput tokenslatent array
Input scaling
Output interfaceoften pooled token or sequence positionsarbitrary output queries
Modality handlingtokenization plus positional encodinginput adapters plus positional/modality encoding
Bottlenecknone unless addedexplicit latent array
Strengthsimple and directscales to large structured arrays
Riskexpensive for large latent bottleneck may lose information

For normal-length text, a standard Transformer can be simpler. For high-dimensional dense data, Perceiver IO’s latent bottleneck can be attractive.

Comparison to Set Transformer

| Property | Set Transformer | Perceiver IO | | --- | --- | --- | | Main input type | unordered sets | structured arrays across modalities | | Bottleneck mechanism | inducing points and PMA seeds | latent array and output queries | | Symmetry emphasis | permutation invariance/equivariance | flexible input/output formatting | | Output interface | PMA slots | arbitrary output queries | | Scaling move | ISAB reduces set attention to | input cross-attention plus latent self-attention | | Typical use | set-level prediction, clustering, set functions | multimodal and dense structured prediction |

The family resemblance is strong: both use learned query arrays to avoid direct full attention over all raw elements. The emphasis differs. Set Transformer is primarily about set symmetry; Perceiver IO is primarily about general structured input/output scaling.

Comparison to Encoder-Decoder Attention

Perceiver IO can be read as a general encoder-decoder architecture:

This resembles cross-attention in sequence-to-sequence models, but with a fixed latent core:

PartSeq2seq TransformerPerceiver IO
Encoder memoryinput token stateslatent array
Decoder querytarget prefix tokensoutput queries
Main scaling issuesource and target lengthinput/output array size
Task structureusually sequence-to-sequencearbitrary arrays

The output queries can be learned, coordinate-derived, or task-provided.

Evidence Reading

The paper demonstrates the same architecture family across multiple task types. The evidence supports architectural generality more than domain-specific superiority.

ClaimEvidence TypeWhat It SupportsCaveat
Perceiver IO can handle varied modalitiesexperiments across vision, language, multimodal, and structured outputsone architecture template can be reusedadapters still differ
Latent bottleneck enables scalingcomparisons to direct attention-style processinglarge inputs can be processed with bounded latent computequality depends on latent size
Output queries support structured outputsdense or task-specific output experimentsoutputs need not be a single class vectorquery construction matters
Architecture can compete with specialized modelsbenchmark resultsgeneralist design is viablebest specialized models may still win

Benchmark Card

FieldValue
Main task familystructured input/output modeling
Input unitarbitrary array elements
Output unitarbitrary query-defined array
Main mechanismcross-attention into and out of a latent array
Main scaling claimrepeated computation happens in fixed latent space
Main comparisonTransformers and domain-specific models
Key hyperparameterslatent size , latent width , latent depth , output query count
Not the claimno-free-lunch replacement for all domain-specific backbones

Architecture as a Design Pattern

Perceiver IO is more than one model. It is a design pattern:

This pattern appears in later systems as:

  • latent bottleneck multimodal encoders;
  • query-based detection heads;
  • memory tokens;
  • resampler modules;
  • learned pooling modules;
  • slot-based decoders.

The recurring question is:

How to Choose Latent Size

The latent size controls compute and capacity.

If is too small:

If is too large:

can become expensive, and the model loses part of its scaling advantage.

Practical reading questions:

  • Does performance saturate as increases?
  • Is the task dense enough to need many latents?
  • Are outputs localized or global?
  • Does the adapter compress too much before cross-attention?
  • Is the latent array reused across input blocks or refreshed?

Molecular and Structural Modeling Reading

Perceiver IO is not a molecular architecture by itself, but its pattern is useful for molecular and structural AI.

Possible uses:

  • combine protein sequence tokens, structure tokens, ligand atom features, and pocket descriptors;
  • process large multiple sequence alignment-like arrays through a latent bottleneck;
  • decode per-residue, per-atom, pairwise, or global outputs using output queries;
  • aggregate a large set of docking poses, conformers, or candidate complexes;
  • build a task interface where different prediction heads query the same latent molecular context.

Potential mismatch:

  • plain attention does not guarantee equivariance;
  • atom/bond topology may require graph-aware encoders;
  • pairwise geometric outputs may need explicit pair representations;
  • dense coordinate prediction can be sensitive to output query design;
  • chemical validity is not enforced by the latent bottleneck.

A reasonable hybrid pattern is:

Implementation Notes

Masking

Variable-size arrays need masks. If padded input positions are not masked, cross-attention can leak padding artifacts.

For input cross-attention:

Then:

Output Query Semantics

Output queries are part of the model specification. For a dense grid output, a query might include coordinate features:

For class outputs, it may be learned:

For multi-task outputs, queries may include task IDs:

Changing output queries changes the model contract.

Adapter Responsibility

The input adapter is not a trivial detail. It decides what raw information is visible to the latent array.

For an image, the adapter may expose:

  • pixels;
  • patches;
  • convolutional features;
  • Fourier position encodings.

For a molecule, the adapter may expose:

  • atom type features;
  • bond features;
  • residue features;
  • pair distances;
  • coordinate encodings;
  • graph or geometric encoder outputs.

If the adapter hides important structure, the latent core cannot recover it.

Bottleneck Diagnostics

Signs that the latent bottleneck is too tight:

  • performance improves strongly with ;
  • outputs miss fine spatial details;
  • attention maps concentrate on a few broad regions;
  • dense prediction quality is worse than global classification quality;
  • the model underfits even with sufficient depth.

Common Misreadings

”Perceiver IO removes modality-specific engineering.”

It reduces the need for separate backbones, but it still needs input adapters, positional encodings, modality markers, output queries, and losses.

”The latent array is just a class token.”

A class token is usually one token inside the input sequence. Perceiver latents are a separate learned array that repeatedly self-attends and acts as a computational workspace.

”It is always cheaper than a Transformer.”

Only when is sufficiently smaller than and the cross-attention/adapter overhead does not dominate. For small inputs, a standard Transformer may be simpler and faster.

”General architecture means best architecture.”

The paper argues for broad applicability. It does not prove that one general architecture dominates specialized architectures in every domain.

Later-Paper Checklist

When reading a later multimodal, memory-token, resampler, query-decoder, or latent-bottleneck paper, ask:

  • What is the input array?
  • What is the latent array size?
  • Which computations happen over input length and which over latent length ?
  • Are output queries learned, coordinate-derived, task-provided, or autoregressive?
  • Does the bottleneck lose information needed for dense outputs?
  • Are modality and position encodings doing most of the domain work?
  • Is the comparison against direct attention compute-matched?
  • Is the architecture generality claim tested across genuinely different task structures?

Why It Matters

Perceiver IO is important because it reframes attention as an interface between arrays, not only as a sequence model block. It makes three ideas explicit:

  • large inputs can be read through cross-attention;
  • repeated computation can happen in a smaller latent workspace;
  • outputs can be specified by queries.

Those ideas show up repeatedly in modern multimodal, detection, segmentation, retrieval, and agent-memory architectures.

Limitations

  • The latent bottleneck can discard details.
  • Output query design is a task-specific modeling choice.
  • Input adapters still carry domain assumptions.
  • Dense output tasks can be sensitive to positional encoding and query resolution.
  • Specialized architectures may be more efficient or accurate under matched budgets.
  • The architecture can be harder to debug than a plain encoder or decoder Transformer.

Connections