skip to content

How does over-squashing differ from over-smoothing in a graph neural network?

level: seniorimportance: should knowfreq 38%

answer

  1. one loses contrast, one loses reach
  2. rounds versus topology
  3. exponential neighbourhood, fixed-width vector
  4. bottleneck edge, spectral gap
  5. the two fixes pull against each other

basics

~20 s

Over-smoothing is a loss of contrast: node representations converge as averaging rounds stack. Over-squashing is a loss of capacity in transit: an exponentially growing neighbourhood is funnelled through bottleneck edges into fixed-width vectors, so distant evidence never arrives intact.

solid answer

~40 s

They fail in opposite ways. Over-smoothing comes from repeated averaging acting as a low-pass filter, so every node's embedding drifts toward every other's — it is driven by the number of rounds and shows up as pairwise embedding similarity climbing toward 1. Over-squashing is structural: the count of nodes within `k` hops grows roughly exponentially, but the vector carrying them is fixed width, so where the graph pinches — think two dense departments in an email graph joined by one liaison — everything crossing that cut is compressed past recovery. It is predictable from topology alone via a small spectral gap or high effective resistance, and it only bites on genuinely long-range tasks. The fixes conflict: rewiring or a virtual node relieves squashing by adding mixing, which is exactly what worsens smoothing.

go deeper

for a junior

Know that the two names describe different problems: one is representations becoming too alike with depth, the other is distant information failing to get through narrow parts of the graph.

for a middle

Explain the mechanism of each — averaging as a low-pass filter versus an exponentially growing neighbourhood compressed into a fixed-width vector — and name what you would measure for each.

for a senior

Show that you diagnose before fixing: similarity curves across depth, error stratified by distance to the decisive evidence, and a topology check for bottlenecks. Say out loud that the two fixes trade against each other.

for a principal

Own the design consequence: rewiring changes the data, so baselines stop being comparable and inference cost changes. Decide when a long-range task should be reframed rather than propagated across a bottleneck at all.

### Two different failures with two different cures Both over-smoothing and over-squashing punish deep message passing, but they are opposite in character, and confusing them leads to fixes that make things worse. **Over-smoothing** is a loss of *contrast*. Every node's representation drifts toward every other node's as layers stack, because neighbourhood averaging is a low-pass filter. It bites on ordinary, well-connected graphs and it bites even when the useful signal is one or two hops away. The measurement is pairwise similarity between node embeddings rising with depth. **Over-squashing** is a loss of *capacity in transit*. The number of nodes within `k` hops typically grows exponentially with `k`, but the vector that carries their information is a fixed width. When that exponentially large neighbourhood has to be funnelled through a small number of edges, the information from distant parts of the graph is compressed past the point of recovery. It bites on graphs with structural bottlenecks and only for tasks that genuinely need long-range information. ### The bottleneck picture Picture a corporate email graph: two departments, each a dense internal community, joined by a single liaison who exchanges mail with a handful of people on each side. Every fact that must travel from one department to the other passes through that liaison's fixed-width vector at every round. Hundreds of distinct sources on the far side arrive summed into one representation, and each additional round adds more sources into the same fixed budget. A node deep inside department A cannot recover which specific node in department B mattered — the two sources look identical after the crossing. Formally, the sensitivity of a node's final representation to a distant node's input features — `d h_u^(k) / d x_v` — is bounded by entries of the `k`-th power of the normalized adjacency, and across a bottleneck those entries are tiny. The graph-theoretic quantities that predict it are the ones that measure bottleneck severity: a small spectral gap (equivalently, a small Cheeger constant) or a high effective resistance between the two regions. Notice that this is a statement about the **graph topology**, not about the training run: you can predict trouble before fitting anything by looking at how the graph is connected. ### How they differ in practice | | Over-smoothing | Over-squashing | |---|---|---| | What is lost | Distinguishability between nodes | Distant nodes' influence on a target | | Driven by | Number of averaging rounds | Topology bottlenecks plus fixed width | | Symptom | Embedding similarity approaching 1 | Long-range task fails; local tasks fine | | Predictable from graph alone | Only partly | Yes — spectral gap, effective resistance | You can have either without the other. A model on a graph with no bottleneck can smooth itself into uselessness. A shallow model on a bottlenecked graph has no smoothing problem and still cannot see across the bottleneck, because it never gets there. ### The tension between the fixes The standard cure for over-squashing is **rewiring**: add edges to widen the bottleneck, insert a virtual node that connects to everything so any pair of nodes is two hops apart, or let a layer attend beyond the immediate neighbourhood. Every one of those moves increases mixing — which is exactly what drives over-smoothing. So the fixes pull against each other, and the honest answer to "just add edges" is that it trades one failure for the other. Rewiring is best done sparingly and targeted at the edges the bottleneck diagnosis actually flags, and paired with something that preserves node identity at depth, such as keeping the input features alive at every layer. ### How to tell which one you have Run three diagnostics before choosing a fix. 1. **Similarity curve across depth.** Rising toward 1 while accuracy falls: over-smoothing. 2. **Distance-stratified error.** Split evaluation nodes by their graph distance to the nearest node carrying the decisive evidence. If error is flat for near nodes and terrible for far ones, that is over-squashing, not smoothing. 3. **Topology check.** Compute the spectral gap or look for cut edges whose removal splits the graph into large pieces. A severe bottleneck plus a long-range task is over-squashing before you have trained anything. Weak candidates give one answer — "deep graph networks don't work" — for both. The interviewer is looking for the split: is the model failing because it mixed too much, or because the signal could not get through?

  • How would you diagnose over-squashing before training anything?
    Inspect the topology. Look for a small spectral gap of the normalized graph Laplacian, or high effective resistance between the regions the task needs to connect, or literally for cut edges whose removal splits the graph into large pieces. Combine that with whether the task is long-range: a severe bottleneck plus evidence several hops away predicts squashing before a single parameter is fitted.
  • Why can adding a virtual node connected to every node make things worse?
    It fixes distance — any two nodes become two hops apart — but it does so by mixing everything with everything on every round. That is a large increase in averaging, so it accelerates over-smoothing and can also swamp the local signal a node actually needs. It suits shallow models and diffuse long-range signals, not deep stacks.
  • Which failure does a shallow model on a bottlenecked graph suffer from?
    Over-squashing only, and in its simplest form: with two layers the model never reaches across the bottleneck at all, so the distant evidence has zero influence. There is no smoothing problem because there are too few averaging rounds to collapse anything. The tell is error concentrated on cases whose evidence is far away, with near cases fine.

Over-smoothing is everyone in a room ending up with the same opinion. Over-squashing is two crowded rooms sharing one doorway, where every message between them must fit on one sticky note.

saying these in an interview costs you the question

  • Treating both as one problem called deep GNNs don't work
  • Claiming over-squashing is fixed by more layers
  • Assuming rewiring is free of side effects
  • Saying over-smoothing depends on graph topology alone
  • Ignoring that squashing only matters for long-range tasks

context