M1399.000200 Advanced Statistical Computing @ SNU 2020
This is the course website for M1399.000200: “Advanced Statistical Computing “ at Seoul National University in Fall 2020. Assignments, lecture notes, and open source code will all be available on this website.
Announcements
- 2020-12-02: Homework 4, Q2-3 has been clarified.
- 2020-11-22: Homework 4 has been posted. Due data is 2020-12-14.
- 2020-11-18: GP lecture notes have been updated to include the ECOS solver.
- 2020-11-10: Homework 3 Q3-2 has been corrected.
- 2020-10-31: Homework 3 has been posted. Due date is 2020-11-17.
- 2020-10-14: Final project has been announced.
- 2020-10-12: Homework 2 typos has been fixed. See especially Q5.
- 2020-09-27: Homework 2 has been posted. Due date is 2020-10-18.
- 2020-09-27: A make-up lecture for 2020-09-30 class will be recorded and posted on eTL.
- 2020-09-27: Lecture note 3 has been updated.
- 2020-09-16: Fixed typos in Homework 1.
- 2020-09-11: Homework 1 has been posted. Due date is 2020-09-27.
- 2020-09-02: course will be given online. Mostly real-time, but sometimes pre-recorded.
Instructor
Joong-Ho (Johann) Won
Email: wonj AT stats DOT snu DOT ac DOT kr
Class Time: Mondays/Wednesdays 11:00 - 12:15 @ online
Office Hours: By appointment.
Textbook: There is no required textbook.
References:
- James Gentle, Computational Statistics, 2nd Edition, Springer (2009).
- Gene Golub and Charles Van Loan, Matrix Computation, 4th Edition, Johns Hopkins Press (2012).
- Kenneth Lange, Numerical Analysis for Statisticians, 2nd Edition, Springer (2010).
- Stephen Boyd and Lieven Vandenberghe, Convex Optimization, Cambridge University Press (2004).
- Dimitri P. Bertsekas, Convex Optimization Theory Athena Scientific (2009).
Course Objectives
By the end of this course, you will be able to acquire
- basic programming skills using the Julia programming language;
- basic knowledge of computer arithmetic;
- fundamental knowledge of numerical algorithms for statistical computing;
- hands-on knowledge of various optimization problems in statistical computing;
- basic theoretical understanding of mathematical optimization;
- wisdom of how not to reinvent the wheel.
Course Overview
Assessment
The course will be graded based on the following components:
- Attendance (10%): Mandatory.
- Assignments (65%): You will be assigned 4 homework assignments to be completed using Julia regularly throughout class.
- Final project (25%): The project will be a reproduction of the code and results in a recent computational statistics research paper chosen in Julia by yourself. The ideas for projects will be provided towards the midpoint of the semester.
Schedule
The following schedule is tentative, and is subject to change over the course.
Week |
Topic |
Assignment |
Due Date |
|
1 (9/2) |
Introduction, Julia Intro [notebook] |
|
|
|
2 (9/7, 9/9) |
Plotting [notebook], Jupyter |
Homework 1 [notebook] |
2020-09-27 |
|
3 (9/14, 9/16) |
Computer Arithmetic [notebook] |
|
|
|
4 (9/21, 9/23) |
Computer Arithmetic [notebook], Algorithm [notebook] |
|
|
|
5 (9/28, 9/30) |
Numerical Linear Algebra: intro [notebook], triangular systems [notebook] |
Homework 2 [notebook] |
2020-10-18 |
|
6 (10/5, 10/7) |
LU decomposition [notebook] [example], Cholesky [notebook] |
|
|
|
7 (10/12, 10/14) |
QR decomposition [notebook], Linear regression [notebook], Iterative methods [notebook] |
Final Project Proposal |
2020-10-26 |
|
8 (10/19, 10/21) |
Eigenvalue and singular value decompositions [notebook] |
|
|
|
9 (10/25, 10/28) |
Introduction to mathematical optimization |
Homework 3 [notebook] |
2020-11-17 |
|
10 (11/2, 11/4) |
Optimization in Julia [notebook] |
|
|
|
11 (11/9, 11/11) |
Linear programming [notebook], Quadratic programming [notebook], Second-order cone programming [notebook] |
|
|
|
12 (11/16, 11/18) |
Semidefinite programming [notebook], Geometric programming [notebook] |
|
|
|
13 (11/23, 11/25) |
KKT conditions, Newton’s method I [notebook] |
Homework 4 [notebook] |
2020-12-14 |
|
14 (11/30, 12/2) |
Newton’s method II, MM algorithms |
|
|
|
15 (12/7, 12/9) |
First-order methods, Final Projects |
|
|
|
16 (12/14) |
Final Projects |
|
|
|