San Jose State University
Department of Computer Science
CS 185C, Introduction to Machine Learning with Applications in Information Security, Fall 2018
- Course and Contact information
- Instructor: Mark Stamp
- Office Location: MH 216
- Telephone: 408-924-5094
- Email: firstname.lastname@example.org
- Office hours: Wednesday, 10:00am - noon
- Class Days/Times: Tuesday & Thursday, 10:30am - noon
- Classroom: MH 233
- Prerequisites: TBD
- Note: This class, in conjunction with CS 166, can be used to
satisfy the "deep course" requirement. Also, this course has been approved
as a graduate elective.
- Course Description
- Topics in machine learning.
The following machine learning techniques
are covered in detail: Hidden Markov Models (HMM),
Profile Hidden Markov Models (PHMM),
Principal Component Analysis (PCA),
Support Vector Machines (SVM),
and clustering. Illustrative applications of
each of these major topics are provided, with most
of the applications drawn from the field of information security.
In addition, the course will include an overview of each of
the following topics:
k-Nearest Neighbor, Neural Networks, Boosting/AdaBoost,
Random Forests, Linear Discriminant Analysis, Naive Bayes,
Regression Analysis, Conditional Random Fields, and Data Analysis.
- Learning Outcomes
- The focus of this course will be machine learning,
with illustrative applications drawn primarily from
the field of information security.
After completing this course
students should have a working knowledge
of a wide variety of machine learning
topics, and have a good understanding of
how to apply such techniques to real-world problems.
- Required Texts/Readings
- The primary text will be
Learning with Applications in Information Security
by Mark Stamp, published by Chapman Hall/CRC in 2017. This book
covers several machine learning techniques in detail, and includes a large
number of illustrative applications. Many of the applications
are from information security, including a variety of
topics related to malware, intrusion detection (IDS), spam,
and cryptanalysis, among others.
- Additional relevant material:
- PowerPoint slides at http://www.cs.sjsu.edu/~stamp/ML/powerpoint
- Current semester lecture videos are available at
If you are asked to login to access the videos,
both the username and password are "infosec".
Note: The instructor hereby gives students permission
to record his lectures (audio and/or video). At least with respect
to this class, your instructor has nothing to hide.
- Class-related discussion will be posted
on Piazza at
You are strongly encouraged to participate by
asking questions, as well as by responding
to questions that other students ask. At the start of the
semester, you should receive an email asking you to join
this discussion group—if not, contact your instructor via email.
- The applications parts of this course are essentially self-contained,
but for additional background information on the security-related topics, the
following resources are recommended.
- Computer Viruses and Malware, John Aycock, Springer 2006. Many of
the applications we discuss are related to malware. Aycock's book is easy
to read and in spite of being fairly old, it provides a good foundation for
- Information Security: Principles and Practice, Mark Stamp,
If you have not taken CS 265, you should do so. You can refer to this fine
book if you have questions about security-related topics during this course.
- Open Malware
includes a large collection of samples of live malware.
- VX Heavens
is a source for "hacker" type of information on viruses.
Malware samples are also available.
of Computer Virology and Hacking Techniques
is a journal for malware-specific research papers.
There are also several good conferences
that focus on malware and/or machine learning
applications in information security.
masters project reports (at
Most of these projects involve applications of machine learning
to malware or other topics in information security.
- Course Requirements and Assignments
- Grading Policy
- Test 1, 100 points. Date:
Tuesday, October 30.
- Homework, quizzes, class participation and other work as
assigned, 100 points. A subset of the assigned problems
will be graded.
- Machine Learning Project,
100 points. You must send your project proposal to me (via email) by
Monday, September 24.
A written project report is due
Tuesday, November 27.
Note that a written report is required, and oral presentations will
begin on (or shortly after) the report due date.
- Final, 100 points.
Date: Wednesday, December 12
at 9:45 am.
The official finals schedule is here:
- Semester grade will be computed as a weighted average of the major scores listed above.
- No make-up tests or quizzes will be given
and no late homework or project (or other work)
will be accepted.
- Grading Scale:
|92 and above||A
|90 - 91||A-
|88 - 89||B+
|82 - 87||B
|80 - 81||B-
|78 - 79||C+
|72 - 77||C
|70 - 71||C-
|68 - 69||D+
|62 - 67||D
|60 - 61||D-
|59 and below||F
- Note that "All students have the right, within a reasonable time, to know their
academic scores, to review their grade-dependent work, and to be provided with
explanations for the determination of their course grades." See University Policy F13-1 at http://www.sjsu.edu/senate/docs/F13-1.pdf for more details.
- Guest Lectures
- Sravani Yajamanam, Automated Driving Research Engineer at Ford Motor Company
- Date: November 15
- Time: 10:30am
- Location: MH 233
- Topic: Deep Learning & Big Data Analytics
Typically in machine learning, we get a single number representing a model
(like 91% accuracy) but we don't have a good representation of the data that
failed. For example, for a traffic sign classification problem, how many times
was a 'do not enter' sign misclassified as a stop sign? In other words, how can
we evaluate the performance of deep learning models? How can we pull interesting
statistics about large datasets and visualize them efficiently? My summer
internship project at Ford tackled this problem of evaluating the performance
of deep learning models by using big data analytics.
- Paco Guzman, Facebook
- Date: November 20
- Time: 10:30am
- Location: MH 233
- Topic: TBD
- Abstract: TBD
- Classroom Protocol
- Keys to success:
Do the homework, complete a good project, and attend class
- Wireless laptop is required. Your laptop
must remain closed (preferably in your backpack and, in any case, not
on your desk) until I inform you that it is needed for a
- Cheating will not be tolerated,
but working together is encouraged
- Student must be respectful of the instructor and other students. For example,
- No disruptive or annoying talking
- Turn off cell phones
- Class begins on time
- Class is not over until I say it's over
- Valid picture ID required at all times
- The last day to drop without a "W" grade is
Friday, August 31,
and the last day to add is
Monday, September 10
- University Policies
- Office of Graduate and Undergraduate Programs maintains
university-wide policy information relevant to all courses,
such as academic integrity, accommodations, etc. You may find all syllabus
related University Policies and resources information listed on GUP’s
Syllabus Information web page