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.

  • Heaps’ Law with 2-note Words, Part V

    We now turn our attention to Heaps’ Law when our musical word is defined not as a single note, but as a note followed by the next note in a melody.  This 2-note pairing will increase the vocabulary size, so we would expect results placing the Skiptune database a little closer to Heaps’ Curves as…

    Continue reading

  • Heaps Law with Notes-Durations, Part IV

    This week we check to see how much of our two choices of ordering the database, as entered and by year, are typical of random orderings.  We test that by shuffling the order of the database 1,000 times, and then running the Heaps Law analysis one thousand times, one for each row or tune in…

    Continue reading

  • Heaps’ Law with Notes-Durations, Part III

    Last week we found that Heaps’ Law applies well to the Skiptune corpus of melodies with a beta value of 0.36 using a note as a “word”.  But as we observed, the order in which a computer reads in the database can affect the curve fit, so this week we check that out to see…

    Continue reading

  • Heaps’ Law with Notes- Durations, Part II

    Last week we got halfway through our exploration of the definition of notes and durations as “words” akin to words in language, and we finish up that discussion this week with the following figure: Let’s walk through this plot, which uses the exact same data as the one last week but plots the points in…

    Continue reading