Statistical and Discrete Methods for Scientific Computing
Thanks to you all for taking the course! This wiki is now in limbo, until I revise it for the Spring, 2014, offering of the course. (Then, I will remove this notice.) Cheers, Bill P.
CSE383M (65280) and CS395T (53715), Spring, 2013
Welcome to the course! The instructor is Professor William Press (Bill), and the TA is Jeff Hussmann (Jeff). We meet in CBA 4.344, Mondays and Wednesdays 1:30 - 3:00 pm with Bill, and Fridays, 1:30 - 3:00 p.m. 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
Last year, we tried the experiment of a "flipped" course. This 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 working of problems
- group writing assignments
- discussing concepts (and communicating ideas back to the whole class)
- "quiz show" style activities
- group computer programming exercises
- whatever else we all think of
Problems for Each Segment
Every lecture segment has attached (or will have by the time we get to it) 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 attached to each segment 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.
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 4 lectures of Python workshop.
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's year's substitute. We'll all find out if this works well!
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.
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.
Midterm Exam and Quizzes
Study Guide: Here are all the Calculate and Think About problems from Segments 1-18. These might be helpful in preparing for the midterm.
Here is a PDF scan of the exam and Bill's and Jeff's solutions.
Your scores are shown in the histogram on the right: Below 70 is NOT GOOD. Below 30 is NOT PASSING. For the rest of the semester we will introduce some graded surprise quizzes for the purpose of diluting the effect of the midterm.
The surprise quiz given on 4/1/13, along with Bill's solutions, is in this PDF file.
The surprise quiz given on 4/10/13, along with Bill's solutions, is in this PDF file. (Histogram of scores at right.)
Final Oral Exam (Interview)
The sign-up page is here. The interview will be 20 minutes in length. I'll ask you randomly generated questions of the form, "Tell me about..." from exactly this list. (I'm also allowed to ask follow-up questions to help you communicate your understanding of the concept.)
Be sure that you are prepared to say something sensible about every topic listed in the 2013 Concepts Study Page.
Lori has worked up her own study guide. This might be helpful to you in studying, but with two cautions: (1) I don't guarantee that Lori's answers are correct, and (2) if your answer sounds like it is simply memorized from Lori's guide, I am sure to ask you for a more detailed followup, like, "What does that mean?" or "Can you give me an example?".
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.
|Wed Jan 16||Segment 1. Let's Talk about Probability (or YouTube)|
|Fri Jan 18||Segment 2. Bayes (or YouTube)|
|Wed Jan 23||Segment 3. Monty Hall (or YouTube)|
|Fri Jan 25||Segment 4. The Jailer's Tip (or YouTube)|
|Mon Jan 28||Segment 5. Bernoulli Trials (or YouTube)|
|Wed Jan 30||Segment 6. The Towne Family Tree (or YouTube)|
|Fri Feb 1||Segment 7. Central Tendency and Moments (or YouTube)|
|Mon Feb 4||Segment 8. Some Standard Distributions (or YouTube)|
|Wed Feb 6||Segment 9. Characteristic Functions (or YouTube)|
|Fri Feb 8||Segment 10. The Central Limit Theorem (or YouTube)|
|Mon Feb 11||Python 1 - Introduction to Python|
|Wed Feb 13||Python 2 - Introduction to Python (continued)|
|Fri Feb 15||Python 3 - Retroactive tutorial|
|Mon Feb 18||Python 4 - Numpy and Matplotlib|
|Wed Feb 20||Segment 11. Random Deviates (or YouTube)|
|Fri Feb 22||Segment 12. P-Value Tests (or YouTube)|
|Mon Feb 25||Segment 13. The Yeast Genome (or YouTube)|
|Wed Feb 27||Segment 14. Bayesian Criticism of P-Values (or YouTube)|
|Fri Mar 1||Segment 16. Multiple Hypotheses (or YouTube) [note order!]|
|Mon Mar 4||Segment 15. The Towne Family - Again (or YouTube) [note order!]|
|Wed Mar 6||No class! Go to CS complex opening events and building tour instead!|
|Fri Mar 8||Segment 17. The Multivariate Normal Distribution (or YouTube)|
Spring Vacation Week (March 11-15)
Individual Oral Exams will be scheduled for May 6 and May 7
Signup link wasn't posted here, but at the top of the page.
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 37. A Few Bits of Information Theory (or YouTube)
Segment 38. Mutual Information (or YouTube)
Segment 49. Eigenthingies and Main Effects (or YouTube)
Segments with Slides But Not Yet Recorded
(links are to PowerPoint 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
Link to the team randomizer