CSC 411: Introduction to Machine Learning

Similar documents
Python Machine Learning

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Generative models and adversarial training

Lecture 1: Machine Learning Basics

Data Structures and Algorithms

(Sub)Gradient Descent

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

Lecture 1: Basic Concepts of Machine Learning

Training a Neural Network to Answer 8th Grade Science Questions Steven Hewitt, An Ju, Katherine Stasaski

Laboratorio di Intelligenza Artificiale e Robotica

Penn State University - University Park MATH 140 Instructor Syllabus, Calculus with Analytic Geometry I Fall 2010

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

Math 181, Calculus I

CS4491/CS 7265 BIG DATA ANALYTICS INTRODUCTION TO THE COURSE. Mingon Kang, PhD Computer Science, Kennesaw State University

CS 100: Principles of Computing

CS 101 Computer Science I Fall Instructor Muller. Syllabus

CS Course Missive

Introduction to Ensemble Learning Featuring Successes in the Netflix Prize Competition

EECS 700: Computer Modeling, Simulation, and Visualization Fall 2014

Office Hours: Mon & Fri 10:00-12:00. Course Description

Lahore University of Management Sciences. FINN 321 Econometrics Fall Semester 2017

MTH 215: Introduction to Linear Algebra

EGRHS Course Fair. Science & Math AP & IB Courses

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

COSI Meet the Majors Fall 17. Prof. Mitch Cherniack Undergraduate Advising Head (UAH), COSI Fall '17: Instructor COSI 29a

Department of Anthropology ANTH 1027A/001: Introduction to Linguistics Dr. Olga Kharytonava Course Outline Fall 2017

DOCTOR OF PHILOSOPHY HANDBOOK

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

Human Emotion Recognition From Speech

Purdue Data Summit Communication of Big Data Analytics. New SAT Predictive Validity Case Study

ENEE 302h: Digital Electronics, Fall 2005 Prof. Bruce Jacob

A Neural Network GUI Tested on Text-To-Phoneme Mapping

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Syllabus ENGR 190 Introductory Calculus (QR)

Navigating the PhD Options in CMS

Reinforcement Learning by Comparing Immediate Reward

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

ReFresh: Retaining First Year Engineering Students and Retraining for Success

Course Outline. Course Grading. Where to go for help. Academic Integrity. EE-589 Introduction to Neural Networks NN 1 EE

Laboratorio di Intelligenza Artificiale e Robotica

State University of New York at Buffalo INTRODUCTION TO STATISTICS PSC 408 Fall 2015 M,W,F 1-1:50 NSC 210

Undergraduate Program Guide. Bachelor of Science. Computer Science DEPARTMENT OF COMPUTER SCIENCE and ENGINEERING

Introduction to Simulation

Abstractions and the Brain

Department of Statistics. STAT399 Statistical Consulting. Semester 2, Unit Outline. Unit Convener: Dr Ayse Bilgin

Lecture 10: Reinforcement Learning

Machine Learning and Data Mining. Ensembles of Learners. Prof. Alexander Ihler

Speech Emotion Recognition Using Support Vector Machine

MATH 1A: Calculus I Sec 01 Winter 2017 Room E31 MTWThF 8:30-9:20AM

Self Study Report Computer Science

Ryerson University Sociology SOC 483: Advanced Research and Statistics

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

Assignment 1: Predicting Amazon Review Ratings

Modeling user preferences and norms in context-aware systems

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

Semi-supervised methods of text processing, and an application to medical concept extraction. Yacine Jernite Text-as-Data series September 17.

CSL465/603 - Machine Learning

Computer Science 1015F ~ 2016 ~ Notes to Students

Financial Accounting Concepts and Research

Food Products Marketing

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

A Case Study: News Classification Based on Term Frequency

Improving Conceptual Understanding of Physics with Technology

Stochastic Calculus for Finance I (46-944) Spring 2008 Syllabus

Learning From the Past with Experiment Databases

B.S/M.A in Mathematics

Top US Tech Talent for the Top China Tech Company

CS/SE 3341 Spring 2012

Georgetown University at TREC 2017 Dynamic Domain Track

Firms and Markets Saturdays Summer I 2014

Spring 2014 SYLLABUS Michigan State University STT 430: Probability and Statistics for Engineering

Axiom 2013 Team Description Paper

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

International Business BADM 455, Section 2 Spring 2008

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

Jeff Walker Office location: Science 476C (I have a phone but is preferred) 1 Course Information. 2 Course Description

GRADUATE STUDENT HANDBOOK Master of Science Programs in Biostatistics

Course Syllabus for Math

Universidade do Minho Escola de Engenharia

COMPUTER SCIENCE GRADUATE STUDIES Course Descriptions by Methodology

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

Course Content Concepts

Week 01. MS&E 273: Technology Venture Formation

An OO Framework for building Intelligence and Learning properties in Software Agents

Analysis of Emotion Recognition System through Speech Signal Using KNN & GMM Classifier

University of Groningen. Systemen, planning, netwerken Bosman, Aart

COMPUTER SCIENCE GRADUATE STUDIES Course Descriptions by Research Area

Syllabus Foundations of Finance Summer 2014 FINC-UB

Learning Methods in Multilingual Speech Recognition

Syllabus - ESET 369 Embedded Systems Software, Fall 2016

Physics Experimental Physics II: Electricity and Magnetism Prof. Eno Spring 2017

CALCULUS III MATH

INTERMEDIATE ALGEBRA Course Syllabus

Computer Science 141: Computing Hardware Course Information Fall 2012

Model Ensemble for Click Prediction in Bing Search Ads

MGT/MGP/MGB 261: Investment Analysis

*In Ancient Greek: *In English: micro = small macro = large economia = management of the household or family

Transcription:

CSC 411: Introduction to Machine Learning Lecture 1 - Introduction Roger Grosse, Amir-massoud Farahmand, and Juan Carrasquilla University of Toronto (UofT) CSC411-Lec1 1 / 28

This course Broad introduction to machine learning First half: algorithms and principles for supervised learning nearest neighbors, decision trees, ensembles, linear regression, logistic regression, SVMs Unsupervised learning: PCA, K-means, mixture models Basics of reinforcement learning Coursework is aimed at advanced undergrads, but we ll try to keep things interesting for the grad students. (UofT) CSC411-Lec1 2 / 28

Course Information Course Website: https://www.cs.toronto.edu/~rgrosse/courses/csc411_f18/ We will use Quercus for announcements. You should all have been automatically signed up. Did you receive the announcement on Thursday? We will use Piazza for discussions. URL to be sent out Your grade does not depend on your participation on Piazza. It s just a good way for asking questions, discussing with your instructor, TAs and your peers (UofT) CSC411-Lec1 3 / 28

Course Information While cell phones and other electronics are not prohibited in lecture, talking, recording or taking pictures in class is strictly prohibited without the consent of your instructor. Please ask before doing! http://www.illnessverification.utoronto.ca is the only acceptable form of direct medical documentation. For accessibility services: If you require additional academic accommodations, please contact UofT Accessibility Services as soon as possible, studentlife.utoronto.ca/as. (UofT) CSC411-Lec1 4 / 28

Course Information Recommended readings will be given for each lecture. But the following will be useful throughout the course: Hastie, Tibshirani, and Friedman: The Elements of Statistical Learning Christopher Bishop: Pattern Recognition and Machine Learning, 2006. Kevin Murphy: Machine Learning: a Probabilistic Perspective, 2012. David Mackay: Information Theory, Inference, and Learning Algorithms, 2003. Shai Shalev-Shwartz & Shai Ben-David: Understanding Machine Learning: From Theory to Algorithms, 2014. There are lots of freely available, high-quality ML resources. (UofT) CSC411-Lec1 5 / 28

Course Information See Metacademy (https://metacademy.org) for additional background, and to help review prerequisites. (UofT) CSC411-Lec1 6 / 28

Requirements and Marking (Undergraduates) 8 10 weekly assignments. Combination of pencil & paper derivations and short programming exercises Equally weighted, for a total of 45% Lowest homework mark is dropped Read some classic papers. Worth 5%, honor system. Midterm Oct. 19, 6 7pm Worth 15% of course mark Final Exam Three hours Date and time TBA Worth 35% of course mark (UofT) CSC411-Lec1 7 / 28

Final Projects (Grad Students Only) Grad students may choose between the following: Follow the undergrad requirements (the path of least resistance) Replace the second half of the weekly homeworks with a final project (for those who are excited about getting research experience) The project is meant to be a small research project, comparable to a workshop submission. You must work in groups of 2 3. Everybody must take the final exam! Marking scheme if you choose the final project: 25% project 20% weekly homeworks (Homeworks 1 through 4) 15% midterm 35% final exam 5% readings (honor system) (UofT) CSC411-Lec1 8 / 28

More on Assignments Collaboration on the assignments is not allowed. Each student is responsible for his/her own work. Discussion of assignments should be limited to clarification of the handout itself, and should not involve any sharing of pseudocode or code or simulation results. Violation of this policy is grounds for a semester grade of F, in accordance with university regulations. The schedule of assignments will be posted on the course web page. Assignments should be handed in by 11:59pm; a late penalty of 10% per day will be assessed thereafter (up to 3 days, then submission is blocked). Extensions will be granted only in special situations, and you will need a Student Medical Certificate or a written request approved by the course coordinator at least one week before the due date. (UofT) CSC411-Lec1 9 / 28

Related Courses csc421 (neural nets) and csc412 (probabilistic graphical models) both build upon the material in this course. If you ve already taken csc321, there will be 3 4 weeks of redundant material. Sorry. We will probably stop cross-listing this as an undergrad and grad course. Next year, we expect to split csc2515 off into a stand-alone grad course. (UofT) CSC411-Lec1 10 / 28

What is learning? The activity or process of gaining knowledge or skill by studying, practicing, being taught, or experiencing something. Merriam Webster dictionary A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. Tom Mitchell (UofT) CSC411-Lec1 11 / 28

What is machine learning? For many problems, it s difficult to program the correct behavior by hand recognizing people and objects understanding human speech Machine learning approach: program an algorithm to automatically learn from data, or from experience Why might you want to use a learning algorithm? hard to code up a solution by hand (e.g. vision, speech) system needs to adapt to a changing environment (e.g. spam detection) want the system to perform better than the human programmers privacy/fairness (e.g. ranking search results) (UofT) CSC411-Lec1 12 / 28

What is machine learning? It s similar to statistics... Both fields try to uncover patterns in data Both fields draw heavily on calculus, probability, and linear algebra, and share many of the same core algorithms But it s not statistics! Stats is more concerned with helping scientists and policymakers draw good conclusions; ML is more concerned with building autonomous agents Stats puts more emphasis on interpretability and mathematical rigor; ML puts more emphasis on predictive performance, scalability, and autonomy (UofT) CSC411-Lec1 13 / 28

What is machine learning? Types of machine learning Supervised learning: have labeled examples of the correct behavior Reinforcement learning: learning system receives a reward signal, tries to learn to maximize the reward signal Unsupervised learning: no labeled examples instead, looking for interesting patterns in the data (UofT) CSC411-Lec1 14 / 28

History of machine learning Early developments 1957 perceptron algorithm (implemented as a circuit!) 1959 Aurthur Samuel wrote a learning-based checkers program that could defeat him 1969 Minsky and Papert s book Perceptrons (limitations of linear models) 1980s Some foundational ideas Connectionist psychologists explored neural models of cognition 1984 Leslie Valiant formalized the problem of learning as PAC learning 1988 Backpropagation (re-)discovered by Geoffrey Hinton and colleagues 1988 Judea Pearl s book Probabilistic Reasoning in Intelligent Systems introduced Bayesian networks (UofT) CSC411-Lec1 15 / 28

History of machine learning 1990s the AI Winter, a time of pessimism and low funding But looking back, the 90s were also sort of a golden age for ML research Markov chain Monte Carlo variational inference kernels and support vector machines boosting convolutional networks 2000s applied AI fields (vision, NLP, etc.) adopted ML 2010s deep learning 2010 2012 neural nets smashed previous records in speech-to-text and object recognition increasing adoption by the tech industry 2016 AlphaGo defeated the human Go champion (UofT) CSC411-Lec1 16 / 28

History of machine learning We passed a dubious milestone on Tuesday: (UofT) CSC411-Lec1 17 / 28

Computer vision: Object detection, semantic segmentation, pose estimation, and almost every other task is done with ML. Instance segmentation - (UofT) Link CSC411-Lec1 18 / 28

Speech: Speech to text, personal assistants, speaker identification... (UofT) CSC411-Lec1 19 / 28

NLP: Machine translation, sentiment analysis, topic modeling, spam filtering. (UofT) CSC411-Lec1 20 / 28

Playing Games DOTA2 - Link (UofT) CSC411-Lec1 21 / 28

E-commerce & Recommender Systems : Amazon, netflix,... (UofT) CSC411-Lec1 22 / 28

Why this class? Why not jump straight to csc421, and learn neural nets first? The techniques in this course are still the first things to try for a new ML problem. E.g., try logistic regression before building a deep neural net! The principles you learn in this course will be essential to really understand neural nets. 3 4 weeks of csc321 were devoted to background material covered in this course! There s a whole world of probabilistic graphical models. (UofT) CSC411-Lec1 23 / 28

Why this class? 2017 Kaggle survey of data science and ML practitioners: what data science methods do you use at work? (UofT) CSC411-Lec1 24 / 28

ML Workflow ML workflow sketch: 1 Should I use ML on this problem? Is there a pattern to detect? Can I solve it analytically? Do I have data? 2 Gather and organize data. 3 Preprocessing, cleaning, visualizing. 4 Establishing a baseline. 5 Choosing a model, loss, regularization,... 6 Optimization (could be simple, could be a Phd...). 7 Hyperparameter search. 8 Analyze performance and mistakes, and iterate back to step 5 (or 3). (UofT) CSC411-Lec1 25 / 28

Implementing machine learning systems You will often need to derive an algorithm (with pencil and paper), and then translate the math into code. Array processing (NumPy) vectorize computations (express them in terms of matrix/vector operations) to exploit hardware efficiency This also makes your code cleaner and more readable! (UofT) CSC411-Lec1 26 / 28

Implementing machine learning systems Neural net frameworks: PyTorch, TensorFlow, Theano, etc. automatic differentiation compiling computation graphs libraries of algorithms and network primitives support for graphics processing units (GPUs) Why take this class if these frameworks do so much for you? So you know what to do if something goes wrong! Debugging learning algorithms requires sophisticated detective work, which requires understanding what goes on beneath the hood. That s why we derive things by hand in this class! (UofT) CSC411-Lec1 27 / 28

Questions?? (UofT) CSC411-Lec1 28 / 28