Representation and Discovery of Vertical Patterns in Music Darrell Conklin Introduction Need a representation method to be able to manipulate and establish relationships between sequences in a musical piece. Identify recurrent patterns and ‘signatures’ using pattern discovery algorithm. Application in synthesis and classification of polyphonic pieces of music. Terminologies Music Objects: Notes, Simultaneities (Sim), Sequences (Seq). Note - MIDI integer defining pitch class and octave. Seq (X) - joining music objects of type X that do not overlap in time. Sim (X) - layering objects of type X which have the same onset time. Representation of Music Objects Sim (Seq ( Note) ) < [ A, D, A, B, A, G, F#, F# ] , [ D, D, D, D, D, C#, D, D ] , [ F#, F#, G, A, G, F#, E, D, E, D, D ], [ D, B, F#, G, A, A, D, D ] > < > Sim object [ ] Seq object Structuring and Partitioning of Music Pieces Transformation from Sim(Seq) to Seq(Sim). [ < [A,G], [D,C#], [E,D,E], [A,A] >, < [F#], [D], [D], [D] > , < [F#], [D], [D], [D] > ] Natural Partitioning creates new object when all voices have same onset time. Viewpoints Viewpoint : Seq (X) --------> viewpoint elements Example : Features of melodic segments- viewpoint of type Seq(Note) Feature lists(beat list, etc) - viewpoint elements What does a Viewpoint element tell us? Example : viewpoint ‘t’ :t (join (c, o) ) = v ‘ music object o has the attribute value v in the context of sequence c’ . Viewpoint element of an object depends on preceding objects in the sequence. Viewpoint Sequences Sequence ‘s’ = [s1, s2,…, sn] Viewpoint ‘t’ applied to this sequence gives a viewpoint sequence [ t(s1), t(s2), …, t(sn) ]. [A,D,A,B,G,F#,F#] ---> [5,-5,2,-2,-2,-1,0] for the melodic interval viewpoint. Viewpoint Patterns It is a recurring viewpoint sequence fragment in a corpus of pieces. P-value of a pattern that occurs ‘n’ times in a corpus - Pr { pattern occurs ‘n’ or more times in a random corpus of the same size.} P[2,-2]< P*[5,-5,2,-2,-1,0] Shortest & Longest Significant patterns. Vertical Viewpoints • Viewpoints can be linked together using a constructor to form complex viewpoints. • Viewpoint ‘F’ must be transposition invariant F(X)=F(T(X)) . • Viewpoint of type NOTE can be ‘lifted’ to form vertical viewpoint of type Sim(NOTE). RESULTS • 185 Bach chorales--> expanded-->> pitch class interval viewpoint-->threaded at quarter note beat and lifted. • 32 shortest significant patterns covering 142 pieces were detected. Shortest Significant Patterns 1 2 3 4 5 6 7 8 9 10 Pattern [[2,10,11,0], [5,9,8,10]] [[2,5,11,0], [5,2,8,10]] [[2,11,11,0], [5,8,8,10]] [[2,11,10,0], [ 5,8,9,10]] [[4,0,0,11], [0,0,11,0]] [[0,0,11,0], [ 5,9,8,10]] [[2,6,11,0], [5,1,8,10]] [[3,0,0,0], [4,0,0,11]] [[5,0,2,10], [2,11,10,0]] [[9,11,0,2], [0,10,0,1]] p - value Coverage 0 36 5.00E-14 19 2.00E-11 19 2.00E-11 16 2.00E-06 15 9.00E-06 20 4.00E-05 7 2.00E-05 12 2.00E-05 10 2.00E-05 6 Scope For Thought • Not effective on free-form MIDI data. • A new representation method : • Notes are encoded as multidimensional vectors; repeated patterns in a piece are geometric translations of these vectors. • Expansion of pieces can distort tonal harmony.