Course description
        
	Machine Learning encompasses the study of algorithms that learn from data. It has been a key component in a number of problem domains including computer vision, natural language processing, computational biology and robotics. This class will introduce the fundamental concepts and algorithms in machine learning (supervised as well as unsupervised learning) as well as best practices in applying machine learning to practical problems. The class consists of lectures, problem sets that contain mathematical and programming exercises and two in-class exams.
        
        
        Prerequisites
        
Undergraduate level training or coursework in algorithms, linear algebra, calculus and multivariate calculus, basic probability and statistics; an undergraduate level course in Artificial Intelligence may be helpful but is not required. A background in programming will also be necessary for the problem sets; specifically students are expected to be familiar with python and scikit-learn (a machine learning package for python) or learn it during the course.
        
        Contact Info
        Instructor: Sriram Sankararaman
        Office Hours: Engineering VI 296B, Tuesday 4:00-5:00pm 
        Email: sriram at cs dot ucla dot edu
        
	Teaching assistants
	
	- Ruth Johnson
	Office hours: Engineering VI 294, Monday 9:00-11:00am 
	Email: ruthjohnson at ucla dot edu
	 -  Rizwan Parvez
	Office hours: Engineering VI 368, Thursdays 12:00 pm-2:00 pm 
	Email: rizwan at cs dot ucla dot edu
	 -  Difan Zou
	Office hours: Boelter 3256S, Tuesday 1:00pm-3:00pm 
	Email: knowzou at cs dot ucla dot edu
	 -  Ariel Wu
	Office hours: Engineering VI 294, Monday 11:30am-1:30pm
	Email: arielwu at cs dot ucla dot edu
	 -  Ali Pazoki
	Office hours: Engineering VI 294, Wednesday 9:00am-11:00am
	Email: alipazoki at ucla dot edu
	 
	
	
        Textbooks
        While there is not one textbook that covers all the material from this course, readings will come from the following texts:
        
	
	For a more advanced treatment, the following are useful:
	
	Machine Learning requires a strong mathematical foundation. You may find the following resources useful to brush up your math background.
	
	  -  Probability
		
	  
 -  Linear algebra
		 
	  
 -  Optimization
		 
 
        
 
        Course format
        
	 Software 
	We will extensively be using 
Python 2.7.x to implement ML algorithms and run experiments. You will require and need to familiarize yourself with the following packages:
	
	-  numpy: contains tools for numerical linear algebra, random number generation. For a numpy tutorial, see  here .
	
 -  scipy
	
 -  scikit-learn : contains tools for machine learning and data science. For a tutorial, see  here 
	
 
	 Forums 
	Piazza 
        
 We will use Piazza for class discussions. Please go to this
          Piazza website to join the course forum (note: you must use a
        ucla.edu email account to join the forum). We strongly encourage
        students to post on this forum rather than emailing the course staff
        directly (this will be more efficient for both students and staff).
        Students should use Piazza to: 
        
          - Ask clarifying questions about the course material.
 
          - Share useful resources with classmates (so long as they do not
          contain solutions).
 
          - Look for project partners or other students to form study groups.
 
          - Answer questions posted by other students to solidify your own
          understanding of the material.
 
        
        The course Academic Integrity Policy must be followed on the message
        boards at all times. Do not post or request solutions to problem sets! Also,
        please be polite.
	
Gradescope
	We will use gradescope to manage and grade problem sets and exams.
	
	 Policies 
	Academic Integrity Policy
        Group studying and collaborating on problem sets are encouraged, as
        working together is a great way to understand new material.  Students
        are free to discuss the homework problems with anyone under the
        following conditions:
        
          - Students must write their own solutions and understand the
          solutions that they wrote down.
 
          - Students must list the names of their collaborators (i.e., anyone
          with whom the assignment was discussed).
 
          - Students may not use old solution sets from this class or any
          other class under any circumstances, unless the instructor grants
          special permission.
 
        
        
        Students are  encouraged to read the Dean of Students' 
 guide to Academic Integrity.
	
Attendance and class participation
Although not a formal component of the course grade, attendance is essential for success in this course. If you are absent without a documented excuse, the instructor and TAs will not be able to go over missed lecture material with you. We emphatically welcome questions and your active participation in this course will enhance your learning experience and that of the other students.
	
Regrade requests
 Regrade requests for homework and exams must be made through gradescope within one week after the graded homeworks have been released, regardless of your attendance on that day and regardless of any intervening holidays such as Memorial Day. We reserve the right to regrade all problems for a given regrade request.
        
Acknowledgments
         The course website is based on material developed by Ameet Talwalkar and 
          Fei Sha.
        Some of the administrative content on the course website is adapted
        from material from Jenn
          Wortman Vaughan, Rich Korf, and Alexander Sherstov.
        
	Tentative Schedule (subject to change)
	
    	
        
            
                | Date | 
                Topics | 
                Readings | 
                Problem Sets | 
            
        
        
    
            
                | 1/06 | 
                Introduction
                 | 
                 | 
                Problem Set 0  | 
            
	    
	    | 1/11 | 
	    
	     | 
	     | 
	     |