— Course overview & policies
— Introduction to generative systems
— Eulerian Video Magnification; lambda vue
— Visual Microphone
— Slides: Week 1
— Read Gardner‘s “Five Minds for the Future”
— Process data of your choice using Eulerian Video Magnification
— Download TensorFlow and associated environment / tools to get it setup on your laptop
— Survey of creative ML projects
— Slides: Week 2
— Two short assignments due next week: Assignments 1 and 2
— Make sure to have TensorFlow installed and go through first MNIST database tutorial
— Watch first part of Tensorflow and Deep Learning - Without a PhD for a thorough walkthrough of this tutorial
— Read McDonald’s “A Return to Machine Learning”
— Read Amos’s “Image Completion with Deep Learning in TensorFlow”
— Short project presentations
— Overview of neural networks + different types neural networks
— TensorFlow lab
— Slides: Week 3
— The first project is due in two weeks: Project 1
— Read Alammar’s A Visual and Interactive Guide to the Basics of Neural Networks
— Read LeCun, Bengio, and Hinton’s Deep Learning
— Read Gatys, Ecker, and Bethge’s A Neural Algorithm of Artistic Style
— Convolutional Neural Networks
— TensorFlow lab
— Slides: Week 4
— Read Karn’s An Intuitive Explanation of Convolutional Neural Networks
— Read Krizhevsky, Sutskever, and Hinton’s ImageNet Classification with Deep Convolutional Neural Networks
— Read Zeiler and Fergus’s Visualizing and Understanding Convolutional Networks
- Xing Li, Kristine Lee, and Arthur Nishimoto
Combining Neural Style Transfer and Color Transfer [repo] [additional images]
- Megan Reid, Caleb Foss, and Vivek Krishnakumar
Painting or Drawing? [repo]
- Hengbin Li
An Implementation of Neural Style [repo]
- Manu Mathew Thomas, Ridhi Rustagi, and Abeer Alsaiari
Neural Style Transfer [repo]
- Kruti Sharma, Hengbin Li, and Shreyas Kulkarni
English to German Translations and English to English Conversations [repo]
— Recurrent Neural Networks
— Slides: Week 5
— The second project is due in three weeks: Project 2
— Read Karpathy’s The Unreasonable Effectiveness of Recurrent Neural Networks
— Read Oleh’s Understanding LSTM Networks
— Read Graves’s Generating Sequences With Recurrent Neural Networks
— Read Atken’s Realtime Control of Sequence Generation with RNN Ensembles
— Generative Adversarial Nets
— Slides: Week 7
— Project 2 updates
— Applications of Generative Adversarial Nets
— Slides: Week 8
— Project 2 is due next week
- Manu Mathew Thomas, Abeer Alsaiari, and Ridhi Rustagi
Seq2Seq ChatBot: Chat with Joey! [repo]
- James Lave
Huge Orange Captions [repo]
- Xing Li, Kristine Lee, and Arthur Nishimoto
rule30 RNN Generator [repo]
- Peter Hanula and Sergio Barajas
MadLibs-RNN and MathGen-RNN [repo 1] [repo 2]
- Kruti Sharma, Hengbin Li, and Shreyas Kulkarni
English to German Translations and English to English Conversations [repo]
- Shi Yin and Shiwangi Singh
Chinese Tang Poetry Generator [repo]
- Megan Reid, Caleb Foss, and Vivek Krishnakumar
Generate Text UI [repo]
- Krutarth Joshi, Aayush Kataria, and Dhaval Doshi
ChatBot and Deep Lyrics [repo 1] [repo 2]
— Overview of Project 3
— Slides: Week 10
— Read Goodfellow et al.’s Generative Adversarial Nets
— Watch Goodfellow’s talk at AIWTB
— Slides: Week 11
— Read Nguyen et al.’s Plug & Play Generative Networks: Conditional Iterative Generation of Images in Latent Space
— Read Radford et al.’s Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks
— In-class GAN programming exercises
— Literature survey reports
— Report on progress of final project
— Slides: Week 13
— Meet with groups to work on final project
— All deliverables for Project 3 are due next week, along with a summary report of all assignments and projects completed during the semester.
- Abeer Alsaiari, Ridhi Rustagi, and Manu Mathew Thomas
De-noising GAN [repo] [video] [write-up]
- Shiwangi Singh and Shi Yin
Outpainting using Context Encoders [repo] [demo] [video]
- Kruti Sharma, Hengbin Li, and Shreyas Kulkarni
Sound Generation Using Deep Convolutional GANs [repo + videos] [write-up]
- Peter Hanula and Sergio Barajas
SRGAN-Magnifier [repo + video] [write-up]
- Megan Reid, Caleb Foss, and Vivek Krishnakumar
Object Detection and Image Inpainting Chrome Extension [repo] [video] [write-up]
- Xing Li, Kristine Lee, and Arthur Nishimoto
GANmons: Sketchable Monsters from Generative Adversarial Networks [repo] [video] [write-up]
- Krutarth Joshi, Aayush Kataria, and Dhaval Doshi
WaveNet as an Image Discriminative Model and a Text Discriminative Model [repo] [write-up]
— Bring your laptop to class.
— Use a git repo to back-up your files and make your projects/assignments available online.
— Set up a user account on Piazza and join CS 523: https://piazza.com/uic/spring2016/cs523.
On-time class attendance is mandatory. It is not possible to make up or compensate for missed class sessions. More than two unexcused absences will result in a reduction of the final grade by one letter grade; with every additional unexcused absence, the final grade will drop by an additional grade. Some of the discussions and exercises are done and graded in-class so you must attend class to receive these points.
A = Consistent growth as well as excellent work that consistently goes above and beyond what is required.
B = Above average growth as well as above average work.
C = Average growth as well as average work.
D = Dissatisfactory growth and incomplete work.
E = Dissatisfactory growth, incomplete work, and poor attendance.
The numeric breakdown for the final grade follows:
— Project 1: 10%
— Project 2: 20%
— Project 3: 30%
— Shorter assignments: 20%
— Participation: 20%
Any individuals with learning disabilities or special needs must make the instructor aware of them prior to the due date of the first major assignment. Those who require accommodations for access and participation in this course must be registered with the UIC Disability Resource Center.
If you wish to observe your religious holiday that is in the conflict with mandatory academic attendance, you must notify the instructor in advance.
You are responsible for understanding what constitutes academic dishonesty. Academic dishonesty is an extremely serious offense. All cases of academic dishonesty will be dealt with in accordance with the policies of the University.
— Official Python2 and Python3 documentation
— Codeacademy's Python tutorials
— Learn Python the Hard Way
— scikit-learn
— SciPy, NumPy
— TensorFlow, An open-source software library for Machine Intelligence
— Keras Deep Learning Library for TensorFlow
— Awesome TensorFlow
— A Visual Introduction to Machine Learning
— Flow Machines
— Learning to Generate Chairs, Tables, and Cars with Convolutional Networks
— How do Convolutional Neural Networks work?
— DeepMind
— Andrej Karpathy's blog, The Unreasonable Effectiveness of Recurrent Neural Networks
— Neural Networks and Deep Learning online textbook
— Machine Learning for Software Engineers
— CHI 2016 Workshop on Human Centered Machine Learning
— Piekniewski's blog, Can A Deep Net See A Cat?, Just How Close Are We To Solving Vision?
— Google Research, Google Brain
— Hubel and Wiesel’s Visual Cortex Cell Recording, 1959
— Visual Analysis for Recurrent Neural Networks
— A.I. Experiments with Google
— Machine Learning is Fun!, parts 1-6
— OpenAI Gym
— Overview of GANs, KD Nuggets
— Deep Advances in Generative Modeling
— Fresh Machine Learning, Sirajology
— Machine Learning Recipes
— Decoding The Thought Vector
— Image Kernels Explained Visually
— A Guide to Convolution Arithmetic for Deep
Learning
— The Great AI Awakening
— NIPS papers, Code repos for NIPS’16
— 2016: The Year AI Got Creative
— A Visual and Interactive Guide to the Basics of Neural Networks
— TensorFlow in a Nutshell, Pts 1,2, and 3
— CreativeAI.net
— ML@B blog
— List of GAN Papers and Projects
— Abusing Generative Adversarial Networks to Make 8-bit Pixel Art
— 40 Ways Deep Learning is Eating the World
— Understanding LSTM Networks
— How to build a Recurrent Neural Network in TensorFlow, parts 1 through 7
— Conv Nets: A Modular Perspective
— Understanding Neural Networks Through Deep Visualization
— PixelCNN & PixelRNN in TensorFlow
— Minimal ML Algorithms
— A Gentle Introduction to Backpropagation
— A Step-by-Step Backpropagation Example
— Anyone Can Learn To Code an LSTM-RNN in Python
— Recurrent Neural Network Tutorial for Artists (p5.js)
— Sentdex’s RNN Example in Tensorflow
— StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks, code
— Reddit's Machine Learning channel
— Reddit's Machine Learning Questions channel
— Deep Dream: blog, code, gallery
— Neural Photo Editor: article, code, video
— DeepBach: article, code, blog
— Flow Composer: article, AI makes pop music, Composing with AI
— EQ-radio: project page
— Eulerian Video Magnification: project page
— Visual Microphone: project page
— Generating Faces with Deconvolution Networks: blog, code
— Image Compression with Neural Networks: article, blog
— Image Completion with Deep Learning in TensorFlow: blog, code
— Wekinator: project page
— Image Synthesis from Yahoo's open_nsfw: blog,
— Face2Face: Real-time Face Capture and Reenactment of RGB Videos: project page", article
— Nightmare Machine: project page
— AlphaGo: article, project page
— DQN: article, project page, DQN-TensorFlow, video
— WaveNet: article, project page, Tensorflow code
— DeepRhyme: blog
— DeepBeat / DopeLearning: project page, article
— PlaNet: Photo Geolocation with Convolutional Neural Networks: article
— A Neural Algorithm of Artistic Style: article, article, code, Keras code, gallery
— Generating Videos with Scene Dynamics: project page (TinyVideo), article
— Quiver: Interactive Deep Convolutional Networks Features Visualization: project page, code
— One-Shot Generalization in Deep Generative Models: article, video clip, video clip
— Image Inpainting : Overview and Recent Advances: article
— Automated Inference on Criminality using Face Images: article
— Image-to-Image Translation with Conditional Adversarial Nets: project page, article
— Zero-Shot Translation: blog, article
— Generative Visual Manipulation on the Natural Image Manifold: video, project page, article
— Magenta TensorFlow: blog
— Neural Doodle: code, blog, article, article, video
— Four Experiments in Handwriting with a Neural Network: project page + references
— Visual Dynamics: Probabilistic Future Frame Synthesis via Cross Convolutional Networks : video, project page, article
— Curated AI: A Literary Magazine Written by Machines, for People: homepage, http://curatedai.com/tags/#deep-gimble-ii
— Traffic Sign Recognition with TensorFlow: blog, BelgiumTS dataset
— Project Dreamcatcher: project page, blog
— Big-Data Poetry: http://bdp.glia.ca/, a crumb of friction milks god
— Plug and Play Generative Networks: project page, article, code
— Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis: article
— Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks (DCGANs) : project page, article, code, code, Neural Face
— DRAW: A Recurrent Neural Network For Image Generation: article, video, blog, code, more code
— Kyle McDonald: A Return to Machine Learning, Style Studies
— Rebecca Fiebrink: website
— Memo Akten: The Dawn of Deep Learning, Algorithmic Decision Making, Machine Bias, Creativity and Diversity, other articles on Medium
— Embodied AudioVisual Interaction: EAVI at Goldsmiths
— Christopher Oleh: website
— Big Picture Group: website
— Jessica Rosenkrantz + Nervous System: talk, studio
— Tom White: Neural Facegrids, Transfers
— Artists and Machine Intelligence: Blog postings
— YouTube8M
— Google Knowledge Graph
— Yahoo's open_nsfw
— Affectiva Emotion SDK (Affdex)
— Norvig’s Ngrams data
— Kaggle Academic Machine Learning Competitions
— ImageNet
— MSRA-CFW: Data Set of Celebrity Faces on the Web
— Flickr8k, images with captions
— WordNet
— MNIST handwritten digits dataset
— UCI Machine Learning Repository datasets
— YouTube-BoundingBoxes
— An extensive dataset of eye movements during viewing of complex images, MIT Saliency Benchmark datasets
— Model Zoo
— Google BigQuery Public Datasets
— KDnuggets list of public datasets
— Wikipedia List of Datasets for Machine Learning Research
— Parag Mital’s Creative Applications of Deep Learning with TensorFlow
— Udacity's Deep Learning by Google
— Andrew Ng's Coursera Machine Learning
— Philippe Pasquier's Generative Art and Computational Creativity
— Brad Knox’s and Cynthia Breazeal’s Interactive Machine Learning
— Jeremy Howard’s Practical Deep Learning For Coders
— Standford’s Deep Learning Tutorial