You are on page 1of 6

2014 Brazilian Conference on Intelligent Systems

Rhythmic Pattern Extraction by Community


Detection in Complex Networks

Andres Eduardo
Coca S.

Liang Zhao

ICMC - Instituto de Ciencias Matematicas e de Computaca o


Universidade de Sao Paulo (USP)
Sao Carlos, SP Brazil
E-mail: aecocas@icmc.usp.br

DCM - Departamento de Computaca o e Matematica


Universidade de Sao Paulo (USP)
Ribeirao Preto, SP Brazil
E-mail: zhao@usp.br

AbstractIn this paper, we study musical knowledge extraction and discrimination. Specically, we propose a method for
automatic extraction of drums rhythmic patterns of music and
the rhythmic summarization of a set of songs from the same
artist. A musical piece is generally formed of one or more
predened rhythmic patterns and such patterns are composed
of rhythmic cells (RC), which are groups of rhythmic gures
derived from -th division of a larger rhythmic gure. At the
pre-processing and encoding phase, the RCs of drums percussion
lines are represented in duration-weighted notation (DWN). Then,
the vector of DWM is encoded to be free of the dimensional
dependence on the number of gures in the RC. After that, a
network is constructed from the encoded DWM using the method
proposed in this paper. We nd that the rhythmic patterns of the
musical work are related to the formation of communities in the
network. In this work, two community detection algorithms are
used: Louvain algorithm for the disjoint community detection and
Bayesian Nonnegative Matrix Factorization algorithm (BNMF)
for detecting overlapping communities. Moreover, a new measure
for quantifying the relevance of communities to differentiate types
of rhythmic patterns is introduced. The proposed technique has
been applied to automatic extraction of drums rhythmic pattern
of the song Drive my car by The Beatles. Experimental results
show good performance of the proposed method.

of sequences previously segmented and quantized [7]. The


similarity values are arranged in a matrix and the patterns
are built concatenating the consecutive cells that are on the
diagonal of the similarity matrix. Experimental results of
rhythmic pattern extraction of the guitar accompaniment of
Bossa Novas songs are described in [8].
Traditionally, in many works of Music Information Retrieval (MIR), the rhythm is processed using rhythmic gures in an individual way. For example, the algorithm of
music composition and classication presented in [9] and
[10], respectively, which generates complex networks with
the transition between independent rhythmic gures. Aiming
to uncover the collective behavior of rhythm, we propose to
represent the rhythm by groups of rhythmic gures, but not
simply by individual gures.
A musical piece is divided into periodic pulses (beats)
with relative duration which group rhythmic gures of lesser
duration. The rhythmic gure that occupies the duration of
a pulse can be divided into gures of same duration,
including silences. This set of gures is called as rhythmic
cell (RC). To represent any type of RC the duration-weighted
notation (DWN) [11] is used. Because the DWNs vector is
affected by dimensional variability, i.e., it depends on the
number of gures of RC, these RCs should be extracted and
encoded automatically. For this purpose, we have develop a
RC encoding algorithm. Due to the page limit, the complete
description and the detailed analysis of the algorithm will be
presented elsewhere.

Keywordsmusical knowledge extraction; complex networks;


community detection; topological measures; musical rhythm; drum
patterns

I.

I NTRODUCTION

The progressive expansion of the musical databases on


the Internet and the evolution of automatic data acquisition
techniques have stimulated the emergence of specialized tools
for discriminating and extracting knowledge by automatic processing of implicit information contained in the data [1]. In this
context, machine learning and pattern recognition techniques
have been applied in the knowledge extraction in various areas,
e.g., in astronomy [2], biology [3] and music [4], among others.

A fundamental eld in process of rhythmic extraction


proposed is the theory of complex networks. The complex
networks refer to graphs with non-trivial topology and consisting of a large amount of nodes [12]. Some examples include
website content (World Wide Web) [13] and organizational
or business networks between companies [14], among others.
A notable feature present in many complex networks is the
presence of local structures known as communities. Such
communities can be dened as groups of nodes densely connected, while connections between nodes of different groups
are relatively sparse [15]. Network communities represent
patterns of interaction between nodes of the network and their
identication is important in understanding the mechanisms
of network growth and formation. Many community detection
techniques have been proposed, see [15][17] and references
there in.

Musical knowledge extraction has also been investigated


[5] for the last decades. In the rhythmic domain, a specic task
is the extraction of the rhythmic pattern of a musical piece. In
this topic, a method for extracting perception-based musical
pattern is described in [6], which seeks potential candidates
for rhythmic pattern among of all possible combinations of
successive events within a temporal window. However, such
an analysis requires a high computational cost for the sequences containing many events. Another method proposed
for rhythmic extraction calculates the similarity between pairs
978-1-4799-5618-0/14 $31.00 2014 IEEE
DOI 10.1109/BRACIS.2014.77

396

In this paper, we propose a system based on community


detection in complex networks for extracting the rhythmic patterns of percussion of a song and for rhythmic summarization
of a set of songs of the same genre and artist using symbolic
data. Firstly, a network is generated from the codes of RCs of
the input songs percussion lines instead of only considering
the individual gures, as having been done in the previous
works [10] [9], our network construction method incorporates
the groups of rhythms and also the silence notes, which is
an important element of rhythmic pattern. Then, community
detection techniques are applied to determine the groups of
RCs forming rhythmic patterns within the song. In this work,
the community detection is performed from two different
perspectives: the detection of disjoint communities and the
detection of overlapping communities. For the rst approach,
we use the Louvain algorithm [17] and for the second one, the
Bayesian Nonnegative Matrix Factorization algorithm (BNMF)
[18] is applied. The remaining question is how the detected
communities are related to the rhythmic patterns of the song
under analysis. For this purpose, we also propose a measure
to indicate the correspondence between the communities and
the main rhythmic pattern. Finally, the codes of the nodes of
the most relevant communities are decoded using an algorithm
specially developed by the authors and the MIDI le of the
principal rhythmic pattern is generated.

this context, we present a rhythmic representation according


to the nature of music theory.
A rhythmic cell (RC) is a set rhythmic gures derived from
the -th ( ) division of a rhythmic gure which occupies
the time of a beat (unit of time). A primary rhythmic cell
(PRC) is a cell obtained from natural division of a gure and
a secondary rhythmic cell (SRC) is a cell that is derived from
a PRC (called the primary rhythmic cell of origin) by using
the tie operator among a subset of consecutive sound gures.
For example, for the PRC in Fig. 1(a) three SRCs are formed
as shown in Fig. 1(b). Note that not all primary rhythmic cells
can generate secondary cells.
Both PRCs and SRCs are represented by a vector v
of 1 , here we call vector of representation. The PRCs
are represented in binary notation, where a 1 represents the
onset and a 0 represents the silence. For example, the binary
vector of representation of PRC of Figure 1(a) is [ 0 1 1 1 ],
indicating that the rhythmic cell is composed of 4 gures, the
rst gure is a silence and the other three are sound gures of
equal duration. The SRCs are represented with the durationweighted notation (DWN) [11]. The DWN is a vector with
an amplitude weight (AW) at the position of onset and a zero
elsewhere. For example, the rst SRC of origin PRC ? ( ( (
of Fig. 1 (a) is ? ( and its AW is ( , whose value is 1/2,
and contains two times the AW and ( one time, therefore
the vector of DWN is [0201]. Figure 1(b) shows all SRCs and
their respective vectors of representation of the origin PRC of
Figure 1(a), whose unit of time is a half note ( value 2).

In this work, the proposed method is validated by extracting


the rhythmic pattern of the drum line of the song Drive my car
by The Beatles and in rhythmic summarization of the musical
genre of a set of songs from the same artists. The results show
that the proposed method for extracting the rhythmic pattern
produces good results.
In rhythmic pattern extraction tasks, many studies use the
signal audio [6] and few others symbolic data [7]. Our method
belongs to the latter group, so only the information contained
in the sheet is necessary. Furthermore, due to the origin of the
proposed method is based on complex networks, the extraction
method can be easily adapted through the adjacency matrix to
other MIR tasks also based on networks, e.g., classication of
musical genres and automatic composition.

Fig. 1. Vector of representation of a (a) primary rhythmic cell (PRC) and its
(b) secondary rhythmic cells (SRCs) with = 4 and unit of time half note.

The vector representation is a simple and comprehensible


way for representing groups of rhythmic gures. Once the
representation vector is built, it should be encoded in order to
facilitate the organization, sorting, computational manipulation
and construction of RCs. A rhythmic cell can be completely
encoded using four numbers, each having a specic meaning.
These values are arranged in the vector c, called code vector,
so: c = [ ], where indicates the number
of divisions of the rhythmic gure to be divided, is the
decimal value of the binary vector representation of the PRC
of origin, is the lexicographical position of the SRCs within
the total possible secondary rhythmic cells of PRC of origin
and is the number of beats that occupies the RC.

The rest of the paper is organized as follows. Section II


describes the method for extraction of the rhythmic pattern
step by step. Section III presents the experimental results and
Section IV concludes the paper.
II.

T HE PROPOSED METHOD FOR RHYTHMIC PATTERN


EXTRACTION

The proposed method for extracting the rhythmic pattern


can be applied to a single music sample or a set of samples. It consists of the following steps: selection of rhythm
information of the MIDI le; debugging using a quantization
method; separation and representation of rhythmic cells and
encoding the representation vectors, construction of a network
from RC codes; communities detection on the constructed
network; calculating the relevance measure; decoding of nodes
in the most relevant community and generating the principal
rhythmic pattern in symbolic notation.

B. Constructing the musical network


A network can be generated to represent any of the
elements of the music piece, such as harmony, structure, pitch
or rhythm. For the latter case, current works consider the
network construction using only rhythmic gures individually,
where the node corresponds a rhythmic gure and an edge
is created between two consecutive rhythmic gures [10] [9],
this network is a directed graph (digraph). Such a method has

A. Representation and encoding of rhythmic cells


The preliminary phases of preprocessing and encoding are
important steps to guarantee the quality of the nal result. In

397

proposed in [15]. The factor is dened as the fraction


of intra-community edges minus the expected value of the
same fraction, considering that the edges are randomly inserted
regardless of the community structure. Values of very
close to 0 indicate low probability of the network is divided
into communities, and higher values indicate the presence
of communities [16]. Many algorithms have been proposed
to optimize the factor , for example, the classic algorithm
of modularity proposed by Newman and Girvan in [15], the
agglomerative algorithm hierarchical of Newman [16] and the
Louvain algorithm [17]. The latter is implemented by Gephi
software [19] and will be used in this work. In the case of
detecting overlapping communities will be used the Bayesian
Nonnegative Matrix Factorization algorithm (BNMF) [18].

several shortcomings that affect the quality of data representation through the network: (1) Although the silence notes are
considered, these are not discriminated between silences of
beat and silences within beat; (2) disregard the group structure
of the gures. As a consequence, the constructed network may
loss the order and the hierarchy of gures.
Aimed at resolving all previous drawbacks, in this paper
we propose the use of RCs in the creation of rhythmic network, where a node no longer corresponds with an individual
rhythmic gure, but with the group of several rhythmic gures
that forming a RC. To ease the manipulation and analysis
computational, the rhythmic cells are encoded and decoded
using an algorithm specially developed by the authors.
A musical piece can have one or more line of percussion.
The lines are extracted from the MIDI le and stored in a
separate array. Through the encoding algorithm, we get the
codes of the RCs and with these we create the network, where
the nodes are the code RCs and edges are created between two
consecutive code RCs. For generation of networks for two or
more lines of percussion, two options are possible: concatenate
the vectors with the codes horizontally or vertically. For example, for three lines, the codes obtained for each line are stored
in the vectors a, b and c, respectively. Let be the concatenation operator on the elements (or vectors) and , the result
is . The horizontal concatenation consists of joining the code
vectors of the three percussion lines into a single vector, one
after another, i.e., D = a b c and the resulting vector
is D = [ a b c ]. The vertical concatenation consists of
joining the three code vectors in matrix arrangement, one
below another, with the vector of the rst line at the top, and
then concatenate the elements of the columns of the resulting
matrix to form a single vector. This process is performed using
the concatenation operator as follows: E = aT bT cT ,
T
whose result is [ 1 1 1 2 2 2 ] , where is
the total number of RCs. Finally, the network is constructed
for the vector D or E. For a set of songs the network is created
concatenating horizontally the vectors of each song, i.e., the
vectors that have been concatenated horizontally or vertically.

D. Measuring the relevance of communities


A network measure is proposed in this work with the
objective of quantifying the relevance of the communities
in terms of the amplitude and density of the weights. The
main idea is that the frequency of appearance of the data that
generates the network is reected in the weights of the edges
and in its intra-community distribution. For the network with
adjacency matrix W the vector of relevance regarding matrix
communities C, denoted as (C) [0, 1], is given by:
d
(C) =

(1)

where d is an intermediate vector containing the quantication of the concentration of the weight of edges within
communities,
and whose ]elements are calculated as: =
] /[
[
T
T
(AC) C
for communities 1 ,
(WC) C

where A is the binary adjacency matrix. Note that the measure


of relevance can be used in both disjoint and overlapping
communities. A high relevance value of a community indicates
how representative of this community in the whole network.
In this way, the less relevant communities can be ignored
without losing relevant information associated to the original
input data.

C. Community detection in the constructed networks


A community structure is dened by the tendency of some
nodes of network organized into modules with a high density of connection between them and low density connection
between the nodes belonging to other modules [16]. There
are many examples that can be found in nature and in everyday life, such as, scientic, technological, biological, social
communities and other [12]. Several techniques have been
developed for detecting communities in complex networks,
these techniques take advantage of the existing properties
between the internal nodes of communities or between nodes
of different communities. The detection algorithm returns a
matrix C of rows and columns, where is the number of
communities and the element , is 1 if node belongs to
the community , and zero otherwise. In addition, communities
can share nodes, in this case, the matrix of communities has
values in the range [0, 1], indicating the degree of membership
of each node within each community. This case is known as
overlapped communities.

E. Rhythmic Pattern Extraction and Rhythmic Summarization


The communities with the highest relevance correspond
with the main rhythmic patterns and less relevant with fortuitous phrases or transition as bridges, intro, coda...etc. The
nodes of the most important communities are used to create the
main pattern. To build the rhythmic pattern a walk among the
involved nodes should be performed, but some rules should
be established. These rules are: It should be considered (a)
all nodes; (b) all edges; (c) the weight of the edges; and (d)
the order of the nodes and the direction of the edges must be
respected.
In the summarization task, the most relevant community
corresponds with all the main patterns of each samples in the
set of songs. Therefore, making a walk in this community
many patterns are possible. However, to extract only the pattern
which summarizes the entire set, the nodes with the largest
intra-community mean total degree (MTD) are selected. The
rhythmic pattern summarization is created by making a walk
with these nodes respecting the rules described above.

A measure for quantifying the possible partitions of the


network in communities, known as modularity factor , was

398

III.

E XPERIMENTAL R ESULTS

The digraph of RCs of the three percussion lines vertically


concatenated is shown in Figure 3. In Table II are listed the
nodes of the network that compose the patterns and bridges
described in Table I. Note that there are some RCs shared by
multiple parties, for example, RC 3, 5 and 6 between the parts
1 and 2, and RC 7 to 11 among the bridges 1, 2, and 3.

In this section, the proposed method is applied for extracting the drum rhythmic patterns of a known song and for
summarizing rhythm of a set of songs from the same genre
and the same artist. Specically, the goal is to determine which
are the RCs that compose the main rhythmic pattern executed
by drums and to extract the rhythmic pattern that represents
the musical genre of a set of songs, as well as the order of
occurrence of RCs within each pattern. Subsequently, a MIDI
le of the main pattern is generated.
The chosen song in this simulation is Drive my car by
The Beatles. For our purpose, only one part of the song is
sufcient, this is the line of percussion performed by drums.
The sheet music of percussion of the song Drive my car is
shown by Fig. 2. The percussive structure executed by drums
is formed by the hit-hat cymbals; the second one, located in
the middle part, executes middle and high tom-tom; the third
one, located at the bottom, executes the bass drum.

Fig. 3. Digraph of three drums percussion lines of Drive my car vertically


concatenated (using codes of RCs).

TABLE II.

Fig. 2.

Typo of phrase
Intro
Pattern 1
Pattern 2
Bridge 1
Bridge 2
Bridge 3
Bridge 4
Bridge 5

Drums sheet music of Drive my car by The Beatles.

Total nodes
2
4
3
6
7
7
2
2

TABLE III.

C OMMUNITIES DETECTED BY THE L OUVAIN AND BNMF


ALGORITHM FOR THE DIGRAPH AND RELEVANCE MEASURE OF EACH
COMMUNITY
Communities
1
2
3
4
5

TABLE I.
R HYTHMIC PATTERNS AND BRIDGES OF THE SONG Drive my
car AND SOME BASIC CHARACTERISTICS : LENGTH IN BEATS (LB),
QUANTITY OF RC S (QRC S ), AND RANKING ESTIMATED OF RELEVANCE

()

Louvain
Nodes

(C)
1,2
0.02
3,4,17,18
0.19
5,6
0.70
7,8,9,10,11,12,13,16 0.40
14,15
0.05

BNMF
Nodes
(C)
2,4,6,9,12,13,15,18 0.18
8,11,13,17
0.18
3,5
0.45
7,10,14,16
0.19

Analyzing the results, we can see that the communities


obtained are consistent to the actual structure of the song,
because these results show the information of dependency
and the order of the gures within each beat, as well as, the
relationship between the RCs of the lines during the evolution
of music. In this case, it can be noticed that the community 1
(nodes 1 and 2) corresponds to the RCs of part 1 (introduction),
communities 2 and 3 (nodes 3, 4, 5, 6, 17, 18) correspond to the

LB QRCs
2
1
4
3
4
3, 8, 9, 11, 13, 17, 18, 20 3*(1+6+1)+1+8+2*4=41 4
4
1
4, 10, 14
5+1+5+5+5=21
4
3
2
5e6
1
8
6
4
5e7
1+1=2
8
7
3
5 e 16
1
8
7
4
12 e 19
1+1=2
4
2
3
21
1
4
4
4
No. Bar

Nodes
1,2
3,4,5,6
3,6,5,6
7,8,9,10,11,12
7,8,9,10,11,12,13
7,8,9,10,11,13,16
14,15
17,18

The communities obtained by the Louvain and BNMF


algorithm and the relevance values of the detected communities
are described in Table III. Moreover, Figure 4 illustrates the
communities obtained by the Louvain algorithm.

Table I lists the patterns and bridges that make up the song
and some of the basic features: number of the bars that occupy,
total number of repetitions, length in beats (LB), quantity of
RCs (QRCs) and ranking of relevance estimated according to
the total number of occurrences within the entire musical piece
(where the rst position is the largest estimated relevance).
()
The song is rhythmically composed of an introduction, 2
patterns and 5 bridges. Note that the bridges 1 to 3 have similar
features and can be grouped into a single part.

Type of phrase
Intro
Pattern 1
Pattern 2
Bridge 1
Bridge 2
Bridge 3
Bridge 4
Bridge 5

N ODES OF THE DIGRAPH OF EACH PARTS OF SONG Drive


my car

Total repetitions

399

for the node 13, once, according to presented above results,


the RC 13 is used by bridges 2 and 3. It means that the
communities detected by BNMF algorithm only partially agree
to the expected values.

Fig. 4.

Communities detected by the Louvain algorithm for the digraph.

rhythmic pattern 1 and 2, community 5 with the bridge 4 and


community 4 (nodes 7, 8, 9, 10, 11, 12, 13, 16) with bridge 1,
2 and 3, which are considered as a single part due to their
similarity.

Fig. 6. Colormap of the matrix communities estimated by BNMF algorithm.

Figure 7 shows the membership value of nodes 13 and 15


within the communities detected by BNMF algorithm. With
regard to node 13, we can see that its membership value is
larger in the community 2, which conrms that this node
is more connected to nodes 8 and 11, thus conforming the
bridge 1 and 2 of the Table II. With regard to node 15, the
algorithm indicates that it is more connected to the community
4, thus conforming to the bridge 4 of the Table II. With this
information the bridges can be constructed in a similar way.

A high relevance value indicates that the node in such a


community has high relevance to rhythmic pattern of the song.
So, the nodes that make up the most relevant communities
are the RCs of the main patterns of the song, and the nodes
in less relevant communities correspond to fortuitous phrases
(rhythmic bridges). In this simulation, the community 3 has
the highest relevance with 70%, the community 2 has the
second highest relevance with 19%. The relevance of other
communities are less than 10%. These values agree to the
in Table I. Therefore, the
ranking of estimated relevance ()
main rhythmic pattern corresponds to the nodes 3, 4, 5, 6, 17,
18 of the network shown by Fig. 3.
Analyzing the network of Fig. 3, we see that the nodes
17 and 18 must terminate the sequence by having a weight
equal to 1, node 3 is connected to 4, but, to return to 4 it must
pass through 5 e 6, so the communities 2 and 3 should be
together. Preserving the rules is obtained the sequence: 3,4,5,6,
3,4,5,6....,3,4,17,18. The codes of the nodes of this sequence
are decoded to get the note matrix for each RC and hence
the MIDI le. The sheet of the rhythmic pattern extracted is
shown in Fig. 5.

Fig. 5.

Fig. 7. Membership value of common nodes among communities detected


by BNMF algorithm.

The proposed method can be used to extract the rhythm


pattern, if it exists, of any song, of any artist and any genre.
As additional examples, consider the numbered songs in Table
V. For these songs, in Table IV are presented the nodes of the
most relevant community (NMRC), the relevance value and
the sheet of extracted drums rhythmic pattern (DRP). Note that
different songs share the same pattern, which are separated and
grouped in the table.

Sheet of drums rhythmic pattern extracted of digraph.

Due to detected communities are disjoint, the identication


of RCs shared by two or more patterns has been disregarded.
In other words, each node belongs to one and only one
community, which is not true according to the structure of
the musical work (Table I). Therefore, the use of an overlapping community detection algorithm is more appropriate for
this study. The last columns of Table III show the detected
communities using BNMF algorithm and their corresponding
relevance values. Figure 6 shows the membership value of
the nodes within the communities detected by the BNMF
algorithm, colors close to red indicate higher membership of
node to community . It is veried that the nodes 13 and
15 are common nodes to many communities. This is expected

Aiming at summarizing the rhythm of the musical genre


of a set of 8 songs by The Beatles (shown by Table V),
a network is generated with the RCs of these songs. The
generated network as well as the communities obtained by the
Louvain algorithm are shown by Fig. 8. The relevance of the 4
communities is: [ 0.44 0.01 0.22 0.29 0.02 ]. The rst
community has the highest relevance value, therefore, it will
be selected to generate the rhythmic pattern of the genre of
the songs. Thus, the nodes with the largest intra-community
mean total degree (MTD) are the nodes 1, 2, and 3, with
MTD of 0.37, 0.19, 0.30, respectively. Applying the controlled

400

TABLE IV.

N ODE OF THE MOST RELEVANT COMMUNITY (NMRC),


RELEVANCE MEASURE AND SHEET OF EXTRACTED DRUMS RHYTHMIC
PATTERN (DRP) FOR THE SONGS OF THE TABLE V
No. Song
2
3
4

NMRC
1,2,3
6,7,8
1,2,3

(C)
0.99
0.64
0.80

1
5
7

2,3
1,2
1,2

0.99
0.90
0.94

6
8

3,4,5,6
1,2,3,4

0.70
0.91

detection techniques are applied to uncover RC code groups


and a new measure for characterizing the relevance of the
detected communities has been proposed. The use of rhythmic
cells and of the relevance measure is interesting because the
RCs allow to reect the rhythmic information within network
communities with high quality and the relevance measure
allows to distinguish the types of drums rhythmic patterns.
Such a measure can be also used for debugging networks
generated with another data type, for example, to distinguish
sporadic groups of friends in a social networks. Finally, it is
worth mention that this rhythmic pattern extraction is useful in
various applications, for example, in the characterization and
classication of musical genres.

Sheet of extracted DRP

ACKNOWLEDGMENT
walk over these nodes, following the above mentioned rules,
the sequence of nodes is 1,2,1,3 .... Applying the decoding
algorithm to this sequence, we get the rhythmic pattern shown
by Fig. 9. The obtained rhythmic pattern summarizes the
musical genre of the set of songs and it is a typical drum
pattern of the rock.
TABLE V.

The authors would like to thank Capes, CNPq and FAPESP


for nancial supports of this research.
R EFERENCES
[1] S. Pal and P. Mitra, Pattern Recognition Algorithms for Data Mining.
Chapman and Hall-CRC, 2004.
[2] C. Liebe, Pattern recognition of star constellations for spacecraft
applications, EEE Aerospace and Electronic Systems Magazine, vol. 8,
no. 1, pp. pp. 3339, 1993.
[3] K. Chehdi and D. Coquin, Pattern recognition by image analysis. application to marine biology, in Proc. 11th IAPR International Conference,
1992.
[4] K. D. Martin and Y. E. Kim, Musical instrument identication: A
pattern-recognition approach, in Proc. 136th Meeting of the Acoustical
Society of America, 1998.
[5] T. Zhang, Automatic singer identication, ICME, vol. 1, pp. I336,
2003.
[6] O. Lartillot, Perception-based advanced description of abstract musical
content, Proc. European Workshop on Image Analysis for Multimedia
Interactive Services, 2003.
[7] B. Meudic, Musical pattern extraction: From repetition to musical
structure, Proc. Computer Music Modeling and Retrieval, 2003.
[8] E. Trajano and G. Ramalho, On rhythmic pattern extraction in bossa
nova music, Proc. Int. Symp. Music Inf. Retrieval (ISMIR), 2008.
[9] X. Liu, C. Tse, and M. Small, Complex network structure of musical
compositions: Algorithmic generation of appealing music, Physica A,
vol. 389, no. 1, pp. pp. 126132, 2010.
[10] D. Correa, J. Saito, and L. da F. Costa, Musical genres: Beating to the
rhythms of different drums, New J. Phys., vol. 12, p. 053030, 2010.
[11] W. Sethares, Rhythm and transforms. Springer, 2007.
[12] R. Albert and A. Barabasi, Statistical mechanics of complex networks,
Review of Modern Physics, vol. 74, pp. pp. 4797, 2002.
[13] R. Albert, H. Jeong, and A. Barabasi, Diameter of the world wide
web, Nature, vol. 401, pp. pp. 130131, 1999.
[14] T. Ritter, I. Wilkinsonb, and W. Johnstonc, Managing in complex
business networks, Industrial Marketing Management, vol. 33, no. 3,
pp. pp. 175183, 2004.
[15] M. Newman and M. Girvan, Finding and evaluating community
structure in networks, Physical Review E, vol. 69, p. 026113, 2004.
[16] M. Newman, Fast algorithm for detecting community structure in
networks, Physical Review E, vol. 69, p. 066133, 2003.
[17] V. Blondel, J.-L. Guillaume, R. Lambiotte, and E. Lefebvre, Fast
unfolding of communities in large networks, J. Stat. Mech, p. P10008,
2008.
[18] I. Psorakis, S. Roberts, and M. Ebden, Overlapping community detection using bayesian non-negative matrix factorization, Physical Review
E, vol. 83, p. 066114, 2011.
[19] M. Bastian, S. Heymann, and M. Jacomy, Gephi: An open source
software for exploring and manipulating networks, in Proc. Int. AAAI
Conference on Weblogs and Social Media, 2009.

S ET OF SONGS BY The Beatles USED FOR RHYTHMIC


SUMMARIZATION

1.
2.
3.
4.

Names
I Need You
5.
Im Looking Through You
6.
I Want To Hold Your Hand
7.
From Me To You
8.

Song
Do You Want To Know A Secret
Drive Me Car
Act Naturally
Dizzy Miss Lizzy

Fig. 8. Communities detected by Louvain algorithm for the network generated


with the 8 songs by The Beatles shown in Table V.

Fig. 9. Drums rhythmic pattern that summarizes the musical genre of the
set of songs by The Beatles shown in Table V.

IV.

C ONCLUSION

A method for extracting drums rhythmic pattern of a


musical piece and for rhythmic summarization of a set of song
has been proposed in this paper. The novelty is that the method
is based in complex network and, consequently, capable to
reveal topological structures of the rhythm. In this method,
the rhythmic cells are adopted to represent more faithfully
the musical rhythm. The representation vector of RCs are
encoded to avoid the dimensional dependency. Community

401