|
CS 228
Structured Probabilistic Models: Principles and Techniques
Winter 2009
|
- 3/6/09: Problem Set #2 has been released and can be found at http://www.stanford.edu/class/cs228/materials.html. It is due on 3/17/09.
-
- 3/5/09: The reading assignment for week 9 is Chapter 16 (except 16.5) and Chapter 17 (except 17.3),
All reading assignments and instructions for the quiz can be found at
http://www.stanford.edu/class/cs228/assignments.html.
-
- 2/25/09: The reading assignment for week 8 is Chapter 14 and Chapter 15 (except 15.2.1.5).
All reading assignments and instructions for the quiz can be found at
http://www.stanford.edu/class/cs228/assignments.html.
- 2/21/09: Quiz 7 is now available at
https://www.stanford.edu/class/cs228/cgi-bin/quiztest.cgi. It is due on WEDNESDAY(2/15/2009) at 11:59PM.
Practice questions for quiz 7 have been posted here.
- 2/17/09: The reading assignment for week 7 is Section 13.3,
Chapter 14 (except 14.2.3, 14.2.4 and 14.2.6), and Section 15.1.
All reading assignments and instructions for the quiz can be found at
http://www.stanford.edu/class/cs228/assignments.html.
- 2/14/09: Quiz 6 is now available at
https://www.stanford.edu/class/cs228/cgi-bin/quiztest.cgi. It is due on WEDNESDAY(2/18/2009) at 11:59PM.
- 2/13/09: Practice questions for quiz 6 have been posted here.
- 2/6/09: Quiz 5 is now available at
https://www.stanford.edu/class/cs228/cgi-bin/quiztest.cgi. It is due on WEDNESDAY(2/11/2009) at 11:59PM.
Practice questions for quiz 5 have been posted here.
- 1/31/09: Quiz 4 and its practice question were updated.
- 1/30/09: Quiz 4 is now available at
https://www.stanford.edu/class/cs228/cgi-bin/quiztest.cgi. It is due on WEDNESDAY(2/4/2009) at 11:59PM.
Also practice questions for quiz 4 has been posted here.
This is completely optional, but hopefully can give some direction and focus to your reading and study with classmates.
- 1/27/09: The reading assignment for week 4 is Chapter 7, Section 8.3 (except 8.3.5) and Section 9.1, 9.2.
All reading assignments and instructions for the quiz can be found at
http://www.stanford.edu/class/cs228/assignments.html.
- 1/23/09: Practice questions for quiz 3 have been
posted here. This
is completely optional, but hopefully can give some direction and focus
to your reading and study with classmates.
- 1/22/09: Programming Assignment #1 has been released and can
be found at http://www.stanford.edu/class/cs228/materials.html. The
assignment is due on 2/5/09. Instructions are in the handout as well
as on the
submissions page.
- 1/20/09: The reading assignment for week 3 is Section 3.2.3 and
Chapter 6 without 6.1. All reading assignments and instructions for the quiz can be found at http://www.stanford.edu/class/cs228/assignments.html.
- 1/14/09: Practice questions for quiz 2 have been posted here. This is completely optional, but hopefully can give some direction and focus to your reading and study with classmates.
- 1/13/09: The reading assignment for week 2 is Chapters 4 and
5. All reading assignments and instructions for the quiz can be found at http://www.stanford.edu/class/cs228/assignments.html.
- 1/10/09: The first 3 chapters of the course reader have been
posted on Coursework, in the
"Materials" section of the CS228 Coursework page. This will allow you
all to finish the reading for the first quiz while waiting for the
bookstore to print more readers.
- 1/7/09: The reading assignment for week 1 is Chapters 2 and
3. This information, as well as future reading assignments and instructions for the quiz can be found at http://www.stanford.edu/class/cs228/assignments.html.
| 228 | Lecture: | TueThu 11:00-12:15PM, 3 units
|
| Location: | Gates B01
|
Useful Information and Handouts
- Teaching Staff & Office Hours
- Syllabus -- see Table of Contents of textbook (below)
- Assignment Schedule
- Handouts, Course Notes, Problem Sets
- Class Wiki (Book Corrections and Partner Matching)
- FAQ - problem set clarifications and other frequently asked questions
Course Description
The course covers modeling (knowledge representation) languages suitable
for dealing with an uncertain world. The focus is on probabilistic models,
including Bayesian networks, Markov networks, hidden Markov models, and influence
diagrams. The course will cover syntax, probabilistic semantics, inference,
and learning algorithms for these frameworks. It will also discuss recent
applications to domains such as speech recognition, medical diagnosis, data
mining, statistical text modeling, and robot motion planning.
Prerequisites
- Familiarity with the basic concepts of probability theory. (Stat116
is sufficient but not necessary.)
- Knowledge of basic computer science principles and skills at the level
of CS103.
- Mathematical ability and the ability to understand and analyze fairly
complicated algorithms and data structures. (CS161 is sufficient but not
necessary.)
Grading
CS228 will have nine weekly quizzes, three programming assignments,
and two problem sets. The programming assignments should be relatively short, about
30 to 50 lines of Matlab code. Problem sets must
be handed in to the submission box at
the
bottom of the Gates A wing (West) stairwell by the beginning of class on the day
they are due. Programming assignments must be submitted electronically
by 11:59 PM on the due date.
Recognizing
that students may face unusual circumstances and require some flexibility
in the course of the quarter, each student will have a total
of seven free late (calendar) days to use as s/he sees fit. Once
these late days are exhausted, any homework turned in late will be
penalized at the rate of 20% per late day (or fraction thereof). Under no
circumstances will a homework be accepted more
than five days after its due date. Furthermore, there
will be a maximum of two late days allowed for the last programming
assignment, and no late days allowed for the last problem set. Late
days are in 24 hour increments after the due date/time. Late homeworks should be turned in to the submission box.
You must write the time and date of submission on the
assignment. It is an honor code violation to write down the wrong time.
Programming assigments may be completed in teams of up to 2
students, will be implemented in MATLAB, and will typically require
around 30-50 lines of coding. We will provide starter code and
stubbed out functions that you will be implementing. The actual
coding will tend to be relatively straightforward, so even students
with little MATLAB experience should be able to complete the
assignments. The third programming assignment will include an
open-ended component that will allow you to implement a range of
strategies and experiments, though we will provide a list of
possibilities to help guide you. Late days also apply to programming
assignments, and will be applied to everyone in the team. If you
turn in a programming assignment one day late and you have no late
days left, you will be penalized 20% while your partner will be
deducted one late day.
There will be nine quizzes, which will be available online and due by
Monday night of each week. The quizzes are designed to keep all
students up with the material, allowing lectures to focus on the more
complex issues. The quizzes are open book, but each student must
take the quiz alone. Each student's top eight (highest scoring) quizzes
will count in the grade.
Quizzes will count for 32% of the final grade (4% each), problem
sets will count for 34%, and programming assignments will count for
34% (the third assignment will be worth more than the first two and
will have some extra credit associated with it). Some extra credit
may be awarded for class participation.
CS228 may be taken pass/no-credit. The requirements are as specified in the
university regulations. You take the class, and get a letter grade as per the
standard grading curve. Any letter grade higher than a C- is a passing grade,
otherwise not. As a side note, we recommend at least attempting most of the work,
since much of the learning occurs through solving homework problems.
Collaboration and Honor Code
- Students may discuss and work on problem sets in groups but must write
up their own solutions. When writing up the solutions, students should
write the names of people with whom they dicussed the assignment.
Also, when writing up the solutions students should not use notes from
group work. If we start receiving solution sets which are too similar,
we may reconsider this policy. Collaboration is not permitted on the
quizzes. Programming assignments may be completed in teams
of 2 students. Only one student needs to submit the code, but please
indicate clearly in the submission README who was on the team.
-
Important Note: As
we often reuse problem set questions from previous
years, we expect the students not to
copy, refer to, or look at the solutions in preparing their
answers. It will be considered an honor code violation to
intentionally refer to previous year's solutions. The purpose of problem
sets in this class is to help you think about the material, not just give
us the right answers. Moreover, some of the problems are taken from
recently published papers. Students are expected to come up with the
answers on their own, rather than extracting them from published
solutions. Therefore, please restrict attention to the books mentioned on
the webpage when solving problems on the problem set. If you do happen to
use other material, it must be acknowledged clearly with a citation on the
submitted solution.
We strongly encourage students to come to office hours. If that is not
possible, the questions should be sent to the staff list (cs228-qa@cs.stanford.edu), not
to the individual TAs and not to the general cs228 mailing list. If a homework
clarification is posted after a student has completed an assignment, the
student should contact us as soon as possible to check if the assumptions
s/he made are going to be accepted.
As explained above, late homeworks should be turned in to the submission box at the
bottom of
the Gates A wing (West) stairwell.
Please do not e-mail TAs with grading questions. If you want us to explain
why we took points off, you can talk to us after class or during office hours.
If you want a regrade, please write an explanation and hand the homework
and the explanation to the TAs during office hours or after class.
Occasionally we may need to broadcast a message to entire class. When you sign up on Axess, you will
automatically be subscribed to the CS228 Mailing List.
The primary reading materials will be the draft textbook by Professor
Koller, co-authored with Nir
Friedman. A reader with many of the chapters is available at the
Stanford Bookstore.
Optional books containing relevant material:
- Robert G. Cowell, A. Philip Dawid, Steffen L. Lauritzen, David
J. Spiegelhalter. Probabilistic Networks and Expert Systems Springer-Verlag,
1999.
- Judea Pearl. Probabilistic Reasoning in Intelligent Systems
Morgan Kaufmann, 1988.