Difference between revisions of "MIR workshop 2015"
m |
(→Attendees) |
||
(22 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
''' Intelligent Audio Systems: Foundations and Applications of Music Information Retrieval ''' | ''' Intelligent Audio Systems: Foundations and Applications of Music Information Retrieval ''' | ||
+ | |||
+ | == News == | ||
+ | |||
+ | '''Wednesday, July 15''' | ||
+ | |||
+ | 8:48 am: | ||
+ | |||
+ | * Today: Zafar Rafii, Jeff Scott, Aneesh Vartakavi, et al. of Gracenote will join us for lunch and for guest lectures in the afternoon. | ||
+ | * If you checked out https://github.com/stevetjoa/stanford-mir onto your local machine, be sure to '''git checkout gh-pages''' before working. | ||
+ | |||
+ | '''Tuesday, July 14''' | ||
+ | |||
+ | 9:31 am: | ||
+ | |||
+ | * Don't forget '''%matplotlib inline''' at the top of your notebooks. | ||
+ | |||
+ | '''Monday, July 13''' | ||
+ | |||
+ | 2:18 pm: dependencies: | ||
+ | |||
+ | * apt-get install: git, python-dev, pip, python-scipy, python-matplotlib | ||
+ | * Python packages: pip, boto, boto3, matplotlib, ipython, numpy, scipy, scikit-learn, librosa, mir_eval, seaborn, requests | ||
+ | * (Anaconda) | ||
+ | |||
+ | 11:11 am: Your post-it notes: | ||
+ | |||
+ | * content-based analysis e.g. classifying violin playing style (vibrato, bowing) | ||
+ | * MIR overview; music recommendation | ||
+ | * feature extraction; dimensionality reduction; prediction | ||
+ | * source separation techniques | ||
+ | * chord estimation; "split" musical instruments; find beats in a song | ||
+ | * audio-to-midi; signal/source/speaker separation; programming audio in Python (in general) | ||
+ | * acoustic fingerprinting | ||
+ | * machine learning; turn analysis -> synth; music characterization | ||
+ | * beat tracking; ways of identifying timbre | ||
+ | * mood recognition | ||
+ | * instrument separation; real-time processing | ||
+ | * Marsyas? | ||
+ | * speed of retrieval | ||
+ | * what's possible and what's not in music information retrieval; how to use MIR toolbox for fast realization of ideas | ||
+ | * machine learning techniques for more general audio problems i.e. language detection or identifying sound sources | ||
+ | * networking and getting to know you all | ||
+ | |||
+ | == Attendees == | ||
+ | |||
+ | Eric Raymond <lowlifi@gmail.com>, Stelios Andrew Stavroulakis, Richard Mendelsohn, Naithan Bosse, Alessio Bazzica, Karthik Yadati, Martha Larson, Stephen Hartzog, Philip Lee, Jaeyoung Choi, Matthew Gallagher, Yule Wu, Mark Renker, Rohit Ainapure, Eric Tarr <erictarr@gmail.com>, Allen Wu, Aaron Hipple | ||
== Logistics == | == Logistics == | ||
Line 21: | Line 67: | ||
'''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 audio analysis systems. | '''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 audio analysis systems. | ||
− | == Schedule | + | == Schedule == |
− | + | Instructional material can be found at [http://musicinformationretrieval.com musicinformationretrieval.com] (read only) or on [https://github.com/stevetjoa/stanford-mir GitHub] (full source). | |
− | + | === Day 1: Introduction to MIR, Signal Analysis, and Feature Extraction === | |
− | + | '''Lecture''' | |
− | * CCRMA Introduction - (Nette | + | |
− | * Introduction to MIR (What is MIR? Why | + | Introductions |
− | * | + | * CCRMA Introduction - (Nette, Fernando). |
+ | * Introduction to MIR (What is MIR? Why MIR? Commercial applications) | ||
+ | * Basic MIR system architecture | ||
* Timing and Segmentation: Frames, Onsets | * Timing and Segmentation: Frames, Onsets | ||
− | |||
* Classification: Instance-based classifiers (k-NN) | * Classification: Instance-based classifiers (k-NN) | ||
− | |||
− | |||
− | + | Overview: Signal Analysis and Feature Extraction for MIR Applications | |
− | + | ||
− | + | ||
* Windowed Feature Extraction | * Windowed Feature Extraction | ||
− | |||
* Feature-vector design (Overview: http://www.create.ucsb.edu/~stp/PostScript/PopeHolmKouznetsov_icmc2.pdf) | * Feature-vector design (Overview: http://www.create.ucsb.edu/~stp/PostScript/PopeHolmKouznetsov_icmc2.pdf) | ||
− | + | * Time-domain features | |
− | + | ||
− | * Time-domain features | + | |
− | + | ||
* Frequency-domain features | * Frequency-domain features | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | MFCCs sonified | ||
+ | * Original track ("Chewing Gum") [https://myspace.com/anniemusic/music/song/chewing-gum-28101163-14694] | ||
+ | * MFCCs only [http://www.cs.princeton.edu/~mdhoffma/icmc2008/] | ||
− | |||
− | + | '''Lab''' | |
− | + | [http://musicinformationretrieval.com/feature_sonification.html Understanding Audio Features Through Sonification] | |
− | * | + | * Background for students needing a refresher: [http://ccrma.stanford.edu/workshops/mir2009/juans_lecture/2_fft.pdf Fundamentals of Digital Audio Signal Processing (lecture slides from Juan Bello)] |
− | * | + | * ''Reminder'': Save all your work, because you may want to build on it in subsequent labs. |
− | + | === Day 2: Pitch and Chroma Analysis; Machine Learning, Clustering and Classification === | |
− | + | ||
− | + | '''Lecture''' | |
− | + | Classification: Unsupervised vs. Supervised, k-means, GMM, SVM | |
− | + | ||
− | + | Pitch and Chroma | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
* Features: | * Features: | ||
** Monophonic Pitch Detection | ** Monophonic Pitch Detection | ||
Line 114: | Line 120: | ||
** Query-by-humming | ** Query-by-humming | ||
** Music Transcription | ** Music Transcription | ||
+ | '''Lab''' | ||
− | + | [http://musicinformationretrieval.com/knn_instrument_classification.html K-NN Instrument Classification] | |
− | + | [http://musicinformationretrieval.com/kmeans_instrument_classification.html MFCC, K-Means Clustering] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | * [http://ccrma.stanford.edu/workshops/mir2012/2012-ClusterLab.pdf K-Means (2012)] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Bonus Slides: Temporal & Harmony Analysis | |
− | + | * [http://ccrma.stanford.edu/workshops/mir2009/juans_lecture/4_rhythm.pdf Temporal Analysis (lecture slides from Juan Bello)] | |
+ | * [http://ccrma.stanford.edu/workshops/mir2009/juans_lecture/6_harmony.pdf Harmony Analysis (lecture slides from Juan Bello)] | ||
+ | * [http://ccrma.stanford.edu/workshops/mir2009/references/klee-ieee-taslp08-print.pdf Chord recognition using HMMs (Kyogu Lee)] | ||
+ | * [http://ccrma.stanford.edu/workshops/mir2009/references/klee-lncs08.pdf Genre-specific chord recognition using HMMs (Kyogu Lee)] | ||
− | |||
− | |||
− | |||
− | |||
− | + | === Day 3: Deep Belief Networks; Pitch Transcription === | |
+ | Introduction to Deep Learning [https://ccrma.stanford.edu/workshops/mir2013/CCRMA_MIR2013_DBN.pdf Slides] | ||
− | + | [ https://ccrma.stanford.edu/workshops/mir2014/fann_en.pdf Neural Networks made easy] | |
− | + | ||
− | + | Pitch Transcription Exercise | |
+ | |||
+ | Guest lectures by Gracenote | ||
+ | |||
+ | Catch-up from yesterday | ||
− | |||
− | |||
− | |||
=== Day 4: Music Information Retrieval in Polyphonic Mixtures === | === Day 4: Music Information Retrieval in Polyphonic Mixtures === | ||
− | Lecture | + | '''Lecture''' |
− | + | Music Transcription and Source Separation | |
* Nonnegative Matrix Factorization | * Nonnegative Matrix Factorization | ||
* Sparse Coding | * Sparse Coding | ||
− | + | Evaluation Metrics for Information Retrieval | |
− | + | ||
− | + | ||
+ | '''Lab''' | ||
− | + | [https://github.com/stevetjoa/ccrma#lab-4 Lab 4 Description] | |
− | + | ||
References: | References: | ||
Line 169: | Line 167: | ||
** [http://ccrma.stanford.edu/workshops/mir2009/references/ROCintro.pdf ROC Analysis] | ** [http://ccrma.stanford.edu/workshops/mir2009/references/ROCintro.pdf ROC Analysis] | ||
− | |||
− | + | === Day 5: Hashing for Music Search and Retrieval === | |
− | + | Locality Sensitive Hashing ([http://musicinformationretrieval.com/lsh_fingerprinting.html notebook]) | |
− | + | ||
− | + | ||
Lunch at [http://en.wikipedia.org/wiki/Homebrew_Computer_Club The Oasis] | Lunch at [http://en.wikipedia.org/wiki/Homebrew_Computer_Club The Oasis] | ||
− | + | == Software Libraries == | |
− | + | ||
− | + | ||
− | + | ||
− | == | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | * [https://www.python.org/ Python] | |
− | * [ | + | * [http://www.numpy.org/ NumPy] |
− | * [http://www. | + | * [http://www.scipy.org/ SciPy] |
− | * [http://www. | + | * [http://ipython.org/ IPython] |
− | * [http:// | + | * [http://scikit-learn.org/stable/ scikit-learn] |
− | + | * [http://bmcfee.github.io/librosa/ librosa] | |
− | * [http:// | + | * [http://craffel.github.io/mir_eval/ mir_eval] |
− | * [http:// | + | * [http://essentia.upf.edu/ Essentia] |
− | + | * [http://www.vamp-plugins.org/vampy.html VamPy] | |
− | * [http:// | + | |
− | * | + | |
− | + | ||
− | * | + | |
− | + | ||
== Supplemental papers and information for the lectures...== | == Supplemental papers and information for the lectures...== | ||
Line 216: | Line 199: | ||
* [http://cm-wiki.stanford.edu/wiki/MIR_workshop_2008 CCRMA MIR Summer Workshop 2008] | * [http://cm-wiki.stanford.edu/wiki/MIR_workshop_2008 CCRMA MIR Summer Workshop 2008] | ||
− | == References | + | == Additional References == |
+ | |||
Recommended books: | Recommended books: | ||
* Data Mining: Practical Machine Learning Tools and Techniques, Second Edition by Ian H. Witten , Eibe Frank (includes software) | * Data Mining: Practical Machine Learning Tools and Techniques, Second Edition by Ian H. Witten , Eibe Frank (includes software) | ||
Line 224: | Line 208: | ||
* Speech and Audio Signal Processing:Processing and perception of speech and music Ben Gold & Nelson Morgan, Wiley 2000 | * Speech and Audio Signal Processing:Processing and perception of speech and music Ben Gold & Nelson Morgan, Wiley 2000 | ||
− | + | Background material: | |
* http://140.114.76.148/jang/books/audioSignalProcessing/ | * http://140.114.76.148/jang/books/audioSignalProcessing/ | ||
− | |||
* [http://ismir2007.ismir.net/proceedings/ISMIR2007_tutorial_Lartillot.pdf ISMIR2007 MIR Toolbox Tutorial] | * [http://ismir2007.ismir.net/proceedings/ISMIR2007_tutorial_Lartillot.pdf ISMIR2007 MIR Toolbox Tutorial] | ||
Line 245: | Line 228: | ||
* http://www.jyu.fi/hum/laitokset/musiikki/en/research/coe/materials | * http://www.jyu.fi/hum/laitokset/musiikki/en/research/coe/materials | ||
* http://www.music-ir.org/evaluation/tools.html | * http://www.music-ir.org/evaluation/tools.html | ||
− | |||
* http://htk.eng.cam.ac.uk/ | * http://htk.eng.cam.ac.uk/ | ||
Line 262: | Line 244: | ||
https://ccrma.stanford.edu/wiki/MIR_workshop_2008_notes#Research_Databases_.2F_Collections_of_Ground_truth_data_and_copyright-cleared_music | https://ccrma.stanford.edu/wiki/MIR_workshop_2008_notes#Research_Databases_.2F_Collections_of_Ground_truth_data_and_copyright-cleared_music | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 13:33, 17 July 2015
Intelligent Audio Systems: Foundations and Applications of Music Information Retrieval
Contents
- 1 News
- 2 Attendees
- 3 Logistics
- 4 Abstract
- 5 Schedule
- 5.1 Day 1: Introduction to MIR, Signal Analysis, and Feature Extraction
- 5.2 Day 2: Pitch and Chroma Analysis; Machine Learning, Clustering and Classification
- 5.3 Day 3: Deep Belief Networks; Pitch Transcription
- 5.4 Day 4: Music Information Retrieval in Polyphonic Mixtures
- 5.5 Day 5: Hashing for Music Search and Retrieval
- 6 Software Libraries
- 7 Supplemental papers and information for the lectures...
- 8 Past CCRMA MIR Workshops and lectures
- 9 Additional References
- 10 Audio Source Material
News
Wednesday, July 15
8:48 am:
- Today: Zafar Rafii, Jeff Scott, Aneesh Vartakavi, et al. of Gracenote will join us for lunch and for guest lectures in the afternoon.
- If you checked out https://github.com/stevetjoa/stanford-mir onto your local machine, be sure to git checkout gh-pages before working.
Tuesday, July 14
9:31 am:
- Don't forget %matplotlib inline at the top of your notebooks.
Monday, July 13
2:18 pm: dependencies:
- apt-get install: git, python-dev, pip, python-scipy, python-matplotlib
- Python packages: pip, boto, boto3, matplotlib, ipython, numpy, scipy, scikit-learn, librosa, mir_eval, seaborn, requests
- (Anaconda)
11:11 am: Your post-it notes:
- content-based analysis e.g. classifying violin playing style (vibrato, bowing)
- MIR overview; music recommendation
- feature extraction; dimensionality reduction; prediction
- source separation techniques
- chord estimation; "split" musical instruments; find beats in a song
- audio-to-midi; signal/source/speaker separation; programming audio in Python (in general)
- acoustic fingerprinting
- machine learning; turn analysis -> synth; music characterization
- beat tracking; ways of identifying timbre
- mood recognition
- instrument separation; real-time processing
- Marsyas?
- speed of retrieval
- what's possible and what's not in music information retrieval; how to use MIR toolbox for fast realization of ideas
- machine learning techniques for more general audio problems i.e. language detection or identifying sound sources
- networking and getting to know you all
Attendees
Eric Raymond <lowlifi@gmail.com>, Stelios Andrew Stavroulakis, Richard Mendelsohn, Naithan Bosse, Alessio Bazzica, Karthik Yadati, Martha Larson, Stephen Hartzog, Philip Lee, Jaeyoung Choi, Matthew Gallagher, Yule Wu, Mark Renker, Rohit Ainapure, Eric Tarr <erictarr@gmail.com>, Allen Wu, Aaron Hipple
Logistics
- Monday, July 13, through Friday, July 17, 2015. 9 AM to 5 PM every day.
- Location: The Knoll, CCRMA, Stanford University. http://goo.gl/maps/nNKx
- Instructors:
Abstract
How would you "Google for audio", provide music recommendations based on your MP3 files, or have a computer "listen" and understand what you are playing?
This workshop will teach such 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 to, understand, and 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 sort, search, recommend, tag, and transcribe music, possibly in real time.
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 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 Python is desired but not required. 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 audio analysis systems.
Schedule
Instructional material can be found at musicinformationretrieval.com (read only) or on GitHub (full source).
Day 1: Introduction to MIR, Signal Analysis, and Feature Extraction
Lecture
Introductions
- CCRMA Introduction - (Nette, Fernando).
- Introduction to MIR (What is MIR? Why MIR? Commercial applications)
- Basic MIR system architecture
- Timing and Segmentation: Frames, Onsets
- Classification: Instance-based classifiers (k-NN)
Overview: Signal Analysis and Feature Extraction for MIR Applications
- Windowed Feature Extraction
- Feature-vector design (Overview: http://www.create.ucsb.edu/~stp/PostScript/PopeHolmKouznetsov_icmc2.pdf)
- Time-domain features
- Frequency-domain features
MFCCs sonified
Lab
Understanding Audio Features Through Sonification
- Background for students needing a refresher: Fundamentals of Digital Audio Signal Processing (lecture slides from Juan Bello)
- Reminder: Save all your work, because you may want to build on it in subsequent labs.
Day 2: Pitch and Chroma Analysis; Machine Learning, Clustering and Classification
Lecture
Classification: Unsupervised vs. Supervised, k-means, GMM, SVM
Pitch and Chroma
- 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
K-NN Instrument Classification
Bonus Slides: Temporal & Harmony Analysis
- Temporal Analysis (lecture slides from Juan Bello)
- Harmony Analysis (lecture slides from Juan Bello)
- Chord recognition using HMMs (Kyogu Lee)
- Genre-specific chord recognition using HMMs (Kyogu Lee)
Day 3: Deep Belief Networks; Pitch Transcription
Introduction to Deep Learning Slides
[ https://ccrma.stanford.edu/workshops/mir2014/fann_en.pdf Neural Networks made easy]
Pitch Transcription Exercise
Guest lectures by Gracenote
Catch-up from yesterday
Day 4: Music Information Retrieval in Polyphonic Mixtures
Lecture
Music Transcription and Source Separation
- Nonnegative Matrix Factorization
- Sparse Coding
Evaluation Metrics for Information Retrieval
Lab
References:
- IR Evaluation Metrics (precision, recall, f-measure, AROC,...)
Day 5: Hashing for Music Search and Retrieval
Locality Sensitive Hashing (notebook)
Lunch at The Oasis
Software Libraries
Supplemental papers and information for the lectures...
- Explanations, tutorials, code demos, recommended papers here - for each topic....
- A list of beat tracking references cited
Past CCRMA MIR Workshops and lectures
- CCRMA MIR Summer Workshop 2014
- CCRMA MIR Summer Workshop 2013
- CCRMA MIR Summer Workshop 2012
- CCRMA MIR Summer Workshop 2011
- CCRMA MIR Summer Workshop 2010
- CCRMA MIR Summer Workshop 2009
- CCRMA MIR Summer Workshop 2008
Additional References
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
Background material:
Papers:
- ISMIR 2011 Proceedings: http://ismir2011.ismir.net/program.html
- Check out the references listed at the end of the Klapuri & Davy book
- Check out Papers listed on Pg 136-7 of MIR Toolbox: http://www.jyu.fi/hum/laitokset/musiikki/en/research/coe/materials/mirtoolbox/userguide1.1
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:
- http://www.ifs.tuwien.ac.at/mir/howtos.html
- http://www.jyu.fi/hum/laitokset/musiikki/en/research/coe/materials
- http://www.music-ir.org/evaluation/tools.html
- http://htk.eng.cam.ac.uk/
Audio Source Material
OLPC Sound Sample Archive (8.5 GB) [3]
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