Precomputed listening demo

Hear surprise take shape.

Compare precomputed SurpriseNet outputs across six user-controlled contours and three melody excerpts.

A rising surprise contour crossing a field of layered chord planes.

Harmony, guided by expectation.

SurpriseNet conditions a variational autoencoder with a contour derived from chord-transition probabilities.

Melody excerpts
3
Surprise contours
6
Audio-visual samples
39

One melody, six surprise shapes.

Pick an excerpt and contour, then compare the source progression with two model variants. Everything here is served as static media; this page does not run model inference.

Choose an excerpt

The selection stays shareable in the page URL.

Shape the surprise contour

The graph controls how chord surprise changes over time.

Ground truth

The human-arranged chord progression.

Loads when you press play.

SurpriseNet

Generated with the selected contour.

Loads when you press play.

Weighted SurpriseNet

Generated with additional surprise weighting.

Loads when you press play.

Six plots showing rising, falling, low, high, arch, and valley surprise contours.

What to listen for.

The contour represents harmonic unexpectedness over time. It guides chord selection without changing the input melody.

  1. Start with the source. Learn the original harmonic rhythm and phrase boundary.
  2. Compare the same contour. Listen for where either model delays or releases tension.
  3. Switch the shape. Notice how the harmonic path changes while the melody stays fixed.

Paper and source.

The model, training code, evaluation utilities, and this explorer now live in one repository history.

“SurpriseNet: Melody Harmonization Conditioning on User-controlled Surprise Contours”

Yi-Wei Chen, Hung-Shin Lee, Yen-Hsing Chen, and Hsin-Min Wang. ISMIR 2021.