Math 350, Fall 2018

This course explores the process of building, analyzing, and interpreting mathematical descriptions of physical processes. Topics may include feature extraction, partial differential equations, neural networks, statistical models. The course will involve some computer programming, so previous programming experience is helpful, but not required.

There is no required text for this course. Class notes will be provided.

- Day 1-2:
- Notes, Ch 1 and 2
- Matlab notes, Day 1
- Matlab HW 1
- Aug 31: Work through the stats section, familiarize with Matlab.
- Homework: Work through the Matlab homework. Due on Wednesday.

- Mon, Sep 3: Finish covariance.
- Homework: Exercises 5-11 on pg. 20 of the "First Day notes" (previous day's link). Due on Friday (Exercise 6 will be done in class).

- Wed, Sep 5: Linear regression (in the notes, right after the stats).
- Homework: For the Hanford data at the end of Day 1 notes (p. 24 of the first handout above), find the line of best fit using the normal equations and Matlab. Also provide a plot of the data points and the line you found. DUE: Monday, Sep 10.

- Fri, Sep 7: n-armed bandit (paper handed out last time)
- Notes about the n-armed bandit. (Passed out on Monday)

- Mon, Sep 10: Variance and projections, n-armed bandit.
- Variance and Projection notes and HW Work on the exercises for Friday.
- Matlab HW: Run the n-armed bandit example and publish the script (with the ending plot). Due: Thur, Sep 13, 10PM (This shouldn't take too long- Copy and paste the Matlab code from the PDF handout).

- Wed, Sep 12: Finish n-armed bandit, discuss functions in Matlab (vs scripts).
- Homework: Exercises 1, 2, 5 on pg 12 of the n-armed bandit notes (linked today). Due on Monday, Sep 17.
- Matlab handout: Functions versus scripts.. Work on the homework problems included therein for Wednesday, Sep 19.

- Fri, Sep 14: Genetic algorithms.
- Mon, Sep 17: Finish Genetic Algorithms.
- Finish the genetic algorithm notes. HW for Monday, Sep 24 (Updated deadline). Solve the Knapsack problem in Matlab.

- Wed, Sep 19: Linear Algebra notes.
- Notes to review Linear Algebra. HW for Friday 1,2,3 and 7 (p. 53), 3, 4 (p. 56)

- Fri, Sep 21: Linear Algebra, continued.
- Mon, Sep 24: Eigenvalues and Eigenvectors, Symmetric Matrices
- Wed, Sep 26: Review for exam on Friday. No new homework.
- Fri, Sep 28: Exam 1 (For the take home exam, see links below)
- Mon, Oct 1: The Singular Value Decomposition. No new HW- Work on the take home exam.
- Wed, Oct 3: Applications of the SVD: No new HW- Finish the take home exam.
- (Oct Break)
- Mon, Oct 8: Finish the SVD and the Pseudoinverse. Computer Lab: Clown image and the SVD
- Wed, Oct 10: Discuss the homework (Due: Friday, Oct 12, 11:59PM). The homework is #5, 6.. Started the "Best Basis" notes. We'll finish these on Friday.
- Fri, Oct 12: Finish the "Best Basis".
- Mon, Oct 15: Discussed applications of the best basis to photos, started linear neural nets.
- Wed-Fri, Oct 17-19: Linear neural networks, The Hebb learning rule.
- Matlab M-file: WidHoff.m
- Matlab script: Learn letters T, G, F. (TGFExample.m)
- Linear Network Homework (PDF)
- Iris Data (as a Matlab data file, IrisDataX.mat)
- Matlab text file that has the breast cancer classification data, BreastData.m. This file also includes some explanation- Remember that it is a regular text (script)!

- Mon-Fri, Oct 22-26: Data Clustering
- Matlab function file: edm.m (Euclidean Distance Matrix)
- Matlab function file: lbgUpdate.m (Same as k-means update)
- An example in clustering: ClusterExample1.m
- For Friday:
- Monday-Wednesday, Oct 29-31
- Clustering notes (SOM, Neural Gas) updated 10/29/18 (also has the Neural Gas notes).
- Links for SOM:
- Links for Neural Gas:
- This is the main function, NeuralGas.m
- This function initializes the Neural Gas routine. (Change all training parameters in this code).
- Helper function to update parameters (paramUpdate.m)
- Plot the connection matrix in two dimensions (plotng01.m)
- Some training data (6 data sets). (SixDatasets.mat)
- Sample script for training that we saw in class (NGScript01.m)

- Clustering Homework (ClusterHW01.pdf). Due Wed, Nov 7.

- Fri, Nov 2: Optimization
- Optimization notes and HW
- Bisection, bisect.m
- Test function, testfunc01.m
- NewtonMethod.m
- MultiNewton.m
- newttest.m for the multidimensional Newtons method.
- Monday-Friday, Nov 12-16: Radial Basis Functions
- Lab materials
- Monday-Friday, Nov 26-30: Feed forward Neural Networks
- Notes handed out on Monday
- Homework: Go back to the data set from Exam 2 (cats and dogs), and (1) try to determine a good error for the classification using a linear net and batch training, (2) Use an RBF and Matlab for the classifier (newrb), and (3) Show that sigma'(r)=sigma(r)(1-sigma(r)) for the "logsig" function. The last problem is a quick computation that can be done by hand- Turn it in on Friday, and the other problems can be uploaded sometime before Friday 11PM.
- How to manually compute a net from Matlab's structure
- Sample training handout
- Matlab data set: diabetes1.mat

- Last Week (Mon, Wed) Deep Networks

- Exam 1
- Exam 2

- Take Home Exam 2 (Due Wednesday evening, Nov 14)
- Final Exam Links (Due Thursday, Dec 13th, 8PM)

- Octave is a free version of Matlab. Some things about it may differ from Matlab, but for the things we'll do in class, it shouldn't be a problem.
- Matlab notes, Day 1 (Same link as above)
- Matlab HW 1 (same link as above).