MACHINE LEARNING FOR ARTISTS
Scripps College MS038
Fall 2021
MW 09:35-10:50AM
Location: Steele Hall, Room 229
COURSE STAFF
Professor: Douglas Goodwin
Email: dgoodwin@gmail.com
COURSE OVERVIEW
Machine learning (ML) is transforming technology and society through applications in automatic translation, speech recognition, transportation, and beyond. While ML is becoming ubiquitous in our daily lives, it remains daunting to non-specialists. This course bridges this divide by introducing ML concepts to students without prior experience, providing templates for immediate hands-on work with ML tools and frameworks.
Students will study and remake artworks by leading ML artists including Mario Klingemann, Anna Ridler, Sougwen Chung, Memo Akten, Helena Sarin, and Tom White. The course explores various techniques and frameworks such as image segmentation, CycleGAN, pix2pix, and TensorFlow. Students will develop an independent project in the final third of the course.
Prerequisite: Any programming experience, especially with p5.js, ml5.js, and Python.
LEARNING OBJECTIVES
By the end of this course, students will be able to:
- Develop intuition for core machine learning concepts and algorithms
- Apply ML algorithms to real-time interaction in media art projects
- Collect custom datasets and train machine learning models
- Generate media using ML: words, sound, and images
- Critically discuss social impact and ethics of ML applications
- Navigate the landscape of ML-generated new media art
REQUIRED MATERIALS
- Free P5.js editor account
- Free GitHub account
- Free Google Colab account with Google Drive integration
RECOMMENDED READINGS
- The Information: A History, a Theory, a Flood by James Gleick
- Aesthetic Programming by Winnie Soon & Geoff Cox
- Artificial Intelligence: A Guide for Thinking Humans by Melanie Mitchell
ASSESSMENT
- 40% Weekly assignments
- 40% Final project (proposal and completion)
- 20% Attendance + Participation
Final Project Evaluation Criteria:
- Perseverance
- Faithfulness to proposal
- Creative engagement
- Critical thinking application
- Preparation and time management
- Success of finished piece
Rubric for Creative Projects
Based on Kristin Hughes' "Learning and Grading Rubric"
Percentage Calculation: Total points × 5 = Final percentage
(Example: 15 points = 75%)
COURSE SCHEDULE
Module 1: Introduction and Fundamentals
- Introduction to ML with ml5.js
- Image Classification with Teachable Machine
- Body tracking and pose estimation
- Face and hand tracking
Module 2: Advanced Techniques
- Style Transfer
- Pix2pix implementation
- DIY Neural Networks
- ML on Google Colab
Module 3: Critical Applications
- Embedding bias
- Adversarial attacks
- Ethics and social impact
- Final project development
Course Schedule
Week | Date | Theme | Required Reading | Required Videos | Assignments |
---|---|---|---|---|---|
1 | 08/30 | Introduction to ML with ml5.js | - | - Hilary Mason ML explanations - Beginner's Guide to ML with ml5.js |
- Image classifier demo - YOLO webcam detection |
09/01 | ML Art Foundations | - Awesome Machine Learning Art - AI4D workshop links |
- Anna Ridler, Nicer Tuesdays | - Build on image classifier demo - Publish to GitHub |
|
2 | 09/06 | LABOR DAY | - | - | - List interesting ML projects/artists |
09/08 | Image Classification | - What is Teachable Machine? - KNN classifier guide |
- Teachable Machine 1 - Image Classification |
- KNN Image Classifier project | |
3 | 09/13 | Body Tracking | - Hello-ml5 - PoseNet documentation |
- Alyosha Efros: Evolution as Data | - Discord: Submit pose estimation project |
09/15 | PoseNet Deep Dive | - ML5js: PoseNet guide | - Dan Shiffman: PoseNet tutorial | - Browser experiment with poses | |
4 | 09/20 | Face & Hand Tracking | - ml5.js face-api reference - ml5.js handpose guide |
- Rebecca Fiebrink: ML for Creators | - Discord: Submit face/hand tracking project |
09/22 | Advanced Pose Estimation | - | - Shiffman: PoseNet deep dive | - | |
5 | 09/27 | Style Transfer | - Ml5.js StyleTransfer docs | - Shiry Ginosar: Creative Material | - Discord: Combined style/pose project |
09/29 | Style Transfer Applications | - | - Gene Kogan: Visualization | - | |
6 | 10/04 | pix2pix | - Gene Kogan's pix2pix tutorial | - Efros & Isola: Socratic debate | - Discord: pix2pix + pose project |
10/06 | pix2pix Workshop | - | - | - | |
7 | 10/11 | DIY Neural Networks | - | - Tom White: Neural Abstractions | - Discord: DIY Neural Network project |
10/13 | Neural Networks Workshop | - | - | - | |
8 | 10/18 | FALL BREAK | - | - | - |
10/20 | FALL BREAK | - | - | - | |
9 | 10/25 | ML on Google Colab | - | - Jun-Yan Zhu: Efficient GANs | - |
10/27 | CycleGAN | - | - Jesse Engel: Magenta | - | |
10 | 11/01 | Embedding Bias | - | - Sofia Crespo: Artificial Biodiversity | - |
11/03 | Adversarial Attacks | - | - Joel Simon: Creative Networks | - | |
11 | 11/08 | Advanced Models | - | - Ian Goodfellow: Sequence Modeling | - |
11/10 | RNNs & GANs | - | - | - | |
12 | 11/15 | Motion Models | - | - | - |
11/17 | Motion Workshop | - | - | - | |
13-15 | 11/22-12/08 | Final Projects | - | - | Final Project Development |
Notes:
- All readings and videos should be completed before class
- Project submissions should be posted to Discord by specified dates
- Check course page for detailed assignment requirements
- Additional resources and examples available on course website
POLICIES
COVID-19 Policy
Masks required during class. Please consult Scripps College return-to-campus plan for latest guidance.
Attendance
- More than six unexcused absences will result in course failure
- Regular attendance required for both lectures and labs
Changes to the Syllabus
This syllabus is subject to change. Students are responsible for staying informed about updates, which will be communicated via Discord. All assignments should be prepared for the scheduled class day unless noted otherwise.
Zoom Notice
Class meetings held on Zoom may be recorded for educational purposes. These recordings are protected and used solely to support course facilitation. Students and participants are prohibited from making their own recordings. Students needing special accommodations for recordings should coordinate with the instructor.
Academic Integrity
Academic integrity is crucial to our educational mission. Academic dishonesty, including but not limited to cheating, fabrication, plagiarism, multiple submissions, or facilitating misconduct, undermines trust and learning. Plagiarism, the presentation of another author's words or ideas as your own, is a serious offense. Consult your instructor with any questions about documentation or quotations before submission.
Accessibility and Accommodations
Our goal is to make learning accessible for all students. If you face any issues with course materials or requirements, please contact me to discuss potential solutions. Students with disabilities are encouraged to consult the Office of Accessible Education for guidance and official accommodations. If you have approved accommodations, let's meet to devise an implementation plan. We are committed to meeting accessibility standards and welcome your feedback on improving access to course materials.
Inclusive Environment
We are dedicated to an equitable and inclusive learning environment, free from discrimination and harassment such as sexual violence, dating violence, and stalking, which violate college policies and legal standards. This policy applies to all individuals associated with the college. Violations can result in disciplinary actions, including expulsion or termination. A climate of mutual respect and open dialogue is essential, and speech is protected if it doesn't constitute harassment or discrimination.
Diversity
Our diverse community is a strength that fuels innovation and enriches education. We commit to reflecting this diversity within our student body and workforce, ensuring access for talented individuals from all backgrounds. By fostering an environment where ideas are shared respectfully, we enhance innovation and leadership development. We focus on removing barriers for underrepresented groups in all institutional activities.