Main Page

From Computational Statistics Course Wiki
Jump to: navigation, search

Statistical and Discrete Methods for Scientific Computing

NOTE: Sign up now here for your final oral exam slots! The best times will disappear fast.

CSE383M (65280) and CS395T (53715), Spring 2014

Welcome to the course! The instructor is Professor William Press (Bill), and the TA is Jeff Hussmann (Jeff). We meet Mondays and Wednesdays, 1:30 - 3:00 p.m. in CBA 4.344 with Bill, and Fridays, 1:30 - 3:00 p.m. in CBA 4.348 with Jeff. The course is aimed at first or second year graduate students, especially in the CSEM, CS, and ECE programs, but others are welcome. You'll need math at the level of at least 2nd year calculus, plus linear algebra, plus either more continuous math (e.g., CSEM students) or more discrete math (e.g., CS and ECE students). You'll also need to be able to program in some known computer language.

Mechanics of the Course

The last two years, we have tried the experiment of a "flipped" course. This has worked so well that we are doing this again this year. "Flipped" means that the lectures are all on the web as recorded webcasts. You must watch the assigned webcasts before the class for which they are scheduled; maybe watch them more than once if there are parts that you don't easily understand. Then, you will be ready for the active learning that we do in class. The class activities will not "cover the material". Rather, class is supposed to be for "aha moments" and for "fixing" the material in your learning memory. We'll thus do various kinds of "active learning" activities that will test and improve your understanding of the material in the lecture. Such in-class activities, often done in randomized groups of two or three, may include

  • group computer programming exercises
  • group working of problems
  • group writing assignments
  • discussing concepts (and communicating ideas back to the whole class)
  • "quiz show" style activities
  • short surprise quizzes (generally at the beginning of class -- no makeups allowed)
  • whatever else we all think of

Problems for Each Segment

Every lecture segment home page has one or two relatively easy "skill" problems. You should work these after watching the segment, before class. (You might be asked to discuss your solution with your small group in class.) Also on the segment's page are one or two concept thought problems. One or another of these will sometimes be the basis of in-class activities, so you might want to think about them before class.

Student Wiki Pages

Every student will have a wiki page (and as many linked pages as you want). You can post your solutions to as many problems as you wish to your wiki page. You can do this either before the relevant class or afterwards. You can also make up, and solve, additional problems. Problems won't be individually graded. However, at the end of the course, the completeness and quality of you wiki page(s) will be a part of your course grade. Your wiki page can include discussion of the thought problems, as well as the skill problems.

You can also post signed comments on any other student's wiki pages. To the extent that these are generally helpful, they will add credit to your reputation and for your grade.

Student Pages

Laptops or Tablets

You must bring your laptop computer or full-sized tablet to every class, so that you can (i) look things up during group discussions or problem sessions and (ii) do in-class programming exercises. You can program in any language you want. For Python, which we recommend as the best choice for this course, you can either install it on your machine, or else use the IPython notebook server described in class. The course will include several lectures of Python workshop by Jeff.

If you instead want to use MATLAB or Mathematica, that is fine, but please be sure that it is installed on your computer before the first class. (The MATLAB Student Edition is a real bargain.) For C, C++, Java, etc., please be sure that you have a fully working environment for compiling and running small pieces of code.

Course Requirements and Grading

Grades will be based on these factors

  • in-class attendance and participation
  • an in-class midterm exam
  • completeness and quality of your individual wiki page(s)
  • relevance and usefulness of your comments on other people's wiki pages (or on the main wiki)
  • an individual 30-minute final oral exam

In previous years there was a term project, but not this year. Your working the problems and posting solutions on your wiki page is this year's substitute.

Click image to see a legible version.

What is Active Learning?

Much research shows that lecture courses, where students listen passively as the instructor talks, are inefficient ways to learn. What works is so-called active learning, a broad term that, for us, basically means that class time is too valuable to waste on lectures. (See image at right.)

The lectures are all recorded as webcasts, but webcasts are not active learning. However, they are a starting point as a "linear" introduction to the material.

Feedback

What has worked well in class so far? What hasn't worked? How could things be improved? Please leave feedback.

Resources and Links

There is no textbook for the course. A list of recommended supplementary books is here.

Some resources for learning Python can be found here.

Some MATLAB resources can be found here.

Webcast Lecture Segments (Opinionated Lessons in Statistics)

All of the lectures are in the form of webcasts, divided into segments of about 15-30 minutes each (occasionally a bit longer). Each segment, has a wiki page, page links below. You can view the lecture on its wiki page, which also has additional stuff about the segment (including the skill and thought problems, or by clicking directly to YouTube, where they are all on Bill's "Opinionated Lessons" channel.

Watch segments BEFORE class on the indicated dates:
Mon Jan 13 First Day of Class (no segment due)
Wed Jan 15 Segment 1. Let's Talk about Probability (or YouTube)
Fri Jan 17 Python Set-up Tutorial and Workshop (no segment due)
Mon Jan 20 Martin Luther King Day HOLIDAY (no segment due)
Wed Jan 22 Segment 2. Bayes (or YouTube)
Fri Jan 24 Segment 3. Monty Hall (or YouTube)
Mon Jan 27 Segment 4. The Jailer's Tip (or YouTube)
Wed Jan 29 Segment 5. Bernoulli Trials (or YouTube)
Fri Jan 31 Segment 6. The Towne Family Tree (or YouTube)
Mon Feb 3 Segment 7. Central Tendency and Moments (or YouTube)
Wed Feb 5 Segment 8. Some Standard Distributions (or YouTube)
Fri Feb 7 Segment 9. Characteristic Functions (or YouTube)
Mon Feb 10 Segment 10. The Central Limit Theorem (or YouTube)
Wed Feb 12 Segment 11. Random Deviates (or YouTube)
Fri Feb 14 Segment 12. P-Value Tests (or YouTube)
Mon Feb 17 Segment 13. The Yeast Genome (or YouTube)
Wed Feb 19 Segment 14. Bayesian Criticism of P-Values (or YouTube)
Fri Feb 21 Segment 16. Multiple Hypotheses (or YouTube) [note order!]
Mon Feb 24 Segment 15. The Towne Family - Again (or YouTube) [note order!]
Wed Feb 26 Segment 17. The Multivariate Normal Distribution (or YouTube)
Fri Feb 28 Review Session for Mid-Term Exam (no new segment due)

Monday, March 3. MIDTERM EXAM

(Exam)   (Bill's solutions)    (Histogram of grades)

Wed Mar 5 Segment 18. The Correlation Matrix (or YouTube)
Fri Mar 7 Segment 19. The Chi Square Statistic (or YouTube)

Monday, March 10 through Friday, March 14: SPRING BREAK

Watch segments BEFORE class on the indicated dates:
Mon Mar 17 Segment 20. Nonlinear Least Squares Fitting (or YouTube)
Wed Mar 19 Segment 21. Marginalize or Condition Uninteresting Fitted Parameters (or YouTube)
Fri Mar 21 Segment 22. Uncertainty of Derived Parameters (or YouTube)
Mon Mar 24 Segment 23. Bootstrap Estimation of Uncertainty (or YouTube)
Wed Mar 26 Segment 24. Goodness of Fit (or YouTube)
Fri Mar 28 Segment 27. Mixture Models (or YouTube)
Mon Mar 31 Segment 28. Gaussian Mixture Models in 1-D (or YouTube)
Wed Apr 2 Segment 29. GMMs in N-Dimensions (or YouTube)
Fri Apr 4 Segment 30. Expectation Maximization (EM) Methods (or YouTube)
Mon Apr 7 Segment 31. A Tale of Model Selection (or YouTube)
Wed Apr 9 Segment 32. Contingency Tables: A First Look (or YouTube)
Fri Apr 11 Segment 33. Contingency Table Protocols and Exact Fisher Test (or You Tube)
Mon Apr 14 Segment 34. Permutation Tests (or YouTube)
Wed Apr 16 Segment 37. A Few Bits of Information Theory (or YouTube)
Fri Apr 18 Segment 38. Mutual Information (or YouTube)
Mon Apr 21 Segment 39. MCMC and Gibbs Sampling (or YouTube)
Wed Apr 23 Segment 40. Markov Chain Monte Carlo, Example 1 (or YouTube)
Fri Apr 25 Segment 41. Markov Chain Monte Carlo, Example 2 (or YouTube)
Mon Apr 28 Segment 47. Low-Rank Approximation of Data (or YouTube)
Wed Apr 30 Segment 48. Principal Component Analysis (PCA) (or YouTube)
Fri May 2 Review Session for Oral Exams

Monday, May 5 and Tuesday, May 6: ORAL FINAL EXAMS

Extra Credit Segments (segment number indicates intended sequence)

Segment 25. Fitting Models to Counts (or YouTube)
Segment 26. The Poisson Count Pitfall (or YouTube)
Segment 35. Ordinal vs. Nominal Contingency Tables (or YouTube)
Segment 36. Contingency Tables Have Nuisance Parameters (or YouTube)
Segment 49. Eigenthingies and Main Effects (or YouTube)

Segments with Slides But Not Yet Recorded

(links are to PDF files)

Segment 15.5. Poisson Processes and Order Statistics
Segment 42. Wiener Filtering
Segment 43. The IRE Lady
Segment 44. Wavelets
Segment 45. Laplace Interpolation
Segment 46. Interpolation On Scattered Data
Segment 50. Binary Classifiers
Segment 51. Hierarchical Classification
Segment 52. Dynamic Programming

Team Randomizer

Link to the team randomizer