<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE document PUBLIC "-//CNX//DTD CNXML 0.5 plus MathML//EN" "http://cnx.rice.edu/cnxml/0.5/DTD/cnxml_mathml.dtd">
<document xmlns="http://cnx.rice.edu/cnxml" xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="Module.2003-12-11.5028">
  <name>Music Classification by Genre: System Performance</name>
  <metadata>
  <md:version>1.3</md:version>
  <md:created>2003/12/11 21:50:28 US/Central</md:created>
  <md:revised>2003/12/17 17:51:37.869 US/Central</md:revised>
  <md:authorlist>
    <md:author id="mitali">
      <md:firstname>Mitali</md:firstname>
      
      <md:surname>Banerjee</md:surname>
      <md:email>mitali@rice.edu</md:email>
    </md:author>
  </md:authorlist>

  <md:maintainerlist>
    <md:maintainer id="mitali">
      <md:firstname>Mitali</md:firstname>
      
      <md:surname>Banerjee</md:surname>
      <md:email>mitali@rice.edu</md:email>
    </md:maintainer>
  </md:maintainerlist>
  
  <md:keywordlist>
    <md:keyword>system</md:keyword>
    <md:keyword>performance</md:keyword>
    <md:keyword>music</md:keyword>
    <md:keyword>classification</md:keyword>
    <md:keyword>genre</md:keyword>
  </md:keywordlist>

  <md:abstract>Our system successfully determined the genre of the vast majority of the test songs. Not only did the system choose a genre, it quantified its output with a level of sureness.  </md:abstract>
</metadata>

  <content>
 
<figure id="evsi">
  <media type="image/jpeg" src="errorvsiteration.gif"/>
  <caption>
    Performance of the neural network improved with successive inputs of training vectors.  It begins to recognize characteristics of each music genre!
  </caption>
</figure>

<figure id="train1">
  <media type="image/jpeg" src="trainingvectors.gif"/>
  <caption>
When tested with the training vectors, the system is 87.5% accurate.  Higher accuracy implies that the system has memorized the training set and is unable to generalize when given new inputs.  Lighter background stripes indicate greater certainty in identification, while increasingly darker hues note greater uncertainty.  Horizontal black bars indicate actual genre, and the stems indicate predicted genre.
  </caption>
</figure>

    <para id="training">
These plots show how well the first three genres separate in the output of the network.  Even the testing vectors are separated by a high degree of confidence.  
    </para> 

<figure id="train2">
  <media type="image/jpeg" src="trainingvectors2.gif"/>
  <caption>
Spatial separation, weighted by sureness level, of classical (red), jazz (blue), and rap (green) in the training vectors. 
  </caption>
</figure>

<figure id="train3">
  <media type="image/jpeg" src="trainingvectors3.gif"/>
  <caption>
Spatial separation, weighted by sureness level, of punk (red), techno (blue), and country (green) in the training vectors. 
  </caption>
</figure>

<figure id="t1">
  <media type="image/jpeg" src="testvectors.gif"/>
  <caption>
    Though worthy of the Museum of Modern Art, this depicts the output of the neural network for each of the six genres.
  </caption>
</figure>

<figure id="t2">
  <media type="image/jpeg" src="testvectors2.gif"/>
  <caption>
    Provided songs that the network has never seen, it performs perfectly and with high confidence for rap, while classification of techno is comparably poor.  However, the system is aware of this: error coincides with lack of confidence.  Lighter background stripes indicate greater certainty in identification, while increasingly darker hues note greater uncertainty.  Horizontal black bars indicate actual genre, and the stems indicate predicted genre.
  </caption>
</figure>

<figure id="t3">
  <media type="image/jpeg" src="testvectors3.gif"/>
  <caption>
Spatial separation, weighted by sureness level, of classical (red), jazz (blue), and rap (green) in the training vectors. 
  </caption>
</figure>

<figure id="t4">
  <media type="image/jpeg" src="testvectors4.gif"/>
  <caption>
Spatial separation, weighted by sureness level, of punk (red), techno (blue), and country (green) in the training vectors. 
  </caption>
</figure>

    <para id="conclusion">
Our system successfully determined the genre of the vast majority of the test songs. Not only did the system choose a genre, it quantified its output with a level of sureness.  When the system was in error, there was a corresponding uncertainty.  The genre that gave our system the most difficulty was techno.  The output of the DSP functions for techno had a very high standard deviation, making it hard for the neural network to distinguish its pattern from those of the other genres.   Given an unknown song, there is an 84% chance that the system can determine the genre successfully.
    </para> 
  </content>
  
</document>
