25
CIS 520: Machine Learning Introduc7on & Overview Shivani Agarwal Department of Computer & Informa7on Science University of Pennsylvania Spring 2019

Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

CIS  520:  Machine  Learning    

Introduc7on  &  Overview    

Shivani  Agarwal    

Department  of  Computer  &  Informa7on  Science  University  of  Pennsylvania  

   

Spring  2019    

Page 2: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  1:  Email  Spam  Filter    •  Would  like  to  build  an  email  

filter  that  can  predict  whether  a  new  message  is  spam  or  non-­‐spam  

•  Have  data  containing  previous  examples  of  messages  labeled  as  spam  or  non-­‐spam  

•  Can  we  “learn”  an  email  filter  from  this  data?  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 3: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  2:  HandwriTen  Digit  Recogni7on  •  Would  like  to  build  a  model  

that  can  automa7cally  recognize  handwriTen  digits  from  images  

•  Have  data  containing  examples  of  such  images  labeled  with  the  correct  digit  (0,1,…,9)  

•  Can  we  “learn”  an  accurate  recogni7on  model  from  this  data?    

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 4: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  3:  Weather  Forecas7ng  

•  Would  like  to  build  a  forecas7ng  model  which,  given  a  satellite  image  showing  water  vapor  in  a  region,  can  predict  the  amount  of  rainfall  in  the  coming  week  

•  Have  data  containing  examples  of  such  images  recorded  in  the  past,  together  with  the  amount  of  rainfall  observed  in  the  following  weeks  

•  Can  we  “learn”  a  forecas7ng  model  from  this  data?  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 5: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  4:  Gene  Expression  Analysis  •  Would  like  to  iden7fy  gene7c  

paTerns  in  pa7ents,  such  as  groups  of  genes  that  have  similar  behavior,  or  groups  of  pa7ents  that  have  a  similar  form  of  gene7c  disease  

•  Have  microarray  expression  data  containing  expression  levels  of  thousands  of  genes  in  various  pa7ents  

•  Can  we  “learn”  gene7c  paTerns  from  this  data?  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 6: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  5:  Natural  Language  Parsing  •  Would  like  to  build  a  natural  

language  parser  which,  given  an  English  sentence,  can  predict  the  correct  parse  tree  for  the  sentence  

•  Have  data  containing  examples  of  English  sentences  with  their  correct  parse  tree  annota7ons  

•  Can  we  “learn”  a  natural  language  parser  from  this  data?  

The  cat  threw  the  ball.  

DET   DET   N  N   V  

NP   NP  

VP  

S  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 7: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Example  6:  Movie  Recommenda7ons  

•  Would  like  to  build  a  recommenda7on  system  that  can  recommend  movies  to  users  

•  Have  a  (highly  incomplete)  movie  ra7ng  matrix  containing  ra7ngs  (1-­‐5  stars)  provided  by  various  users  for  movies  they  have  watched  

•  Can  we  “learn”  a  recommenda7on  system  from  this  data?  

2  5   3   1  

4  

4  

4  2  

3  

3  5   4   1  

5  2   4  

u1  u2  

um  

m1  m2   mn  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 8: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Why  Study  Machine  Learning?  

Wouldn’t  it  be  fun  to  see  to  what  extent  human  learning  can  be  implemented  in  machines,  and  in  the  process,  perhaps  gain  insights  into  how  humans  learn  in  the  first  place?  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 9: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Why  Study  Machine  Learning?  

Lots  of  cool  math.    Lots  of  rich  theory.    Applica7ons  too!  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 10: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Why  Study  Machine  Learning?  

I  can  use  my  knowledge  of  computer  science  to  help  design  algorithms  that  can  learn  from  data  in  almost  every  field.  I  can  finally  show  my  friends  in  astronomy,  biology,  finance,  …  how  cool  computer  science  is!  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 11: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Why  Study  Machine  Learning?  

Wow!  I  can  use  machine  learning  methods  to  automa&cally  discover  paTerns  in  my  data  and  use  these  to  inform  decisions!  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Data Scientist

Page 12: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Why  Study  Machine  Learning?  

•  Predic7ve  models  needed  in  many  areas  of  science,  engineering,  business  

•  Data  everywhere:  astronomy,  biology,  climate  modeling,  drug  discovery,  finance,  geology,  Web,…  

 

•  Would  like  to  understand  how  to  design  and  analyze  algorithms  that  can  automa7cally  “learn”  predic7ve  models  from  this  data  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 13: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Aeer  Taking  this  Course,  You  Will…  

•  Have  a  strong  founda7on  in  machine  learning  •  Be  able  to  apply  machine  learning  methods  to  real-­‐

life  problems,  as  well  as  modify/design  new  algorithms  where  needed  

 

•  Be  prepared  for  advanced  coursework/research  in  machine  learning  and  related  fields  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 14: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Overview  of  Some  Logis7cs  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 15: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Course  Website  

 hTp://www.shivani-­‐agarwal.net/Teaching/

CIS-­‐520/Spring-­‐2019/index.html    

 

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

(Check  regularly  for  schedule  updates,  lecture  notes,  addi7onal  references/pointers,  etc!)  

Page 16: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Prerequisites  

– Probability  (ESE  301  /  STAT  510/430  /  ENM  503)  – Linear  Algebra  (EAS  205  /  MATH  312)  – Algorithms  &  Complexity  (Big-­‐O  nota7on  etc)  – Programming  Experience  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 17: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Textbooks  Primary  Reading:    •  Lecture  notes/occasionally  other  materials  (available  online)  Recommended  Textbook:  •  C.M.  Bishop,  Pa+ern  Recogni&on  and  Machine  Learning.  Springer,  

2006.  Addi>onal  Textbooks:  •  T.  Has7e,  R.  Tibshirani  and  J.  Friedman,  The  Elements  of  Sta&s&cal  

Learning:  Data  Mining,  Inference  and  Predic&on.  Springer,  2nd  Edi7on,  2009.    

•  R.O.  Duda,  P.E.  Hart  and  D.G.  Stork.  Pa+ern  Classifica&on.  Wiley-­‐Interscience,  2nd  Edi7on,  2000.  

•  T.  Mitchell,  Machine  Learning.  McGraw  Hill,  1997.  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 18: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Soeware  

MATLAB  2017A      

Download  free  copy:    

hTps://www.seas.upenn.edu/cets/soeware/matlab/student/    

MATLAB  tutorial:    

hTps://alliance.seas.upenn.edu/~cis520/dynamic/2017/wiki/index.php?n=Recita7ons.MatlabTutorial  

     Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 19: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Problem  Set  Submissions  

LaTeX    

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 20: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Grading  

 6  Problem  Sets            24%    Class  Par7cipa7on                      6%    Midterm  Exam  (Tue  Feb  26)      20%    Project              25%    Final  Exam            25%      

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 21: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Course  Policies  (Details  on  Webpage)  

•  Problem  Sets:    –  You  can  work  in  groups,  but  you  must  write  your  own  code  and  solu7ons.  

–  Up  to  2  late  submissions,  late  by  up  to  2  days  each.  •  Projects:  – Work  must  be  your  own  (teams  of  3-­‐4).  –  No  late  submissions.  

•  Exams:  – Make-­‐up  exams  only  in  extenua&ng  circumstances;  submit  requests  at  least  one  week  in  advance.  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 22: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Course  Policies  (Details  on  Webpage)  

•  Academic  Honesty:    –  Don’t  copy.  Don’t  allow  anyone  to  copy.  –  If  you  have  difficulty:  Form  study  groups.  Bounce  off  ideas  with  one  another.  Teach  each  other  what  you  understand.  Come  to  our  office  hours.  

–  If  any  part  of  a  problem  set/project/exam  is  found  to  be  copied,  it  will  automa7cally  result  in  a  zero  grade  for  the  en&re  problem  set/project/exam  (for  both  the  person  copying  and  any  person  allowing  his/her  work  to  be  copied),  a  warning  note  to  your  academic  advisor,  and  a  referral  to  the  Office  of  Student  Conduct.  Any  repeat  instance  will  automa7cally  lead  to  a  failing  grade  in  the  course.    

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 23: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Teaching  Assistants  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Mohammad    Fereydounian  (Head  TA)    

Haoxian  Chen   Jane  Lee  

Simeng  Sun  Arnab  Sarker  Rohan  Menezes  

Brandon  Lin  

Edward  (Barry)    PlunkeP  

Page 24: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Reaching  Out  to  Us  

•  Office  Hours:  –  Times/loca7ons  coming  soon  (check  course  website)    

•  Piazza:  –  Use  for  all  course-­‐related  communica7on  with  us  (no  email;  can  post  privately/anonymously  on  Piazza  if  desired)    

–  Use  for  ques7ons  that  can  be  answered  in  <5  mins,  and  for  discussions  amongst  yourselves;  help  each  other  out!  (good  answers  count  toward  class  par7cipa7on)  

•  Canvas:  –  Use  for  problem  set/project  submissions  and  grades  only.  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019  

Page 25: Introduc7on$&$Overview$ · CIS$520:$Machine$Learning$ $ Introduc7on$&$Overview$ $ Shivani$Agarwal$ $ Departmentof$Computer$&$Informaon$Science$ University$of$Pennsylvania $ $ Spring2019$

Let’s  Get  Started!  

Shivani  Agarwal                    CIS  520:  Machine  Learning                                                          Spring  2019