// Databricks notebook source exported at Sun, 19 Jun 2016 08:36:55 UTC
Scalable Data Science
prepared by Raazesh Sainudiin and Sivanand Sivaram
The html source url of this databricks notebook and its recorded Uji :
Some very useful resources we will weave around for Statistical Learning, Data Mining, Machine Learning:
- January 2014, Stanford University professors Trevor Hastie and Rob Tibshirani (authors of the legendary Elements of Statistical Learning textbook) taught an online course based on their newest textbook, An Introduction to Statistical Learning with Applications in R (ISLR).
- A more theoretically sound book with interesting aplications is Elements of Statistical Learning by the Stanford Gang of 3 (Hastie, Tibshirani and Friedman):
- free PDF of the 10th printing: http://statweb.stanford.edu/~tibs/ElemStatLearn/printings/ESLII_print10.pdf
- Solutions: http://waxworksmath.com/Authors/G_M/Hastie/WriteUp/weatherwax_epstein_hastie_solutions_manual.pdf
- 2015, UCLA Ass. Professor Ameet Talwalkar (from Spark team) in BerkeleyX: CS190.1x Scalable Machine Learning in edX Archive from 2015
- Those at UC, Ilam may want to take the following honours courses:
- Machine Learning from Computer Science Department for a broader vew of ML (logic, search, probabilistic/statistical learning) and/or
- Data Mining from School of Mathematics and Statistics for applied statistical learning methods
- My preferred book for statistical learning is by Kevin P. Murphy, Machine Learning: A Probabilistic Perspective.
Note: This is an applied course in data science and we will quickly move to doing things with data. You have to do work to get a deeper mathematical understanding or take other courses. We will focus on intution here and the distributed ML Pipeline in action.
I may consider teaching a theoretical course in statistical learning if there is enough interest for those with background in:
- Real Analysis,
- Geometry,
- Combinatorics and
- Probability, in the future.
Such a course could be an expanded version of the following notes built on the classic works of Luc Devroye and the L1-School of Statistical Learning:
- Short course on Non-parametric Density Estimation at Centre for Mathematics and its Applications, Ecole Polytechnique, Palaiseau, France
Machine Learning Introduction
ML Intro high-level by Ameet Talwalkar in BerkeleyX: CS190.1x Scalable Machine Learning
(watch now 4:14):
Ameet's Summary of Machine Learning at a High Level
rough definition of machine learning.
- constructing and studying methods that learn from and make predictions on data.
This broad area involves tools and ideas from various domains, including:
- computer science,
- probability and statistics,
- optimization, and
linear algebra.
Common examples of ML, include:
- face recognition,
- link prediction,
- text or document classification, eg.::
- spam detection,
- protein structure prediction
- teaching computers to play games (go!)
Some common terminology
using example of spam detection as a running example.
the data points we learn from are call observations:
- they are items or entities used for::
- learning or
- evaluation.
- they are items or entities used for::
in the context of spam detection,
- emails are our observations.
- Features are attributes used to represent an observation.
- Features are typically numeric,
- and in spam detection, they can be:
- the length,
- the date, or
- the presence or absence of keywords in emails.
- and in spam detection, they can be:
- Labels are values or categories assigned to observations.
- and in spam detection, they can be:
- an email being defined as spam or not spam.
- and in spam detection, they can be:
Training and test data sets are the observations that we use to train and evaluate a learning algorithm.
...Pop-Quiz
- What is the difference between supervised and unsupervised learning?
For a Stats@Stanford Hastie-Tibshirani Perspective on Supervised and Unsupervised Learning:
(watch later 12:12):
Typical Supervised Learning Pipeline by Ameet Talwalkar in BerkeleyX: CS190.1x Scalable Machine Learning
(watch now 2:07):
Take your own notes if you want ....
Sample Classification Pipeline (Spam Filter) by Ameet Talwalkar in BerkeleyX: CS190.1x Scalable Machine Learning
(watch later 7:48):