That is a very interesting problem. I hope you've seen this video about music theory with Charlie Gillingham?
https://www.youtube.com/watch?v=tGfDjwSORaw --------- Matt Taylor OS Community Flag-Bearer Numenta On Fri, Oct 9, 2015 at 11:21 AM, Jos Theelen <[email protected]> wrote: > That probably means, they used a scalarencoder. But their problem was > different than mine. They had to remember the notes and to learn which note > came after which other note. For me the combination of melody and chords > have to sound "nice". Somehow a system has too learn or remember that. > > greetings: Jos Theelen > > > On 2015-10-09 17:19, Matthew Taylor wrote: >> >> They actually didn't create a NoteEncoder (the codebase was much less >> extensible 2.5 years ago). They wrote a preprocessing script that >> turned the MIDI song file into a scalar input stream. I don't remember the >> details, and their codebase is lost now. But I do remember that they >> needed to remove the "rests" from the input. >> >> --------- >> Matt Taylor >> OS Community Flag-Bearer >> Numenta >> >> >> On Fri, Oct 9, 2015 at 3:15 AM, Jos Theelen <[email protected]> wrote: >>> >>> Yes, I know it and looked at it. I wondered how they made a NoteEncoder, >>> I >>> am still struggling with that. Nupic says that notes that are "close" to >>> each other should have the most overlapping bits. But what is "close" in >>> music? >>> >>> 1) a scalarencoder, where the number of the note is encoded. In this case >>> "close" means almost the same frequency. >>> 2) 2 scalarencoders, one for the note and a different one for the octave. >>> This because a note sounds almost the same as that same note an octave >>> lower >>> or an octave higher. >>> 3) a typical noteencoder and a scalarencoder for the octave. The >>> noteencoder >>> should take the notes in the following cyclical order: >>> C,G,D,A,E,.....Es,Bes,F,C, each a quint apart. In this case notes that >>> are >>> close together sound better together. C-G sounds better together than >>> C-Cis >>> >>> Probably I should make all 3 encoders, just to test. >>> >>> greetings: Jos Theelen >>> >>> On 2015-10-08 15:14, Marek Otahal wrote: >>>> >>>> >>>> Hi Jos, >>>> >>>> On Thu, Oct 8, 2015 at 3:06 PM, Jos Theelen <[email protected] >>>> <mailto:[email protected]>> wrote: >>>> >>>> I am working on a model, that reads melodies and chords from >>>> midifiles, mainly chorales from JS Bach. When the model is given a >>>> new melody without chords, it should find the chords, that sound >>>> correct, conform what it learned from the midifiles. >>>> >>>> Nice, I love classical music and music related examples :) >>>> You probably know, but just in case: check out nupic.audio project and a >>>> former hackathon submission that composed song on trained MIDI music. >>>> >>>> >>>> greetings: Jos Theelen >>>> >>>> No virus found in this message. >>>> Checked by AVG - www.avg.com <http://www.avg.com> >>>> Version: 2015.0.6140 / Virus Database: 4435/10780 - Release Date: >>>> 10/08/15 >>>> >>> >>> >> >> >> >> ----- >> No virus found in this message. >> Checked by AVG - www.avg.com >> Version: 2015.0.6140 / Virus Database: 4435/10783 - Release Date: 10/08/15 >> >> > >
