New Jersey Institute of Technology
Ying Wu College of Computing
Computer Science Department
Machine Learning
Code: CS
675-1J1
Semester: Fall 2020
Time: Monday
6:00-8:50pm
Mode: Convergent Learning
Location: 101 Hudson Street, Suite 3610,
Jersey City
The course is also broadcasted online. Details can be found on Canvas.
Instructor:
Ioannis Koutis
Webpage: https://web.njit.edu/~ikoutis/
Office: GITC
4314 (Newark) and Jersey City
Email: ikoutis+cs675@njit.edu
Office Hours: Tuesday
4:45-5:45 at Jersey City and by appointment (face-to-face or remotely). Office
hours will not be held on official University breaks and closures. In case of
an unlikely office hour cancellation, a notice will be posted on Canvas, as
soon in advance as possible.
Teaching
Assistant: TBA
Email: TBA
Course Management
All course activities
will be managed on Canvas.
We
will use Canvas to have informal and friendly conversations about topics
related to the course, including assignments, problems, ideas, etc. You are
encouraged to participate. Please be absolutely assured that any question or
idea is welcome.
Course Description
Machine
Learning develops computer programs that can improve their performance by
tapping into existing data and taking feedback from the environment. Systems
based on ML have already exceeded human performance in several tasks, including
image medical image classification and games like Chess and Go. ML has also
made leaps in even more complicated tasks, like Natural Language Processing or
self-driving vehicles, and it has even produced art that imitates the style of
human artists! This course offers an intense introduction to the fundamental ML
concepts and algorithms that constitute the core of these spectacular
developments. It takes you on a tour from the basic mathematical notions and
algorithms to some of the recent developments, e.g. Deep Networks or Recurrent
Networks. You will gain exposure to cutting-edge ML development tools such as
Scikit-learn and TensorFlow via hands-on assignments and projects that instill
a working and immediately applicable knowledge of ML methods and will prepare
you for more advanced ML courses.
Alternative Description (NJIT Catalog):
This course is an introduction to machine learning and
contains both theory and applications. Students will get exposure to a broad
range of machine learning methods and hands on practice on real data. Topics
include Bayesian classification, perceptron, neural networks, logistic
regression, support vector machines, decision trees, random forests, boosting,
dimensionality reduction, unsupervised learning, regression, and learning new
feature spaces.
Prerequisites: : Basic
probability, linear algebra, computer programming, and graduate or
undergraduate senior standing, or approval of instructor.
Tentative Schedule
Week 1. Introduction, Data Representations,
Perceptron, Linear Separability, Decision Boundaries
Week 2. Adaptive Linear Neuron (Adaline), Logistic Regression, Gradient
Descent, General ML Principles, Regularization
Week 3. Support Vector Machines, Decision Trees, Random Forests, Feature
Selection
Week 4. K-Nearest Neighbors, Dimensionality Reduction, Kernel Methods
Week 5. Unsupervised Learning, Clustering Analysis
Week 6. Ensemble Methods
Week 7. Introduction to Neural Networks and scikit-learn MLPs
Week 8. Autoencoders and Continuous Regression
Week 9. TensorFlow
Week 10. TensorFlow and Convolutional Neural Networks
Week 11. Recurrent Neural Networks for Sequential Data, Elements of NLP
Week 12: Reinforcement Learning
Week 13: Bayesian Learning, Expectation Maximization
Week 14: Supplemental Topics and Review or Project Presentations
Textbook
Python
Machine Learning: Machine Learning and Deep Learning with Python, scikit-learn,
and TensorFlow 2, 3rd edition
S. Raschka, V. Mirjalili, Packt Publishing, ISBN-10: 1789955750
(recommended, but not required)
Alternative Books:
Machine Learning, An algorithmic Perspective, 2nd
Edition
Stephen Marsland
The Elements of Statistical Learning, 2nd Edition
T. Hastie, R. Tibshirani, J. Friedman
Additional material will be posted on Canvas.
Coursework and Evaluation
Assignments [25%].
There will be several hands-on assignments, of equal grading weight.
Project [20%]. Project details will be posted in the 5th week of the
course.
Midterm [20%].
Final Exam [25%]. Cumulative.
Pop Quizzes [5%]. There may be a few (online) pop quizzes, that will be
performed in the beginning of the second hour of the lecture (7:30-7:40).
Depending on the number of these quizzes, part of the 5% may be distributed to
another grading item.
Class
Participation [5%].
Letter
Grades. The conversion of raw grades
will be based on grouping the raw grades into clusters and then assigning a letter
grade to each cluster. The letter grade assignment will be in accordance to the
graduate grade legend (https://www.njit.edu/registrar/policies/grading.php).
Exams:
Both exams will be given as Canvas quizzes with browser lockdown and webcam.
During the exam you are allowed to use paper notes and book printouts, but you
should avoid using a second display.
Lateness Policy. 2% will be
subtracted from the delayed assignment grade for each hour of delay.
Important Dates
September 8: Class begins. Notice, the day is
Tuesday!
October 12: Midterm Exam (6:00-7:30pm)
December 2: Project Due
TBA by registrar: Final Exam (most probably December 21, at class time)
FYI: The NJIT academic calendar for Fall
2020.
History of minor syllabus
revisions:
09/01/20: current
Course Policies
Bring Your Own Device
Students are expected to
bring with them a reasonably capable computer to be used for pop quizzes and
other in-class exercises.
Email
Use of your NJIT email is strongly encouraged.
Mobile Devices
Let's try and be reasonable and respectful of other students.
Grade Corrections
Check the grades in course work and report errors promptly. Please try and
resolve any issue within one week of the grade notification.
Absenteeism
If you miss a class, it’s up to you to make up for lost time. Missing two
exams leads to an automatic F in the course. If you miss one exam you must contact the Dean of Students (DOS)
within 2 working days from the day the reason for the absence is lifted with
all necessary documentation. If DOS approves, your missing exam grade will be
set equal to the average of the non-missing exam grades.
Incomplete
A grade of I (incomplete) is given in rare cases where work cannot be completed
during the semester due to documented long-term illness or unexpected absence
for other serious reasons. A student needs to be in good standing (i.e. passing
the course before the absence) and receives a provisional I if there is no time
to make up for the documented lost time; a letter (or email) with a timeline of
what is needed to be done will be sent to the student. Note that for most cases
an I would be resolved within few days, not months and not the following
semester! Not showing up in the final will probably get you an F rather than an
I.
Collaboration and External Resources for
Assignments
Some homework problems will be challenging. You are advised to first try and
solve all the problems on your own.
For problems that persist you are welcome to talk to the course assistant or
the instructor. You are also allowed to collaborate with your classmates and
search for solutions online. But you should use such solutions only if you
understand them completely (admitting that you don’t understand something is
way better than copying things you don’t understand). Also make sure to give
the appropriate credit and citation.
Academic Integrity
Academic Integrity is the cornerstone of
higher education and is central to the ideals of this course and the
university. Cheating is strictly prohibited and devalues the degree that you
are working on. As a member of the NJIT community, it is your responsibility to
protect your educational investment by knowing and following the academic code
of integrity policy that is found at:
http://www5.njit.edu/policies/
Please note that it is my professional
obligation and responsibility to report any academic misconduct to the Dean of
Students Office. Any student found
in violation of the code by cheating, plagiarizing or using any online software
inappropriately will result in disciplinary action. This may include a failing
grade of F, and/or suspension or dismissal from the university. If you have any questions about the code of Academic Integrity,
please contact the Dean of Students Office at dos@njit.edu