Dance Dance Convolution




How does this work?

Dance Dance Convolution (DDC) uses two neural networks to create step charts. One network predicts timing of the steps from the audio and another network creates sequences of arrows from the timings. You can read more details in the paper (pdf).

Why is everything at 125BPM?

The network that predicts step timings has no concept of rhythm or tempo. It simply answers the following question 100 times a second: should there be a step here? We map these to step charts by creating measures with 192 steps at 125BPM. We will release a script soon allowing you to manually set the tempo/offset of a chart to clean things up a little. For now, turn off colored note skins to avoid confusion.

What kind of music does it work for?

DDC will produce a step chart for any kind of music but it works best for electronic or highly percussive music. The most interesting charts are produced by music that has significant rhythmic variety.

Will I get a different chart if I upload the same song twice?

Yes. The timings and number of steps will be the same but the sequence will be completely different.

Why do the lower difficulties not work as well?

It turns out that lower difficulty step charts are harder to learn! This will hopefully be improved in future versions.

Who made this?

A group of researchers from the University of California, San Diego. Please send us feedback on your experience using the above form! Feedback will be used to improve future versions of Dance Dance Convolution.


Thanks to Fraxtil whose step charts were used to train the neural network models for this demo. Thanks to DeepX for hosting. This work used the Extreme Science and Engineering Discovery Environment (XSEDE), which is supported by National Science Foundation grant number ACI-1053575.