Description

This course introduces the foundational theory and algorithms of machine learning. The goal of this course is to endow the student with a) a solid understanding of the foundational concepts of machine learning, and b) the ability to derive and analyze machine learning algorithms. Topics to be covered include empirical risk minimization, PAC learning, Agnostic PAC learning, structural risk minimization, model selection, boosting, online learning, nearest neighbors, decision trees, surrogate loss functions, stochastic gradient descent, support vector machines, kernel methods, multi-class classification, neural networks, dimensionality reduction, and clustering, etc. Lecture notes, homework assignments will be released on CCLE and Piazza. Homework solutions will be released on CCLE.

General Information

Instructor
Quanquan Gu
Lecture Time and Location
Tuesday & Thursday 4:00 - 5:50PM, Mathematical Sciences Building 5200
Discussion Section Time and Location
Friday 4:00 - 5:50PM, Kinsey Teaching Pavilion 1240B
Prerequisites
Two years of college mathematics, including calculus, linear algebra, probability and statistics, and the ability to write computer programs.
Textbooks
Required Textbook:
1. Shalev-Shwartz, Shai, and Shai Ben-David. Understanding machine learning: From theory to algorithms. Cambridge University Press, 2014.


Recommended Textbooks:

1. Mohri, Mehryar, Afshin Rostamizadeh, and Ameet Talwalkar. Foundations of machine learning. MIT press, 2012.
2. Trevor Hastie, Robert Tibshirani, Jerome Friedman, The Elements of Statistical Learning, Springer, 2009.
3. Christopher Bishop, Pattern Recognition and Machine Learning, Springer, 2007.
4. Kevin Murphy, Machine Learning: A Probabilistic Perspective, MIT Press, 2012.

Announcements

Instructor's extra office hour on Tuesday
12/10/18 7:32 PM

Hi everyone,

     I will have an extra office hour tomorrow (Dec 11) 1:00-2:00pm in my office (EVI 282). Feel free to stop by. Thanks.

Best,

Quanquan

Final Presentation Instruction
12/04/18 5:41 PM

Hi all,

 

We will hold our final presentation on

Wednesday, December 12, 3:00pm - 6:00pm

MS 5200

 

Before you prepare the presentation, please read the following instruction carefully:

 

1.     Timing. You will be expected to deliver a polished and concise overview of your final project in the 12 minute time frame.  We will be very strict about timing and will stop you when your 12 minutes time is up even if you have not finished. You are recommended to prepare a 10-minute presentation, and leave the rest 2 minutes for questions and answers.

2.     Order. Please complete the survey https://doodle.com/poll/tyn6cq7at7k3i55i by Friday, Dec 7th, 11:59 PM to select your preferred slot. Instruction of the survey can be found here https://piazza.com/class/jme0w759wny7k?cid=214. Teams failed to complete the survey before the deadline will be randomly assigned a slot.

3.     Content. Your presentation should generally reflect the outcome and accomplishment of the project described in your proposal.

4.     Audience. Due to the time limit, when listening to other groups’ presentation, please avoid interrupting the speaker until they finish. You are welcome to ask questions in questions & answers section.

5.     Slides. Due to the time limit, all teams are required to use one single computer which is tied to the video projector of the classroom. Please submit all materials you want to display during your final presentation to CCLE. The deadline of submission is Dec 12nd, 2:00PM (1 hour before the final presentation). Any changes after the slide submission deadline will not be considered.

 

1.     We recommend that you use either PowerPoint, Keynote, Adobe Acrobat or browser-based applications as these tend to be available on most computers. To avoid layout issue during display, it is recommended to export your slides into print-ready file such as high-resolution Adobe PDF files.

2.     If animations or videos are necessary, please ensure that you include the corresponding files in your submission. We encourage you to submit videos using an MP4 codec such as DivX contained in an AVI. Also, please submit a README text file with each video specifying the exact codec used and a URL where the codec can be downloaded. Another option is you can upload your videos to websites like Youtube, and insert or link the online video to your slides.

3.     CCLE imposes a 100MB limit on the size of submission. Note that you can update the file by uploading a new one.

4.     If you have any special demand for technical support, please contact TA (xzbei@cs.ucla.edu) at least one day before the final presentation. 

Good luck!

#pin

[Important] Final Presentation Scheduling
11/28/18 11:57 AM

Hi all,

The final presentation day & time will be :

Wednesday, December 12, 3:00pm - 6:00pm

We are going to use the doodle poll to set up the order of the final presentation. Please read the instruction carefully before you sign up:

1. First come, first choose.

2. One team can only submit once.

3. Once sign up, you are required to fulfill your name. You only need to fulfill the name of one of your members in your team.

4. You can pick only one slot. One slot can be chosen by at most one team.

5. Please avoid re-editing. 

6. Teams failed to submit the poll will be randomly assigned a slot.

The poll is in the following link:

https://doodle.com/poll/tyn6cq7at7k3i55i

Good luck!

#pin
Slides of Lectures 13 - 16 have been posted
11/27/18 3:56 PM

Clarification of HW4 (Deadline Extended)
11/26/18 6:05 PM

Hi all,

Since we found some mistakes in the problem spec, homework 4 deadline has been extended to Nov 27. 11:59 PM. The following are a few clarifications of Homework 4:

Exercise 10.1: The second paragraph should be replaced by:

suggest a procedure that relies on A and learns H, in the usual agnostic PAC learning model and has a sample complexity of 

mH(ϵ,δ)kmH(ϵ/2)+2log(4k/δ)(ϵ/2)2

where

k=log(δ/2)/log(δ0)

Hint: Divide the data into k+1 chunks, where each of the first k chunks is of size mH(ϵ/2) examples. Train the first k chunks using A. Argue that the probability that for all of these chunks we have LD(A(S))>minhHLD(h)+ϵ/2 is at most δ0kδ/2. Finally, use the last chunk to choose from the k hypothesis that A generated from the k chunks (by relying on Corollary 4.6)

Exercise 12.2: The hypothesis class is defined as H={wRd:||w||B} and the input domain is defined as X={xRd:||x||B}

Exercise 14.2: Here we assume ϵ(0,1)

Question 8: Many students realized the problem that if we fix b=1 in the decision stump, then the training error of AdaBoost would be very large. If you do not satisfy with the performance, you can implement a decision stump using b{1,1}, with the following ERM algorithm:

initialize F=

for j=1,,d

     sort S using the j'th coordinate, and denote

          x1,jx2,j,xm,jxm+1,jxm,j+1

     F+=i:yi=1Di

     F=i:yi=1Di

     if F+<F

          F=F+,θ=x1,j1,j=j,b=1

     if F<F

          F=F,θ=x1,j1,j=j,b=1

     for i=1,,m

          F+=F+yiDi

          F=F+yiDi

          if F+<F and xi,jxi+1,j

               F=F+,θ=0.5(xi,j+xi+1,j),j=j,b=1

          if F<F and xi,jxi+1,j

               F=F,θ=0.5(xi,j+xi+1,j),j=j,b=1

I have uploaded corresponding skeleton code of b{0,1} to the homework code folder. Both implementations will get full credits.

HW2 Grade Has Been Published
11/21/18 1:32 AM

MEDIAN
95.0
MAXIMUM
100.0
MEAN
92.46
STD DEV
6.39
Midterm Grade Has Been Published
11/20/18 9:26 PM

Statistics:

MEDIAN
91.5
MAXIMUM
99.0
MEAN
87.11
STD DEV
9.91

Please find your grade on gradescope, and midterm solution on CCLE. Thanks!

Good job!

Course project presentation: Wednesday, December 12 from 3:00-6:00pm
11/20/18 11:25 AM

Hi everyone,

Registrar Scheduling office just informed me that the final exam (course project presentation) day and time for our class will be Wednesday, December 12 from 3:00-6:00pm. Thanks.

Best,

Quanquan

Staff Office Hours
NameOffice Hours
Xinzhu Bei
When?
Where?
Quanquan Gu
When?
Where?