Class Syllabus
Python, Linear Algebra, and Statistics 101
Supervised Learning
Basic Machine Learning
- Linear regression
- Case study: Earthquake magnitude;
- Case study: Gutenberg-Richter law and Omori’s law
- Support Vector Machine
- Decision Trees and Boosting
- Model evaluation, Precision-Recall, ROC, AUC
- Bias, variance, and regularization
Non-linear Optimization
- Automatic Differentiation for calculating gradients of complex functions.
- Gradient descent optimization; Quasi-Newton method (e.g., BFGS);
- Case study: Earthquake location
Deep Learning
- Neural network models
- Convolutional Neural Network
- Recurrent Neural Network
- Transformer Model
- Graph Neural Network
- Classification problem
- Case study: Earthquake detection
- Case study: Earthquake/explosion discrimination
- Regression problem
- Case study: Ground motion prediction
- Semantic segmentation problem
- Case study: Seismic phase picking
- Generative models
- Case study: Synthesizing seismic waveforms
Unsupervised Learning
Dimensionality Reduction
- PCA, ICA
- Auto-encoder
- Case study: Denoising of seismic waveforms
Clustering
- K-Means
- Case study: Earthquake swarm and background seismicity
- Gaussiam Mixture Model
- Case study: Earthquake phase association
Physics-constrained Learning
Fourier Neural Operator
Inverse Problem
- Well-determined, under-determined, and over-determined inverse problems
Baysesian Inference
- Uncertainty Quantification
- Markov Chain Monte Carlo (MCMC)
- Variational Inference
- Gaussian variational inference
- Stein variational inference