Computational Perception Extended

Intro 01

* * *

Main repo

1. Intro

About this course

Introduction to machine learning

The goal of the module is to explore different applications of ML/AI/DL with a focus on design and art.

We will first learn how neural networks work with simple code examples. From there we will experiment with different techniques of Deep Learning for Computer Vision (image classification, objects detection, pose estimation...) and Generative Deep Learning (DeepDream, style transfer, Pix2Pix / CycleGAN...).

G.

About Me

UX, UI, CODE

Designer and coder. Background in code, worked mostly in design...

Principles

Peer learning

"Peer learning is an educational practice in which students interact with other students to attain educational goals."

Evaluation Criteria

  • Grading Collaboration, Research, Exploration
  • Deliverable Presentation + project + documentation
  • Date Week 51 / 52
diagram

1.0 Students intro

1.1 AI/ML/DL

AI

Artificial intelligence (AI) is an area of computer science that emphasizes the creation of intelligent machines that work and react like humans.

diagram

ML

Machine Learning at its most basic is the practice of using algorithms to parse data, learn from it, and then make a determination or prediction about something in the world.

--

So rather than hand-coding software routines with a specific set of instructions to accomplish a particular task, the machine is “trained” using large amounts of data and algorithms that give it the ability to learn how to perform the task.

diagram
diagram

1.2 History

diagram

Analytical Engine

“ The Analytical Engine has no pretensions whatever to originate anything. It can do whatever we know how to order it to perform… Its province is to assist us in making available what we are already acquainted with ”

Ada Lovelace (1843)

diagram

Brief history of ML

View reference

1.3 The steps of ML

diagram

1.4 Different kinds of ML

Supervised Learning

diagram

Learning to map input data to known targets (also called annotations),
given a set of examples (often annotated by humans)

Unsupervised Learning

diagram

Finding interesting transformations of the input data without the help of any targets

Reinforcement Learning

diagram

In reinforcement learning, an "agent" receives information about its environment and learns to pick actions that will maximize some reward.

1.5 What is a neural network?

diagram
diagram

1.6 What is Deep Learning

DL

Deep learning is a specific subfield of machine learning, a new take on learning representations from data which puts an emphasis on learning successive "layers" of increasingly meaningful representations.

The 'Deep' in Deep Learning

diagram
diagram

Understanding how deep learning works in three figures

diagram
diagram
diagram

1.7 Learning steps

diagram

Step 01: Forward Propagation

View reference

diagram

Step 02: Gradient Descent

View reference

diagram

Step 03: Back Propagation

View reference

Application of DL

1.8 Why Now?

2. Maths

diagram

Essence of linear algebra

View reference

3. Machine Learning

3.1 Tasks

Image classification

diagram

Image regression

diagram

Text classification

diagram

Sound classification (text to speech)

diagram

Object Detection

diagram

Pose Detection

diagram

Image Segmentation

diagram

3.2 Models Architectures

CNN - Convolutional Neural Networks

RNN - Reccurent Neural Networks

LSTM - Long Short Term Memory

GAN - Generative Adversorial Networks

4. Examples

4.1 Personal

Blog

4.2 Others

Move Mirror

Explore pictures in a fun new way, just by moving around.

Teachable Machine

Teach a machine using your camera, live in the browser - no coding required.

Neural Doodle

Use a deep neural network to borrow the skills of real artists and turn your two-bit doodles into masterpieces!

Text 2 Image

Text 2 Image

Text 2 Image translation

fpt

Fast photo style

Given a content photo and a style photo, the code can transfer the style of the style photo to the content photo.

Text 2 Image

Everybody Dance Now

Simple method for "do as I do" motion transfer: given a source video of a person dancing the model can transfer that performance to a novel (amateur) target after only a few minutes of the target subject performing standard moves

vid2vid

vid2vid

photorealistic video-to-video translation. It can be used for turning semantic label maps into photo-realistic videos, synthesizing people talking from edge maps, or generating human motions from poses.

example-sentencespace

Voyage in Sentence Space

Imagine a sentence. “I went looking for adventure.” Imagine another one. “I never returned.” Now imagine a sentence gradient between them

machinewriting

Writing with the machine

...If I had to offer an extravagant analogy (and I do) I’d say it’s like writing with a deranged but very well-read parrot on your shoulder. Anytime you feel brave enough to ask for a suggestion, you press tab, and...

I should say clearly: I am absolutely 100% not talking about an editor that “writes for you,” whatever that means. The world doesn’t need any more dead-eyed robo-text.

The animating ideas here are augmentation; partnership; call and response.

The goal is not to make writing “easier”; it’s to make it harder.

The goal is not to make the resulting text “better”; it’s to make it different — weirder, with effects maybe not available by other means.

Robin Sloan

Dino Run

Build an AI to play Dino Run / A tutorial to build a Reinforcement Learning model

OpenAI Five

OpenAI team of five neural networks, OpenAI Five, has started to defeat amateur human teams at Dota 2.

BeatBox

AI Can Help Anyone Become a Beatbox Champion

Imaginary Soundscape

Take a walk in soundscapes "imagined" by AI

AI DJ PROJECT

A dialog between human and AI through music

The Neural Drum Machine

Uses the "Drums RNN" model from @TensorFlow Magenta to generate drum patterns. And @deeplearnjs + Tone.

5. Integration

diagram
diagram
diagram
diagram
diagram
diagram
diagram
diagram
diagram
diagram

6. Tools

Runway ML

7. Ethics

8. Efficiency

diagram

Credits