Pragma Research/Cadence/Amen

Amen Brain

One patch learned jungle. Nothing here is recorded: the trained brain computes a track in your browser, from silence, while you watch it think. Then it plays.

Dubplateone patch · no GPU
165 to 182 bpm · live

Still trainingThis brain is a work in progress. It is still learning from more tracks, and the dubs will get more varied as it does. Every checkpoint in the selector can be trained further.

waking the brain

bar 0half-beat 00.0 s

Press CUT A DUB.

Model cardwhat this brain is, what plays here, what was measured

The brain

One Cadence record patch. 80 input ports (a wake, an eight-position clock, and the 71 ports of the event it played last), 128 context channels whose time constants run from 2 to 128 half-beats, one linear readout to 71 output ports, 29,895 slow parameters, and a record store of 8,192 cells of which 48 fire per reading. The records hold what the slow readout got wrong at each reading, keyed by the event heard and the context. Every brain in the selector has this shape; they differ in what they heard. All were trained on a laptop CPU in minutes, no GPU.

What plays here

Nothing is recorded. The page loads the trained brain (30 thousand slow parameters and the record tables, 2.5 MB) and an instrument: 32 half-beat slices of a drum break, twelve sub-bass notes, a detuned saw pad and band-passed noise for the texture. When you press the button the brain starts from silence, hears a count-in, and computes the track one half-beat at a time, about 1.7 million multiply-adds each, hearing every half-beat it plays. Each half-beat it states a slice, a loudness, a bass note or a hold, a change point, and ten texture levels; the pad sounds at the bass note each bar plays most, and the brain's texture bands set how loud and how bright it is.

The brain leaves the loop only where it predicts a change point, by one of three declared moves: a roll (the slice just heard repeats), a retrigger (the break restarts at a bar start) or a bar jump (the same position in another bar of the break). The Departures slider scales that probability. What a departure contains is not predictable from the recordings (0.02 to 0.06 correct), so the moves are a rule of the instrument and the brain decides when.

Why two dubs differ

From silence, the highest score at every port gives one and the same track. Each dub therefore draws from its seed. The bass of the first two bars, and of every departure, is drawn from the brain's own scores over notes; the Variation slider sets how freely. The dub gets a drum pattern of its own: it enters on one of the break's four bars, and over its first one, two or four bars departures are drawn at a raised probability with the dub's own shares of the three moves. That opening is the dub's loop: the slice at the cycle start and at each of the opening's departures returns at the same place in every cycle (gold marks in the notes view) unless the brain draws a fresh departure there (red marks). Between those places the brain plays on from what it hears, so a fill stays local and the groove comes back. It also gets instrument settings: a tempo between 165 and 182 bpm, the break's pitch (up to four semitones either way, set apart from the tempo as on a sampler: a raised slice ends early, a lowered one is cut where the next begins), a key (bass and pad transposed by two semitones down to five up, because from silence the brain settles on the same notes every time), the pad's waveform, chord, register and detune, how it is played (held, a skank on beats two and four, a dotted stab or a swell per bar), and a filter sweep over 4, 8 or 16 bars. At zero variation none of this is drawn; departures still are, and with both sliders at zero every dub is the same track. The seed is printed under the button; the same seed and settings give the same dub.

Measured on tracks it never trained on

  • Choose a brain.

The browser engine is the same arithmetic as the library. On each archived run's generation from silence it reproduces every slice, note and change point with scores equal to 2e-8, and it reproduces the library's record writes to 4e-8.

Supplied, learned, limits

Supplied: the transcription of the recordings into events (which slice, which note, where a bar departs from the bar before, the sustain above 250 Hz), the instrument that renders events, the clock, the three moves a departure may make, and the per-dub settings above. Learned: every event the brain plays, from random parameters and empty records. Limits: the break is one break, so the drum vocabulary is its 32 slices; the brain has no phrase clock, so it places departures by what it just heard and not by where a sixteen-bar phrase ends; change points are hard to predict; one training seed; no transformer or recurrent baseline on the same stream yet; and a texture smoother than the recorded one because a squared-error readout predicts the mean.

channel + channel − record cell change point bass fast channels at the centre, slow at the rim · halos are open gates · particles are synaptic drive · the arc is the loop through the world