Using Uptake’s predictive analytics toolbox to answer the fundamental question: “When will the bass drop?”

Part of Uptake’s mission is to develop powerful, versatile data science engines that can make meaningful predictions on any source of data. This data is typically sourced from industrial assets like construction and mining equipment, locomotives, and wind turbines.

But our tools can handle much more.

Our Bass Drop Predictor Tool, built during a recent company hackathon, is an example of just that. The tool uses audio signals and Uptake’s analytical tools to predict significant sonic events in a musical piece.

Check out the tool here:

We chose to focus on predicting bass drops, central moments in electronic dance music (EDM). Bass drops are characterized by rising tension building to a dramatic release, and are followed by a followed by a strong, danceable rhythm. Predicting these moments of tension and change resonates with my work here at Uptake to diagnose and predict failures in industrial machines. Both types of event occur at the boundary between different behavioral modes; both involve a build-up in observed time series data; and both are punctuated by abrupt signal changes.

The differences, too, were of interest. Many industries use vibrational sensors to track asset condition, and this project helped provide a new perspective on how we currently digest high-frequency signal data for use in our predictive failure models.

Sample results for a track produced by our own Sami Ahmed, Weapon Remix, show a strong predictive signal when a drop is approaching. The results also show that the model responds to music similar to a human listener. At two points in the song (1:05 and 2:50), there is a build without a drop, playing with the listener’s expectations and increasing anticipation of the actual drops that occur soon after. The model had the same reaction I did, and made a bass drop prediction only slightly weaker than that of the actual drop. Overall, these results show the model is successful in predicting bass drops, and mimics numerically how we might respond to music on an emotional level.

How We Built The Tool

While Uptake’s mechanical modeling process is guided by subject-matter expertise and the physical principles of the machine, here we started with just a new data source and an intuition of what a bass drop was. Going from this to a fully trained model in three days required a systematic approach similar to how we might approach failure prediction.

The primary challenge was labels. That is, what time points counted as bass drops? To answer this and provide data to train our machine learning (ML) model, we listened to a lot of EDM. Our resident subject matter expert composed bass drop identification guidelines and advised us on borderline cases, and the team went to work listening to songs and documenting when bass drops occurred. In three days we listened to over 200 songs and identified over 400 bass drops.

This focused listening not only drove us through madness to nirvana, but also helped us with our next most important task of determining features for our model to learn from. That is, what inputs will be most useful to make a prediction? Raw audio, like industrial data, is too noisy to be input directly into a standard ML algorithm. At Uptake, we overcome this by studying the signals’ physical meanings, then algorithmically distilling the signals to more clearly reflect those meanings. To distill raw audio, we looked for inspiration in human listening. Just as we subconsciously digest music into concepts like beat, tone, form, and melody, we digested the tracks in our data set into a few rhythmic and spectral features that the computer was able to interpret more easily.

At this point we had a list of bass drop events, our rhythmic and spectral features, and less than an hour left before the hackathon presentations were to begin. To create predictions from these ingredients is a nontrivial task that normally requires a great deal of mental, manual, and computational effort. However, at Uptake we have what is perhaps the best tool available to transduce historical data into a predictive model: the Uptake Failure Prediction Engine.

Just as it regularly ingests years’ worth of data from thousands of machines to learn which temperatures, pressures, and electrical signals predict a particular mechanical failure, we thought it could be leveraged to find which particular combinations of bass, drums, synths, and samples might foretell a bass drop. Using this tool, we went from having only signals and labels to having a fully trained model with visualized results ready to present in under an hour.

While there are a few potential uses of this product, from generating optimally timed track previews on iTunes to determining when to crack your glow sticks, I think it serves best as a demonstration of the power of the Uptake platform. In three days we took in a new type of data, wrestled with its unique issues, identified and distilled important signals, and built an effective, accurate predictive model that reflects the true meaning of the music. Solving this problem in this way would not have been possible without Uptake’s spirit, abilities, and tools.

Many thanks to all who contributed to this project, including Uptake BassDrop team members Sami Ahmed, Andrew Hillard, Stephanie Kirmer, James McElveen, Jay Qi, and Ashish Shah.

For sample predictions on an original song by Sami Ahmed, check out the link below:

For more about what we do, visit uptake.com.