Getting started with Interactive Machine Learning for openFrameworks – On-demand
Level: Intermediate – C++ required
Using openFrameworks, ofxRapidLib and ofxMaximilian, participants will learn how to integrate machine learning into generative applications. You will learn about the interactive machine learning workflow and how to implement classification, regression and gestural recognition algorithms.
You will explore a static classification approach that employs the k-Nearest Neighbour (KNN) algorithm to categorise data into discrete classes. This will be followed by an exploration of static regression problems that will use multilayer perceptron neural networks to perform feed-forward, non-linear regression on a continuous data source. You will also explore an approach to temporal classification using dynamic time warping which allows you to analyse and process gestural input
This knowledge will allow you to build your own complex interactive artworks.
By the end of this series the participant will be able to:
Overall:
-
Set up an openFrameworks project for machine learning
-
Describe the interactive machine learning workflow
-
Identify the appropriate contexts in which to implement different algorithms
-
Build interactive applications based on classification, regression and gestural recognition algorithms
Session 1:
-
Set up an openFrameworks project for classification
-
Collect and label data
-
Use the data to control audio output
-
Observe output and evaluate model
Session 2:
-
Set up an openFrameworks project for regression
-
Collect data and train a neural network
-
Use the neural network output to control audio parameters
-
Adjust inputs to refine the output behaviour
Session 3:
-
Set up an openFrameworks project for series classification
-
Design gestures as control data
-
Use classification of gestures to control audio output
-
Refine gestural input to attain desired output
Session 4:
-
Explore methods for increasing complexity
-
Integrate visuals for multimodal output
-
Build mapping layers
-
Use models in parallel and series
Session Study Topics
Session 1:
-
Supervised Static Classification
-
Data Collection and Labelling
-
Classification Implementation
-
Model Evaluation
Session 2:
-
Supervised Static Regression
-
Data Collection and Training
-
Regression Implementation
-
Model Evaluation
Session 3:
-
Supervised Series Classification
-
Gestural Recognition
-
Dynamic Time Warp Implementation
-
Model Evaluation
Session 4:
-
Data Sources
-
Multimodal Integration
-
Mapping Techniques
-
Model Systems
Requirements
-
A computer with internet connection
-
Installed versions of the following software:
-
openFrameworks
-
ofxRapidLib
-
ofxMaxim
-
-
Preferred IDE (eg. XCode / Visual Studio)
About the workshop leader
Bryan Dunphy is an audiovisual composer, musician and researcher interested in using machine learning to create audiovisual art. His work explores the interaction of abstract visual shapes, textures and synthesised sounds. He is interested in exploring strategies for creating, mapping and controlling audiovisual material in real time. He is close to completion of his PhD in Arts and Computational Technology at Goldsmiths, University of London.