## TEACHING

### COURSES

- Math 465 - Introduction to High-Dimensional Data Analysis - Fall 2014
- Math 561 - Scientific Computing, I - Fall 2014
- Math 431 - Advanced Calculus, I - Spring 2014
- Math 790 - Topics in Statistical Learning, High Dimensional Geometry and Random Matrices
- Math 561 - Scientific Computing I - Fall 2012
- Math 465 - Introduction to High Dimensional Data Analysis - Fall 2012
- Math 224 - Scientific Computing - Fall 2011
- Math 288 - Topics in Probability: Geometry, Functions and Learning in High Dimensions - Fall 2011
- Math 139 - Real Analysis - Fall 2010
- Math 338 - Topics in Graph Theory, Random Matrices, and Applications - Spring 2010
- Math 348 - Applied Harmonic and Multiscale Analysis - Fall 2009
- Math 224 - Scientific Computing - Fall 2009 - will be taught by J. Liu.
- Math 225 - Scientific Computing II - Spring 2009
- Math 133 - Introduction to Partial Differential Equations - Spring 2009
- Math 378 - Introduction to spectral graph theory and applications - Spring 2008
- Math 224 - Scientific Computing - Fall 2007
- Math 348 - Harmonic Analysis and Applications - Spring 2007
- Teaching related links (mostly for my own use)

## Math 465 - Introduction to High-Dimensional Data Analysis - Fall 2014

Class: MW 3:05-4:20, Location: Gross 304B

Office hours: Tue 1:00-2:00pm, Location: Gross 309

Here is the *syllabus*.

There is no textbook for the course, notes taken during lectures will be important, as well as materials will be made available during lectures, and pointers to relevant papers/lectures notes/presentations discussed during the lectures will be made available on this page. For the linear algebra components I recommend Halmos' book on Finite Dimensional Vector Spaces, and for both linear algebra and SVD and related computational considerations, Trefethen and Bau's book on Numerical Linear Algebra.

Homework:

- Homework 1. Due Sep. 10th
- Homework 2. Due Sep. 17th
- Homework 3. Due Sep. 24th

## Math 561 - Scientific Computing, I - Fall 2014

Class: MW 1:25-2:40, Location: Gross 304B

Office hours: Tue 12:00-1:00pm, Location: Gross 309

Here is the *synopsis* and its extended version in the *syllabus*.

The first part of the course will cover basic numerical linear algebra, in particular matrix factorizations, solution of linear systems and eigenproblems.

The suggested textbook is Trefethen and Bau's Numerical Linear Algebra. The textbook by Heath, Scientific Computing, may be a useful references for exercises, of which it contains many.

Homework:

- Homework 1. Due Sep. 10th
- Homework 2. Due Sep. 17th
- Homework 3. Due Sep. 24th

### Useful links:

John Trangenstein's home page contains a link to his online book on Scientific Computing, as well as several useful links to programming guides for Fortrain, C, C++ and Lapack on his page for Math 225. William Allard's home page also contains useful material, such as notes and links to online guides and materials.

*Fortran tutorial:* here and here.

*Matlab tutorial:* from Mathworks here, from the University of Florida here. Many more are available online, just use your favourite search engine to look for "matlab tutorial".

Cleve Moler book (selected chapters): Numerical computing with MATLAB and Experiments with MATLAB.

## Math 431 - Advanced Calculus, I - Spring 2014

Office hours: Mondays, 1:30-2:30pm, Gross Hall, Office 318

This course will develop a rigorous theory of elementary mathematical analysis including differentiation, integration, and convergence of sequences and series. Students will learn how to write mathematical proofs, how to construct counterexamples, and how to think clearly and logically. These topics are part of the foundation of all of mathematical analysis and applied mathematics, geometry, ordinary and partial differential equations, probability, and stochastic analysis.

Textbook: Fundamental Ideas of Analysis, by Michael Reed. The course will cover most, but not all, of the material in Chapters 1-6.

Midterms: February 19th, and March 26th.

Homework:

- Homework 1. Office hours moved to 11:30am, instead of 1:30pm on Monday 13th. Office: 319 Gross Chem.
- Homework 2. Office hours at 1:30pm on Monday 13th, 318 Gross Chem. [Updated pdf on 1/16/14 at 11:30pm: it contained a misspelled word and I corrected office hours in the .pdf]
- Homework 3
- Homework 4
- Homework 5
- Homework 6
- Homework 7
- Homework 8
- Homework 9

## Math 790 - Random Matrices, Concentration Inequalities and Applications to Signal Processing and Machine Learning - Spring 2013

We discuss several related topics and techniques at the intersection between probability, approximation theory, high-dimensional geometry, and machine learning and statistics. Synopsis. Wiki page

## Math 224 - Scientific Computing - Fall 2011

*Office hours*: Tue 4-5pm, my office is Room 293 in the Physics Bldg.

Here is the *synopsis*.

The first part of the course will cover basic numerical linear algebra, in particular matrix factorizations, solution of linear systems and eigenproblems, nonlinear equations in 1 dimensions. If time permits, we shall discuss recent randomized algorithms in numerical linear algebra.

- Homework 1
- Homework 2
- Homework 3. You may also want to use this code, but if you prefer to write your own to practice with Matlab, you are most welcome to write your own version.
- Homework 4
- Homework 5
- Homework 6
- Homework 7
- Homework 8
- Homework 9
- Homework 10
- Homework 11. These include studying the last few lectures covered in class, and a set of suggested exercises (not mandatory and not graded).

### Useful links:

John Trangenstein's home page contains a link to his online book on Scientific Computing, as well as several useful links to programming guides for Fortrain, C, C++ and Lapack on his page for Math 225. William Allard's home page also contains useful material, such as notes and links to online guides and materials.

*Fortran tutorial:* here and here.

*Matlab tutorial:* from Mathworks here, from the University of Florida here. Many more are available online, just use your favourite search engine to look for "matlab tutorial".

Cleve Moler book (selected chapters): Numerical computing with MATLAB and Experiments with MATLAB.

## Math 288 - Topics in Probability: Geometry, Functions and Learning in High Dimensions - Fall 2011

Here is a *flier for the course*.

We discuss several related topics and techniques at the intersection between probability, approximation theory, high-dimensional geometry, and machine learning and statistics. We build on basic tools in large deviation theory and concentration of measure and move to problems in non-asymptotic random matrix theory (RMT), such estimating the spectral properties of certain classes of random matrices. We then use these tools to study metric proeprties of certain maps between linear spaces that are near-isometry, such as random projections. We then move to the setting of general metric spaces, and introduce multiscale approximation of metric spaces a la Bourgain, and also discuss tree approximations, and hint at the algorithmic applications of these ideas. Finally we move to the real of function approximation/estimation/machine learning for functions defined on high-dimensional spaces. We discuss Reproducing Kernel Hilbert Spaces and learning iwth RKHS's, and we also discuss multiscale techniques for function approximation in high-dimensions. We discuss also geometric methods, both graph based (Laplacians, manifold learning) and multiscale-based. Finally, we discuss recent fast randomized algorithmic for certain numerical linear algebra computations, that use non-asymptotic RMT results discussed above.

Requirements: solid linear algebra and basic probability. Of help, but to be introduced in the course: metric spaces, function spaces, matrix factorizations.

A course wiki contains links to lecture notes, papers and other materials. May be edited by students in the class.

## Math 139 - Real Analysis - Fall 2010

Office hours: Mon, 1:30pm-3:30pm, or by appointment

Textbook: Fundamental Ideas of Analysis, by Michael Reed. The course will cover most, but not all, of the material in Chapters 1-6.

There will be a midterm exam, a final exam and weekly homework.

Evaluation: There will also be at least one lengthy assignment which challenges you to write carefully constructed proofs. Your final letter grade will be based on these components weighted as follows: long assignment(s) 10-15%, regular homework 20-25%, midterm exam 25%, final exam 40%. Homework is due at the beginning of class, stapled, written legibly, on one side of each page only and must contain the reaffirmation of the Duke community standard. Otherwise, it will be returned ungraded. The logic of a proof must be completely clear and all steps justified. The clarity and completeness of your arguments will count as much as their correctness. Some problems from the homework will reappear on exams. I will go over in detail the solution to any homework problem during office hours. You may use a computational aid for the homework but I do not recommend it. Calculators and computers will not be allowed on the quizzes and exams. The lowest homework score will be dropped. No late homework will be accepted. Duke policies apply with no exceptions to cases of incapacitating short-term illness, or for officially recognized religious holiday.You may, and are encouraged to, discuss issues raised by the class or the homework problems with your fellow students and both offer and receive advice. However all submitted homework must be written up individually without consulting anyone else's written solution.

## Math 338 - Topics in Graph Theory, Random Matrices, and Applications - Spring 2010

A flier for the course, with summary of some of the topics.## Math 348 - Applied Harmonic and Multiscale Analysis - Fall 2009

Office hours: by appointment.

Students have access to a wiki and blog with materials for the course and to discuss topics and problems

The overarching theme is applied multiscale harmonic analysis, in various of its forms. Very rough outline (probably over-ambitious): - Basic Fourier analysis; Littlewood Paley theory (a.k.a. how to do multiscale analysis with Fourier); square functions & Khintchine inequality; applications to signal processing (audio/video) - Classical multiresolution analysis through wavelets; applications to Calder\'on-Zygmund integral operators and associated numerical algorithms; applications to signal processing (audio/video) - Multiscale analysis of random walks on graphs; applications to analysis of high-dimensional data sets, regression and inference. - A sketch of some techniques in multiscale geometric measure theory, in particular the geometric version of square functions + concentration phenomena for measures in high-dimensional spaces + results in random matrix theory. Applications to analysis of high- dimensional data sets and inference, as well as numerical linear algebra.

## Math 225 - Scientific Computing II - Spring 2009

Office hours: by appointment.

Here is the *synopsis*.

- Homework 1. Due Jan. 22.
- Homework 2. Due Jan. 29.
- Homework 3. Due Feb. 5th.
- Homework 4, and associated data sets. Due Feb. 17th.
- Homework 5. Due Feb. 24th.
- Homework 6. Due Mar. 19th.
- Homework 7. Due Mar. 26th. Here are the examples that I ran in class.
- No homework for Apr. 2nd.
- Homework 8. Due Apr. 7th.
- Homework 9. Due Apr. 21st.

Cleve Moler book (selected chapters): Numerical computing with MATLAB and Experiments with MATLAB.

## Math 133 - Introduction to Partial Differential Equations - Spring 2009

Office hours: Tuesday 3-4:30pm, or by appointment.

Here is the *synopsis*.

** First test** will on **February 17th** (usual class time). (Solution)

** Reviews session** will on **April 23rd 4:30pm-5:30pm**, usual classroom. I will answer your questions.

- Homework 0. Due Jan. 15.
- Homework 1. Due Jan. 22 (Solution).
- Homework 2. Due Jan. 29.
- Homework 3. Due Feb. 5. (Solution)
- Homework 4. Due Feb. 12.(Solutions pages 1,2,3,4,5
- Homework 5. Due Feb. 24.(Solution)
- Homework 6. Due Mar. 5. (Solution)
- Homework 7. Due Mar. 19.
- Homework 8. Due Mar. 26.
- Homework 9. Due Apr. 2.
- Homework 10. Due Apr. 14.(Partial solution)
- Homework 11. Due Apr. 21.

## Math 378 - Minicourse - Introduction to Spectral Graph Theory and Applications - Spring 2008

We will discuss the basics of spectral graph theory, which studies random walks on graphs, and related objects such as the Laplacian and its eigenfunctions, on a weighted graph. This can be thought as a discrete analogue to spectral geometry, albeit the geometry of graphs and their discrete nature gives rise to issues not generally considered in the continuous, smooth case of Riemannian manifolds. We will present some classical connections between properties of the random walks and the geometry of the graph. We will then discuss disparate applications: the solution of sparse linear systems by multiscale methods based on random walks; analysis of large data sets (images, web pages, etc...), in particular how to find systems of coordinates on them, performing dimensionality reduction, and performing multiscale analysis on them; tasks in learning, such as spectral clustering, classification and regression on data sets.

### Materials:

- Code for the demo involving drawing a set a points, constructing an associated proximity graph, and computing and displaying eigenvalues/eigenfunctions of the Laplacian. You need to first download and install the general code for Diffusion Geometry (last updated on 1/29/08), and then download and install this code for running the demo I ran in class, with some images already prepared. After installing the Diffusion Geometry package, please run DGPaths in order to set the Matlab paths correctly. The script for the demo is called GraphEigenFcnsEx_01.m, and it is fairly extensively commented. I will be happy to add your own examples here! The code works best with the Approximate Nearest Neighbor Searching Library by D. Mount and S. Arya. To install this code, simply untar in a directory and run make. This should produce the file libANN.a in the lib subdirectory. This file is already included in the Diffusion Geometry package, in the MEX directory, compiled on a Unix machine at Duke Math. Copy this library libANN.a in the MEX directory, under the directory where the Diffusion Geometry package, and from the Matlab prompt run "mex ANNsearch libANN.a" and "mex ANNrsearch libANN.a". This will yield two .mexglx files, that are what Matlab will call. These two files are already included in the Diffusion Geometry package, after compilation on a Unix machine at Duke Math.

### References:

- R. Diestel's book on Graph Theory is an excellent general reference. Availble online here.
- D. Spielman notes for his course on
*Spectral Graph Theory*at Yale; several papers on specific applications, dependent on the attendant's interests. - D. Spielman notes on his course on
*Graphs and Networks*at Yale. Some overlap with the above, but also other references and materials. - F. Chung's book "Spectral Graph Theory". She also wrote a book on "Complex Graphs and Networks", mostly on random graphs and their degree distribution properties, and also some spectral results for them. Visit her homepage for lots of interesting material on graphs, spectral graph theory and its applications. In particular see the gallery of graphs.
- S. Lafon's web page has some cool tutorials and interactive demos on diffusion geometry.

## Math 224 - Scientific Computing - Fall 2007

*Office hours*: Wed 4:30-5:30, Thu 1:10-2:10, or by appointment.

Here is the *synopsis*.

The first part of the course will cover basic numerical linear algebra, in particular matrix factorizations, solution of linear systems and eigenproblems. The second part of the course will cover nonlinear equations, numerical integration and differentiation, basic techniques for ODEs, and the Fast Fourier Transform.

### Useful links:

John Trangenstein's home page contains a link to his online book on Scientific Computing, as well as several useful links to programming guides for Fortrain, C, C++ and Lapack on his page for Math 225. William Allard's home page also contains useful material, such as notes and links to online guides and materials.

*Fortran tutorial:* here and here.

*Matlab tutorial:* from Mathworks here, from the University of Florida here. Many more are available online, just use your favourite search engine to look for "matlab tutorial".

### Homework sets:

1 (solution), 2 (solution), 3 (solution), 4 (solution), 5 (solution), 6 (solution), 7, 8.

Partial solution to test 1.

## Math 348 - Harmonic Analysis and Applications - Curr Res in Analysis - Spring 2007

Please find the synopsis here.

I plan to develop lecture notes as the course proceeds. Last update: 1/10/07. The notes are still in a very preliminary should be downloaded and used by students of the course only, and should not be divulgated, replicated if not for purposes related to the course. When a more stable version will become available, certain of these restrictions will be removed. This link will be updated regularly. Right now they are in an extremely preliminary state, and at times they may not even be accessible through the link provided.

A list of topics for presentation suggested for the course (by instructor or students), and the students currently working on them is available here.

### Presentations by students:

- Statistical Approach to Wavelet Shrinkage, Simon Lunagomez
- Semisupervised Learning on Graphs, Chungping Wang
- Markov Decision Processes, Rachel Thomas
- The Fast Multipole Method, Veronica Rozmiarek
- Multiscale Reconstruction of Hyperspectral Data , Kalyani Shivakumar and Cristina Fernandez.
- Stochastic Filtering, Zachary Harmany and William Lee.

## Teaching Related Links

Duke SISS storm login (instructor)