NOTE: this website is out of date. This is the course web site from a past quarter, Autumn 2019. If you are looking for winter quarter's website, you should visit https://web.stanford.edu/class/archive/cs/cs109/cs109.1204/ instead. Please be advised that courses' policies change with each new quarter and instructor, and any information on this out-of-date page may not apply to you.

EXAMS

Midterm
Tuesday, October 29
7:00PM-9:00PM PDT
Hewlett 200

Final
Wednesday, December 11
3:30PM-6:30PM PST
CEMEX Auditorium

TEACHING TEAM

cs109 @ cs.stanford.edu

INSTRUCTOR

Lisa Yan
yanlisa @ stanford
Gates 187
W 3:00-5:00pm

ANNOUNCEMENTS

Contest Results
2019120815

We received 29 contest entries this quarter and were impressed by the creativity and probability know-how the entries showed!

Winner: Robert Thompson, A Better Way to Reform the Electoral College

Runner Up: Serena Jing, Goodbye Mr. Chips: a Look at Surname Extinction

Runner Up: Callum Burgess, Using Statistics to Drum (Video)

Final Exam
2019120211

The CS109 final is coming up: it is Wednesday, December 11, 3:30PM-6:30PM PST, in CEMEX Auditorium. The final is a closed book, closed calculator/computer exam; you are, however, allowed to bring six 8.5" x 11" pages (front and back) of notes in the exam, formatted in any way you like. The last page of the exam will be a Stanford Normal Table, in case you need it.

The best way to study is by working through the practice exams.

Update (12/13): Solutions to the final are located here: Final solutions.

Final PSet
2019111519

The final problem set is now available. You will implement two machine learning algorithms, Naive Bayes and Logistic Regression. You will then use these algorithms to make predictions on heart tomography, Netflix movies and ancestry.

Note: We will cover neural nets as part of our intro to deep learning lecture this week, so you can (and should) feel free to skip problem 3 for now.

PSet #5 is out
2019110710

 The penultimate problem set is now available! The problem set includes evaluating peer grading, a/b testing, general inference in WebMD. This problem set has only 9 questions. Celebrate!
Central Limit Theorem
2019110710

The CLT says that if $Y$ is the sum of $n$ iid random variables (which all have expectation $\mu$ and variance $\sigma^2$) then:

$Y \sim N(n\mu, n\sigma^2)$

The proof is beyond the scope of the class. A friendly CS109 student from a few quarters ago (Sophia Furfine) made a video of the proof in case you are curious!

2019110610

We have released a short list of anonymous, suggested responses for all previous Concept Checks. These entries were selected anonymously from your answers this quarter, so props if you see your response listed! Go ahead and check out the link here: Community Answers to Concept Checks (requires Stanford login + Stanford Google login).

As a side note, there are many other possible answers for all of these questions! These are just example answers that will help you understand the material more.

CS109 Contest
2019110413

This quarter we are going to hold the fourth ever Stanford Probability for Computer Scientists Contest. The contest is completely optional. See the contest handout for more details.

2019102910

Hope everyone enjoyed the midterm! The Week 5 Concept Check deadline has been pushed back to Wednesday, October 30th, at 11:59PM.

PSet #4 is out
2019102122

Problem Set #4 has been released! It has you predict users based on biometric keystrokes. The pset clearly delineates the questions that you should do before the midterm :-).

Midterm Next Tuesday
2019101812

The CS109 midterm is coming up: it is Tuesday, October 29, 7:00PM-9:00PM PDT, in Hewlett 200. The midterm is a closed book, closed calculator/computer exam; you are, however, allowed to bring three 8.5" x 11" pages (front and back) of notes in the exam, formatted in any way you like. The last page of the exam will be a Stanford Normal Table, in case you need it.

The best way to study is by working through the practice exams and section problems.

Review session: Julie, one of our TAs, will be hosting a review session Saturday, October 26, 10:00AM-12:00PM PDT in Shiram 104. This session will not be recorded, but all materials will be posted on the exam practice website afterwards.

The Week 5 concept check will be due on Wednesday, October 30th, 1pm, instead of the normal Tuesday deadline. The Week 4 and Week 6 concept checks will still be due Tuesday, October 22nd, and Tuesday, November 5th, respectively.

Alternate midterm assignments (and OAE) will be finalized in the coming days; look out for an email with your specific logistics. If you requested an alternate midterm and have not received your information by Friday, October 25th, please email Noah (narthurs@).

PSet #3 is out
2019101412

Problem Set #3 has been released! It uses real probability density functions from the IPCC Climate Change report, and has you analyze a bloom filter (a probabilistic datastructure).

PSet #2 is out
2019100413

Problem Set #2 has been released! Calculate the updated belief of the location of a cell phone and hypothesize the genetic relationship between bats and whether they carry Ebola. Here is a Latex template for pset 2.

Complete Weekly Concept Checks!
2019092609

In addition to your Section preferences, you should be filling out the Weekly Concept Checks. Please make sure you finish the Week 1 Concept check by Tuesday, October 1, at 1:00PM PDT.

Python Tutorial this Friday
2019092609

Update (9/28/19): Session slides and recording are now up!

For those of you interested in learning/reviewing Python 3, Sonja will be giving a Python tutorial on Friday, September 27, 3:30-4:20pm in Hewlett 102. We will try our best to record this session. We recommend looking at the Jupyter notebook beforehand. If you need help getting set up, this Piazza post should be a good starting point.

2019092515

Update (9/30/19): Section assignments have been released. If you did not receive an email, please contact the staff mailing list. For any other section scheduling questions, please fill out the Late & Swap form ASAP. Section starts this week.

Once a week you are going to meet in a small group section. We are going to find the best weekly time for everyone. Section signups will close on Saturday, September 28th at 11:59pm. Preferences are not first come first serve. For more information, visit the Section Attendance page.

PSet #1 is out
2019092501

Problem Set #1 has been released! It is due next Friday, October 4th at 1:00pm. Submission will be via Gradescope with entry code M7B45K. Office hours will start tomorrow (Thursday), and the office hours calendar will have times and locations.

If you're new to Gradescope, you can join the class by going to https://gradescope.com/ and clicking the button in the top right marked "Sign Up." Select "Student," then enter the entry code, your full name, email address, and 8-digit student id.

You are encouraged to write up your problem sets using LaTeX. Templates for each Problem Set are located on their respective webpage. See this intro to LaTeX, and the LaTeX code used to generate it. Though you may install LaTeX, it is often much easier to use an online LaTeX editor. A great option is: overleaf.com.

What is CS109?
2019092113

We put together some handouts to help you understand where we are going to go in CS109 and how we plan to get there.

The Administrivia handout has details on course logistics. Read this to get a sense for what CS109 is going to entail.

The Course Schedule page shows you the topics that we are going to cover in CS109 and the corresponding readings. We will also post materials from lecture on the schedule page.

The Staff / Office Hours page has contact information for TAs and the office hour calendar. Office hours will start Thursday, September 26.

Once the quarter starts, you will need to sign up for a weekly 50-minute discussion section. Details on how to sign up for section will be provided during the first week of class.

Welcome
2019092112

Welcome to CS109! We are looking forward to a fun quarter. Class starts Monday, September 23, at 1:30pm in Cubberley Auditorium.

## Schedule

Week Monday Wednesday Friday
1

Sep 23

1: Counting

Sep 25

2: Permutations and Combinations

Out: PSet #1

Sep 27

3: Axioms of Probability

2

Sep 30

4: Conditional Probability and Bayes

Oct 2

5: Independence

Oct 4

6: Random Variables and Expectation

Due: PSet #1
Out: PSet #2

3

Oct 7

7: Variance, Bernoulli, Binomial

Oct 9

8: Poisson and More

Oct 11

9: Continuous Random Variables

4

Oct 14

10: The Normal Distribution

Due: PSet #2
Out: PSet #3

Oct 16

11: Joint Distributions

Oct 18

12: Continuous Joint Distributions

5

Oct 21

13: Independent Random Variables

Out: PSet #4

Oct 23

14: Conditional Distributions

Due: PSet #3

Oct 25

15: Correlation and Covariance

6

Oct 28

16: Great Expectations

Midterm: Tue Oct 29th, 7:00-9:00pm

Oct 30

17: Beta

Nov 1

18: Central Limit Theorem

7

Nov 4

19: Sampling/Bootstrapping

Nov 6

20: General Inference

Due: PSet #4
Out: PSet #5

Nov 8

21: Parameters and MLE

8

Nov 11

Nov 13

23: Maximum A Posteriori

Nov 15

24: MAP + Naive Bayes

Due: PSet #5
Out: PSet #6

9

Nov 18

25: Naive Bayes + Logistic Regression

Nov 20

26: Logistic Regression + Deep Learning

Nov 22

27: Deep Learning II
10

Nov 25

Thanksgiving break
No Class

Nov 27

Thanksgiving break
No Class

Nov 29

Thanksgiving break
No Class
11

Dec 2

28: CS109 Review

Dec 4

29: Beyond CS109

Our last class
Due: PSet #6

Dec 6