MIR workshop 2013

From CCRMA Wiki

(Difference between revisions)
Jump to: navigation, search
(Bonus Lab material)
(Logistics)
 
(25 intermediate revisions not shown)
Line 6: Line 6:
* Location: The Knoll, CCRMA, Stanford University. http://goo.gl/maps/nNKx
* Location: The Knoll, CCRMA, Stanford University. http://goo.gl/maps/nNKx
* Instructors:  
* Instructors:  
-
** Jay LeBoeuf, [http://www.izotope.com iZotope, Inc.],  
+
** [http://www.linkedin.com/in/jayleboeuf/ Jay LeBoeuf], [http://www.izotope.com iZotope, Inc.],  
-
** [http://stevetjoa.com/, Steve Tjoa]
+
** [http://stevetjoa.com Steve Tjoa]
** Leigh Smith,  [http://www.izotope.com iZotope, Inc.]
** Leigh Smith,  [http://www.izotope.com iZotope, Inc.]
Line 73: Line 73:
* Application: Instrument recognition and drum transcription / Using simple heuristics and thresholds (i.e. "Why do we need machine learning?")  
* Application: Instrument recognition and drum transcription / Using simple heuristics and thresholds (i.e. "Why do we need machine learning?")  
-
* [http://ccrma.stanford.edu/workshops/mir2013/Lab%201%20-%20Basic%20feature%20extraction%20and%20classification%20%282013%29.pdf PDF Lab 1 - Basic Feature Extraction and Classification] <br>
+
* [http://ccrma.stanford.edu/workshops/mir2013/Lab%201%20-%20Basic%20feature%20extraction%20and%20classification%20%282013%29.htm HTML Lab 1 - Basic Feature Extraction and Classification] <br>
* [http://ccrma.stanford.edu/workshops/mir2013/Lab%201%20-%20Basic%20feature%20extraction%20and%20classification%20%282013%29.htm HTML Lab 1 - Basic Feature Extraction and Classification] <br>
Line 94: Line 94:
Demo: MediaMined Discover ([https://discover.izotope.com/ Rhythmic Similarity])
Demo: MediaMined Discover ([https://discover.izotope.com/ Rhythmic Similarity])
-
 
-
 
* Onset-detection: Many Techniques
* Onset-detection: Many Techniques
** Time-domain differences
** Time-domain differences
Line 134: Line 132:
Part 2: Add in MFCCs to classification and test w Cross validation  
Part 2: Add in MFCCs to classification and test w Cross validation  
* [https://github.com/stevetjoa/ccrma#lab-2 Lab 2 description]
* [https://github.com/stevetjoa/ccrma#lab-2 Lab 2 description]
-
 
+
* See [https://github.com/stevetjoa/ccrma/blob/master/odf_of_file.m Onset Detection Function example] within the MIR matlab codebase in Octave/Matlab.
-
Matlab code for key estimation, chord recognition:
+
-
* [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.tgz Lab - download lab3.tgz]
+
-
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.html Lab - Key estimation, chord recognition]
+
-
**  [https://ccrma.stanford.edu/workshops/mir2012/ODF.zip Onset Detection Function example code in Octave/Matlab]
+
* Bonus Slides: Temporal & Harmony Analysis  
* Bonus Slides: Temporal & Harmony Analysis  
Line 147: Line 141:
=== Day 3: Machine Learning, Clustering and Classification ===
=== Day 3: Machine Learning, Clustering and Classification ===
-
(PCA, LDA, k-means, SVM) - Steve
+
Classification: Unsupervised vs. Supervised, k-means, GMM, SVM - Steve [http://ccrma.stanford.edu/workshops/mir2013/CCRMA_MIR2013_ML.pdf Lecture 5 Slides]
-
 
+
-
(see LDA lab 2009 day 5)
+
Demo: iZotope Discover (Sound Similarity Search) [http://www.izotope.com/tech/cloud/mediamined.asp  Video]  
Demo: iZotope Discover (Sound Similarity Search) [http://www.izotope.com/tech/cloud/mediamined.asp  Video]  
 +
 +
Guest Lecture 6: Ching-Wei Chen, Gracenote
'''Lab 3'''
'''Lab 3'''
Topic: MFCC + k-Means, Clustering
Topic: MFCC + k-Means, Clustering
* [http://ccrma.stanford.edu/workshops/mir2012/2012-ClusterLab.pdf K-Means]
* [http://ccrma.stanford.edu/workshops/mir2012/2012-ClusterLab.pdf K-Means]
 +
 +
Matlab code for key estimation, chord recognition:
 +
* [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.tgz Lab - download lab3.tgz]
 +
* [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.html Lab - Key estimation, chord recognition]
=== Day 4: Music Information Retrieval in Polyphonic Mixtures ===
=== Day 4: Music Information Retrieval in Polyphonic Mixtures ===
-
Presenter: Steve Tjoa, Nick Bryant, Gautham Mysore
 
-
<u>Day 4, Part 1: Music Information Retrieval in Polyphonic Mixtures</u>
+
Lecture 7: Steve Tjoa, [http://ccrma.stanford.edu/workshops/mir2013/ccrma20130627.pdf Lecture 7 Slides]
 +
 
* Music Transcription and Source Separation
* Music Transcription and Source Separation
* Nonnegative Matrix Factorization
* Nonnegative Matrix Factorization
* Sparse Coding
* Sparse Coding
-
<u>Day 4, Part 2: TBD</u>
+
Guest Lecture 8: Nick Bryan, Gautham Mysore
 +
Nick & Gautham's latest publications:  <br>
 +
https://ccrma.stanford.edu/~gautham/Site/Publications.html<br>
 +
https://ccrma.stanford.edu/~njb/
 +
 +
Nick Mini Course of Source Separation:  <br>
 +
https://ccrma.stanford.edu/~njb/teaching/sstutorial/
 +
 +
Itakura-Saito Divergence: [http://www.researchgate.net/publication/23250940_Nonnegative_matrix_factorization_with_the_Itakura-Saito_divergence_with_application_to_music_analysis/file/32bfe50fb2aa75bd93.pdf PDF]
'''Lab 4'''
'''Lab 4'''
-
* [http://ccrma.stanford.edu/workshops/mir2012/tjoa20120627ccrma.pdf Lecture and Lab 3 Slides, Steve Tjoa, 2012]
+
* [https://github.com/stevetjoa/ccrma#lab-4 Lab 4 Description]
=== Day 5: Information Retrieval Metrics, Evaluation, Real World Considerations ===
=== Day 5: Information Retrieval Metrics, Evaluation, Real World Considerations ===
-
Presenters: Leigh Smith
 
-
* [https://ccrma.stanford.edu/workshops/mir2012/CCRMA%202012%20day1%20v5.pdf Day 5 Slides (.pdf)]
+
Lecture 9: Leigh Smith, Evaluation Metrics for Information Retrieval [https://ccrma.stanford.edu/workshops/mir2013/CCRMA_MIR2013_IR.pdf Slides]
 +
 
 +
Lecture 10: Steve Tjoa, Introduction to Deep Learning [https://ccrma.stanford.edu/workshops/mir2013/CCRMA_MIR2013_DBN.pdf Slides]
References:  
References:  
-
** IR Evaluation Metrics (precision, recall, f-measure, AROC,...)
+
* IR Evaluation Metrics (precision, recall, f-measure, AROC,...)
-
*** [http://ccrma.stanford.edu/workshops/mir2009/references/recall_precision.pdf Recall-Precision]
+
** [http://ccrma.stanford.edu/workshops/mir2009/references/recall_precision.pdf Recall-Precision]
-
*** [http://ccrma.stanford.edu/workshops/mir2009/references/ROCintro.pdf ROC Analysis]
+
** [http://ccrma.stanford.edu/workshops/mir2009/references/ROCintro.pdf ROC Analysis]
-
 
+
-
 
+
-
'''Lab 5'''
+
-
Chroma, Key estimation, and Chord recognition: 
+
-
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.tgz Lab - download lab3.tgz]
+
-
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.html Lab - Key estimation, chord recognition]
+
-
 
+
-
<br>
+
=== Bonus Lab material ===
=== Bonus Lab material ===
Line 197: Line 196:
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.html Lab - Key estimation, chord recognition]
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/lab3.html Lab - Key estimation, chord recognition]
-
** [http://ccrma.stanford.edu/workshops/mir2009/Lab3/Lab5-SVMs.htm  SVM Lab]
+
** [http://ccrma.stanford.edu/workshops/mir2013/Lab5-SVMs.htm  SVM Lab]
* Overview of Weka & the Wekinator  
* Overview of Weka & the Wekinator  

Current revision as of 12:55, 8 July 2013

Intelligent Audio Systems: Foundations and Applications of Music Information Retrieval

Contents

Logistics

Workshop Title: Intelligent Audio Systems: Foundations and Applications of Music Information Retrieval

Abstract

How would you "Google for audio", provide music recommendations based your MP3 files, or have a computer "listen" and understand what you are playing? This workshop will teach the underlying ideas, approaches, technologies, and practical design of intelligent audio systems using Music Information Retrieval (MIR) algorithms.

MIR is a highly-interdisciplinary field bridging the domains of digital audio signal processing, pattern recognition, software system design, and machine learning. Simply put, MIR algorithms allow a computer to "listen" and "understand or make sense of" audio data, such as MP3s in a personal music collection, live streaming audio, or gigabytes of sound effects, in an effort to reduce the semantic gap between high-level musical information and low-level audio data. In the same way that listeners can recognize the characteristics of sound and music - tempo, key, chord progressions, genre, or song structure - MIR algorithms are capable of recognizing and extracting this information, enabling systems to perform extensive sorting, searching, music recommendation, metadata generation, transcription, and even aiding/generating real-time performance.

This workshop is intended for: students, researchers, and industry audio engineers who are unfamiliar with the field of Music Information Retrieval (MIR). We will demonstrate the myriad of exciting technologies enabled by the fusion of basic signal processing techniques with machine learning and pattern recognition. Lectures will cover topics such as low-level feature extraction, generation of higher-level features such as chord estimations, audio similarity clustering, search, and retrieval techniques, and design and evaluation of machine classification systems. The presentations will be applied, multimedia-rich, overview of the building blocks of modern MIR systems. Our goal is to make the understanding and application of highly-interdisciplinary technologies and complex algorithms approachable.

Knowledge of basic digital audio principles is required. Familiarity with Matlab is desired. Students are highly encouraged to bring their own audio source material for course labs and demonstrations.

Workshop structure: The workshop will consist of half-day lectures, half-day supervised lab sessions, demonstrations, and discussions. Labs will allow students to design basic ground-up "intelligent audio systems", leveraging existing MIR toolboxes, programming environments, and applications. Labs will include creation and evaluation of basic instrument recognition, transcription, and real-time audio analysis systems.

Schedule: Lectures & Labs

Day 1: Introduction to MIR, Signal Analysis and Feature Extraction

Presenters: Jay LeBoeuf, Leigh Smith

Glossary of Terms to be used in this course <work in progress>


Day 1: Part 1 Lecture 1 Slides

  • Introductions
  • CCRMA Introduction - (Carr/Sasha).
  • Introduction to MIR (What is MIR? Why are people interested? Commercial Applications of MIR)
  • Overview of a basic MIR system architecture
  • Timing and Segmentation: Frames, Onsets
  • Features: ZCR, Spectral moments; Scaling of feature data
  • Demo: Using simple heuristics and thresholds (i.e. "Why do we need machine learning?")
  • Classification: Instance-based classifiers (k-NN)
  • Information Retrieval Basics (Part 1)
    • Classifier evaluation (Cross-validation, training and test sets)


Day 1: Part 2 Lecture 2 Slides

  • Overview: Signal Analysis and Feature Extraction for MIR Applications (Historical: http://quod.lib.umich.edu/cgi/p/pod/dod-idx?c=icmc;idno=bbp2372.1999.356)
  • MIR Application Design
    • Audio input, analysis
    • Statistical/perceptual processing
    • Data storage
    • Post-processing
  • Windowed Feature Extraction
    • I/O and analysis loops
  • Feature-vector design (Overview: http://www.create.ucsb.edu/~stp/PostScript/PopeHolmKouznetsov_icmc2.pdf)
    • Kinds/Domains of Features
    • Application Requirements (labeling, segmentation, etc.)
  • Time-domain features (MPEG-7 Audio book ref)
    • RMS, Peak, LP/HP RMS, Dynamic range, ZCR
  • Frequency-domain features
    • Spectrum, Spectral bins
    • Spectral measures (statistical moments)
    • Pitch-estimation and tracking
    • MFCCs
  • Spatial-domain features
    • M/S Encoding, Surround-sound Processing Frequency-dependent spatial separation, LCR sources
  • Other Feature domains
    • Wavelets, LPC


Lab 1:

  • Application: Instrument recognition and drum transcription / Using simple heuristics and thresholds (i.e. "Why do we need machine learning?")


  • From your home directory, simply type the following to obtain a copy of the repository: git clone https://github.com/stevetjoa/ccrma.git
    • To receive an up-to-date version of the repository, from your repository folder: git pull

Students who need a personal tutorial of Matlab or audio signal processing will split off and received small group assistance to bring them up to speed.

  • REMINDER: Save all your work, because you may want to build on it in subsequent labs.

Day 2: Beat, Rhythm, Pitch and Chroma Analysis

Presenters: Leigh Smith, Steve Tjoa


Day 2: Part 1 Beat-finding and Rhythm Analysis Lecture 3 Slides A list of beat tracking references cited

Demo: MediaMined Discover (Rhythmic Similarity)

  • Onset-detection: Many Techniques
    • Time-domain differences
    • Spectral-domain differences
    • Perceptual data-warping
    • Adaptive onset detection
  • Beat-finding and Tempo Derivation
    • IOIs and Beat Regularity, Rubato
      • Tatum, Tactus and Meter levels
      • Tempo estimation
    • Onset-detection vs Beat-detection
      • The Onset Detection Function
    • Approaches to beat tracking & Meter estimation
      • Autocorrelation
      • Beat Spectrum measures
      • Multi-resolution (Wavelet)
    • Beat Histograms
    • Fluctuation Patterns
    • Joint estimation of downbeat and chord change


Day 2, Part 2: Pitch and Chroma Analysis Lecture 4 Slides

  • Features:
    • Monophonic Pitch Detection
    • Polyphonic Pitch Detection
    • Pitch representations (Tuning Histograms, Pitch and Pitch Class Profiles, Chroma)
  • Analysis:
    • Dynamic Time Warping
    • Hidden Markov Models
    • Harmonic Analysis/Chord and Key Detection
  • Applications
    • Audio-Score Alignment
    • Cover Song Detection
    • Query-by-humming
    • Music Transcription

Lab 2: Part 1: Tempo Extraction Part 2: Add in MFCCs to classification and test w Cross validation

Day 3: Machine Learning, Clustering and Classification

Classification: Unsupervised vs. Supervised, k-means, GMM, SVM - Steve Lecture 5 Slides

Demo: iZotope Discover (Sound Similarity Search) Video

Guest Lecture 6: Ching-Wei Chen, Gracenote

Lab 3 Topic: MFCC + k-Means, Clustering

Matlab code for key estimation, chord recognition:

Day 4: Music Information Retrieval in Polyphonic Mixtures

Lecture 7: Steve Tjoa, Lecture 7 Slides

  • Music Transcription and Source Separation
  • Nonnegative Matrix Factorization
  • Sparse Coding

Guest Lecture 8: Nick Bryan, Gautham Mysore

Nick & Gautham's latest publications:
https://ccrma.stanford.edu/~gautham/Site/Publications.html
https://ccrma.stanford.edu/~njb/

Nick Mini Course of Source Separation:
https://ccrma.stanford.edu/~njb/teaching/sstutorial/

Itakura-Saito Divergence: PDF

Lab 4

Day 5: Information Retrieval Metrics, Evaluation, Real World Considerations

Lecture 9: Leigh Smith, Evaluation Metrics for Information Retrieval Slides

Lecture 10: Steve Tjoa, Introduction to Deep Learning Slides

References:

Bonus Lab material

for i in *.mp3; do echo $i; afconvert -d BEI16@44100 -f AIFF "$i"; done

  • Extract CAL 500 per-song features to .mat or .csv using features from today. This will be used on lab for Friday. Copy it from the folder ccrma-gate.stanford.edu:/usr/ccrma/workshops/mir2011/cal500.tar (beware it's a 2Gb .tar file!) or grab the AIFF versions from ccrma-gate.stanford.edu:/usr/ccrma/workshops/mir2011/cal500_aiffs.tar (that's 16 GB)

software, libraries, examples

Applications & Environments

Machine Learning Libraries & Toolboxes

Optional Toolboxes

Supplemental papers and information for the lectures...

Past CCRMA MIR Workshops and lectures

References for additional info

Recommended books:

  • Data Mining: Practical Machine Learning Tools and Techniques, Second Edition by Ian H. Witten , Eibe Frank (includes software)
  • Netlab by Ian T. Nabney (includes software)
  • Signal Processing Methods for Music Transcription, Klapuri, A. and Davy, M. (Editors)
  • Computational Auditory Scene Analysis: Principles, Algorithms, and Applications, DeLiang Wang (Editor), Guy J. Brown (Editor)
  • Speech and Audio Signal Processing:Processing and perception of speech and music Ben Gold & Nelson Morgan, Wiley 2000

Prerequisite / background material:

Papers:

Other books:

  • Pattern Recognition and Machine Learning (Information Science and Statistics) by Christopher M. Bishop
  • Neural Networks for Pattern Recognition, Christopher M. Bishop, Oxford University Press, 1995.
  • Pattern Classification, 2nd edition, R Duda, P Hart and D Stork, Wiley Interscience, 2001.
  • "Artificial Intelligence: A Modern Approach" Second Edition, Russell R & Norvig P, Prentice Hall, 2003.
  • Machine Learning, Tom Mitchell, McGraw Hill, 1997.

Interesting Links:

Audio Source Material

OLPC Sound Sample Archive (8.5 GB) [1]

http://www.tsi.telecom-paristech.fr/aao/en/category/database/

RWC Music Database (n DVDs) [available in Stanford Music library]

RWC - Sound Instruments Table of Contents

http://staff.aist.go.jp/m.goto/RWC-MDB/rwc-mdb-i.html

Univ or Iowa Music Instrument Samples

https://ccrma.stanford.edu/wiki/MIR_workshop_2008_notes#Research_Databases_.2F_Collections_of_Ground_truth_data_and_copyright-cleared_music

MATLAB Utility Scripts

http://ccrma.stanford.edu/~kglee/kaist_summer2008_special_lecture/

Personal tools