Course syllabus — AY2024

Time: Thursdays, Period 2, Semester 2
Room: AN521
Department: College of Global Liberal Arts
Credits: 2
Class format: In person
Instructor: Associate Professor Paul Haimes (See website for student office hours)
Instructor email: haimes [at] fc.ritsumei.ac.jp

Please read the course policies carefully, prior to taking this course.


Course overview

This course introduces and explores computational musicology, with a focus on concepts and techniques from the contemporary field of music information retrieval (MIR), and is aimed at students who have an interest in both music and technology. Students will learn to apply some of the basics of MIR to analyse music through various machine learning techniques.

This course will be delivered through a series of interactive lectures and workshops. There will be two projects, and quizzes, to test your knowledge of the course material. Feedback on assignment work will be given within approximately two weeks, via Manaba. You will also be assessed on your engagement in class activities.

Prerequisites

While there is no official prerequisite course for this class, it is strongly advised that only students who have taken the Introduction to Algorithms and Programming class, or have equivalent programming experience, take this class.

No prior formal study of music is necessary, but it is assumed that students who take this course have at least some basic knowledge of music, such as tones, chords, scales, rhythm, melody, harmony, and so on.

Note: Students who wish to take this course should ensure that they can get Python running on their computer!


Course objectives

Students who successfully complete this course will be able to:


Course readings

Selected readings from:

There is no need to buy physical copies of these sources as they are available digitally for free via the above URLs. The following book, available digitally via the Ritsumeikan VPN, will also be a useful (though quite technical) resource:

The website musicinformationretrieval.com also contains useful information and code examples that will be utilised in this class.


Software

In addition to Python 3, we will mainly rely on the Librosa package for the MIR part of the course, but will also cover other useful libraries for MIR, signal processing, and data management.


Weekly schedule

  1. Introduction (Reading chapter 1 of Schedl et al)
  2. Data types and data structures in Python (Reading chapters 2-5 of Schafer)
  3. Flow controls (Reading chapter 6 of Schafer)
  4. Functions, useful Python libraries (Reading chapters 7-9 of Schafer)
  5. In-class workshop: Python Basics 
  6. Audio formats (Reading chapter 3 of Schedl et al) — sample rate and bit depth; common audio formats, wav, mp3, etc.
  7. Time-frequency representations — Spectrograms
  8. Onset and novelty detection (Reading chapter 2 of Schedl et al)
  9. In-class workshop: Temporal features — Assignment 1 due 5pm Wednesday November 27 
  10. Pitch and Chroma
  11. Musical key
  12. Musical key (continued)
  13. Musical similarity; music information retrieval (MIR) tasks
  14. In-class workshop: MIR
  15. In-class quizAssignment 2 due 9am the day of the final class

Assessments

Important: Please read the course policies carefully, particularly regarding use of AI. In short, you cannot use AI tools to generate written content (including code).

Further details of assessments, including due dates, will be announced in class. Feedback for all assessment items will be given through Manaba and, where appropriate, in-person. Feedback on assignments will generally be returned within two weeks (10 working days), unless notified otherwise.

Assignments will cover one and two of the course objectives, while the quiz will cover one and three of the course objectives. Engagement in class activities is relevant to all of the course objectives.

Assignments

There will be two programming-focused assignments, based on the course content.

Quiz

At least one multiple-choice and short-answer quiz/test will be delivered throughout the semester. Questions will be directly related to the course content and readings.

Engagement in class activities

Your engagement will be based on the following criteria, with each criterion having equal weight:

Note that any absences unaccounted for will affect this grade. Being late by 10 minutes, without a compelling reason, will count as an absence.


Citation style

All written work should use APA 7 referencing format. If you are modifying code snippets that you've found, you should include a reference in your code comments of where you found the code. You can find a "quickstart" guide at http://www.ritsumei.ac.jp/~haimes/publications/citation.pdf. A more comprehensive resource is the official APA 7 guide at https://apastyle.apa.org.




Back to top | © Paul Haimes at Ritsumeikan University