CSCI4155/CSCI6505 (2016)

From Hallab
Revision as of 14:02, 2 December 2016 by Tt (talk | contribs) (→‎Further resources)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Machine Learning 2016

Instructors

Prof: Dr. Thomas Trappenberg (tt@cs.dal.ca)

Office: Room 4216 in Mona Campbell Building

TA: TBA

Office hours: By appointment (write email)

Course Description

This course is an introduction to machine learning, including their practical use and theoretical foundation. This year we will emphasize deep learning and will be using Python with advanced implementations such as scikit-learn and Google's Tensorflow. We will start by showing how to apply pre-programmed algorithms in Python to get some practical experience before unpacking some of the theory behind them. The course includes introductory reviews of scientific programming with Python. The course requires knowledge of mathematical concepts such as calculus and linear algebra as well as the formalism of describing uncertainty with probability theory.

Course Textbook

There are many good textbook on machine learning, some which are listed below. We will not follow a single textbook but I will provide lecture notes for most of the material. Recommended textbooks for further studies are:

  • Kevin Murphy; Machine Learning: A Probabilistic Perspective; MIT Press
  • Ethem Alpaydim; Introduction to Machine Learning; MIT Press
  • Trevor Hastie, Robert Tibshirani, and Jerome Friedman; The Elements of Statistical Learning: Data Mining, Inference, and Prediction; Springer

Assignments

Assignments are posted in the schedule below. Late assignments are not excepted.

Grading Scheme

Assignments 50%, Midterm 20%, Final 30%. Some of the assignment are different between the ugrad and grad version. Some of the assignments may be group work, but you have to pass all individual components in order to pass the course.

Background resources

The course assumes background in math, probability theory and programming. Some reviews will be included in the lectures to ensure we are on the same page, though if necessary you need to study this further on your own. As an example of the assumed level of background and to prepare if necessary l recommend the following sections from Khan academy:

The Python environment is installed on CS computers and we will provide a VirtualBox installation. This will be somewhat experimental and you might need to port some stuff to other installations. We provide help through TA support and the help desk, but making sure that the necessary tools are available is considered the responsibility of the students in this advanced CS class. In general, we will be using Python 3 through the Spyder IDE with scientific packages such as NumPy and some specific machine learning such as

and maybe

There are many different levels of tutorials available at https://wiki.python.org/moin/BeginnersGuide/Programmers

A good overview of Machine learning to prepare for this course is http://www.cs.ubc.ca/~murphyk/MLbook/pml-intro-22may12.pdf. An older overview of machine learning from my perspective can be found at A Brief Introduction to Probabilistic Machine Learning and Its Relation to Neuroscience, in Growing Adaptive Machines, T. Kowaliw et al. (eds.), Studies in Computational Intelligence 557, DOI: 10.1007/978-3-642-55337-0_2, Springer


Schedule

The schedule below will be updated frequently with assignments, announcements and course material.

Date Content Reference Assignment
Sept 6 Intro 5414416a.pdf
Sept 7 Intro ML2016v21.pdf Install Python for next class
Sept 14 Python second chapter of ML2016v21.pdf A1: Exercise 1&2 on page 13. Send programs to dalhousieml2016@gmail.com with subject line A1. Due Monday Sep 19 before class.
Sept 19 Practical classification second chapter of ML2016v21.pdf A2
Sept 21 Probability refresher ML2016v32.pdf Prepare presentation for next week (max 5 min)
Sept 26 Presentations Remember to think about what chance is for your application
Sept 28 Probabilistic regression and Bayesian networks 4th chapter
Oct 3 MAP & ANN 1 5th chapter A3 train.txt
Oct 5 Probabilistic ANN
Oct 12 ANN tricks and filters A4
Oct 17 Convolutional deep networks www.tensorflow.org
Oct 19 Midterm A5
Oct 24 Deep networks with Tensorflow 6th chapter A5
Oct 26 Regularization, autoencoders 6th chapter
Oct 31 Generative models, Naive Bayes 7th chapter
Nov 2 unsupervised learning, expectation maximization 8th chapter A6
Nov 14 reinforcement learning 9th chapter RL1
Nov 21 reinforcement learning updated script 9th chapter and Minh etal. 2015 updated program RL1 and TmazeGridTF |A7

Further resources

We created an Oracle Virtual Machine (VirtualBox) for the programing environment in case you have difficulties with native installations (Windows) at http://subzero.cs.dal.ca:10571/downloads/4155.ova


Some useful websites to visualize http://cs231n.github.io/convolutional-networks/ and http://scs.ryerson.ca/~aharley/vis/conv/

DeepLearningBook.pdf.zip

Academic Integrity & Plagiarism

(Based on the sample statement provided at http://academicintegrity.dal.ca. Written by Dr. Alex Brodsky.)

Please familiarize yourself with the university policy on Intellectual Honesty. Every suspected case will be reported.

At Dalhousie University, we respect the values of academic integrity: honesty, trust, fairness, responsibility and respect. As a student, adherence to the values of academic integrity and related policies is a requirement of being part of the academic community at Dalhousie University.


What does academic integrity mean?

Academic integrity means being honest in the fulfillment of your academic responsibilities thus establishing mutual trust. Fairness is essential to the interactions of the academic community and is achieved through respect for the opinions and ideas of others. Violations of intellectual honesty are offensive to the entire academic community, not just to the individual faculty member and students in whose class an offence occurs. (see Intellectual Honesty section of University Calendar)


How can you achieve academic integrity?

• Make sure you understand Dalhousies policies on academic integrity.

• Give appropriate credit to the sources used in your assignment such as written or oral work, computer codes/programs, artistic or architectural works, scientific projects, performances, web page designs, graphical representations, diagrams, videos, and images. Use RefWorks to keep track of your research and edit and format bibliographies in the citation style required by the instructor (http://www.library.dal.ca/How/RefWorks)

• Do not download the work of another from the Internet and submit it as your own.

• Do not submit work that has been completed through collaboration or previously submitted for another assignment without permission from your instructor. • Do not write an examination or test for someone else.

• Do not falsify data or lab results.

These examples should be considered only as a guide and not an exhaustive list.


What will happen if an allegation of an academic offence is made against you?

I am required to report a suspected offence. The full process is outlined in the Discipline flow chart, which can be found at: http://academicintegrity.dal.ca/Files/AcademicDisciplineProcess.pdf and in- cludes the following:

1. Each Faculty has an Academic Integrity Officer (AIO) who receives allegations from instructors.

2. The AIO decides whether to proceed with the allegation and you will be notified of the process.

3. If the case proceeds, you will receive an INC (incomplete) grade until the matter is resolved.

4. If you are found guilty of an academic offence, a penalty will be assigned ranging from a warning to a suspension or expulsion from the University and can include a notation on your transcript, failure of the assignment or failure of the course. All penalties are academic in nature.


Where can you turn for help?

• If you are ever unsure about ANYTHING, contact myself.

• The Academic Integrity website (http://academicintegrity.dal.ca) has links to policies, defini tions, online tutorials, tips on citing and paraphrasing.

• The Writing Center provides assistance with proofreading, writing styles, citations.

• Dalhousie Libraries have workshops, online tutorials, citation guides, Assignment Calculator, Ref- Works, etc.

• The Dalhousie Student Advocacy Service assists students with academic appeals and student discipline procedures.

• The Senate Office provides links to a list of Academic Integrity Officers, discipline flow chart, and Senate Discipline Committee.

Request for special accommodation

Students may request accommodation as a result of barriers related to disability, religious obligation, or any characteristic under the Nova Scotia Human Rights Act. Students who require academic accommodation for either classroom participation or the writing of tests and exams should make their request to the Advising and Access Services Center (AASC) prior to or at the outset of the regular academic year. Please visit www.dal.ca/access for more information and to obtain the Request for Accommodation – Form A.

A note taker may be required as part of a student’s accommodation. There is an honorarium of $75/course/term (with some exceptions). If you are interested, please contact AASC at 494-2836 for more information.

Please note that your classroom may contain specialized accessible furniture and equipment. It is important that these items remain in the classroom, untouched, so that students who require their usage will be able to participate in the class.