Teaching AI to Write Melodies

This blog documents the process of teaching an AI system to generate melodies from the Skiptune database. Expect experiments, mistakes, and occasional surprises, and at the end expect melodies that sound as if a human wrote them.

  • Introducing the Skiptune AI Project

    Problem to Be Solved The Skiptune database is a database of 83,000 melodies from around the world and across several centuries.  These melodies are encoded in a special way (a pitch difference followed by a duration ratio), and we want to explore whether an AI model can learn melodic structure from this representation.   The…

    Continue reading

  • Cluster Analysis–Part 7

    This week we control the cluster analysis for tune length to determine if that feature affected the analysis in a way that needs to be accounted for. We controlled for length by moving from the original analysis that produced clusters with very different median lengths (62, 30, and 41 sounded notes) to a 32 -…

    Continue reading

  • Cluster Analysis–Part 6

    Because music is continuous rather than discrete, we do not find clean clusters of tunes. Instead, the boundaries between the clusters are completely occupied by borderline tunes–tunes that could easily be classified in one cluster or another. While that finding was expected, we made another discovery that is somewhat troublesome: Tune length is strongly associated…

    Continue reading

  • Cluster Analysis–Part 5

    This week we finalize our cluster analysis by presenting the results based on three clusters of tunes in the Skiptune database. Cluster Analysis of Skiptune Database Let’s get right to what a cluster analysis output looks like before breaking it down. The following figure shows the three musical clusters that result from the analysis of…

    Continue reading

  • Cluster Analysis–Part 4

    We have our 25 metrics for the cluster analysis developed last week. The rest (18 metrics) have been archived for now, though we expect to return to them later for purposes other than cluster analysis. Three Prep Steps We have three tasks to perform with the 25 metrics before we proceed to the cluster analysis…

    Continue reading