| # | date | topic | description |
|---|---|---|---|
| 1 | 24-Aug-2026 | Introduction | |
| 2 | 26-Aug-2026 | Foundations of learning | Drop/Add |
| 3 | 31-Aug-2026 | PAC learnability | HW1 |
| 4 | 02-Sep-2026 | Linear learning models | |
| 5 | 07-Sep-2026 | Labor Day Holiday | Holiday |
| 6 | 09-Sep-2026 | Principal Component Analysis | Project ideas |
| 7 | 14-Sep-2026 | Curse of Dimensionality | HW2, HW1 due |
| 8 | 16-Sep-2026 | Bayesian Decision Theory | |
| 9 | 21-Sep-2026 | Parameter estimation: MLE | |
| 10 | 23-Sep-2026 | Parameter estimation: MAP & NB | finalize teams |
| 11 | 28-Sep-2026 | Logistic Regression | HW3, HW2 due |
| 12 | 30-Sep-2026 | Kernel Density Estimation | |
| 13 | 05-Oct-2026 | Support Vector Machines | |
| 14 | 07-Oct-2026 | Matrix Factorization | |
| 15 | 12-Oct-2026 | * Midterm | Exam, HW3 due |
| 16 | 14-Oct-2026 | k-means clustering | |
| 17 | 19-Oct-2026 | Invited: Intro to Causal Learning I |
| # | date | topic | description |
|---|---|---|---|
| 18 | 21-Oct-2026 | Invited: Intro to Causal Learning II | |
| 19 | 26-Oct-2026 | * Mid-point projects checkpoint | HW4, P |
| 20 | 28-Oct-2026 | Expectation Maximization | |
| 21 | 02-Nov-2026 | Stochastic Gradient Descent | |
| 22 | 04-Nov-2026 | Automatic Differentiation | |
| 23 | 09-Nov-2026 | Nonlinear embedding approaches | HW5, HW4 due |
| 24 | 11-Nov-2026 | Model comparison & calibration | |
| 25 | 16-Nov-2026 | Convolutional Neural Networks | |
| 26 | 18-Nov-2026 | Word Embedding | |
| 27 | 23-Nov-2026 | Thanksgiving Break | Holiday |
| 28 | 25-Nov-2026 | Thanksgiving Break | Holiday |
| 29 | 30-Nov-2026 | * Final Exam | Exam |
| 30 | 02-Dec-2026 | Project Final Presentations | HW5 due, P |
| 31 | 07-Dec-2026 | No class | Classes End |
| 32 | 16-Dec-2026 | Project Reports | due |
| 33 | 17-Dec-2026 | Grades due 5 p.m. | PAWS |
Each thin hairline is one random dataset draw $\CD_i$ (vertical spread = Variance). As complexity grows, training error $\downarrow$ monotonically while test error $\uparrow$ and fans out — never select model complexity on training error!
We pick hyperparameter $\hat{\theta}_i = \argmin_{\theta} g(\theta; \CD_i)$ by minimizing validation error $g(\theta; \CD_i)$ to approximate true test error $G(\theta)$:
$\EE_{\CD}\!\left[(g(\theta; \CD) - G(\theta))^2\right] = \text{Bias}(g)^2 + \text{Variance}(g)$
Takeaway: A small bias ($\EE[\hat{\theta}] \neq \theta^*$) with low variance stays consistently near $\theta^*$, whereas an unbiased estimator with high variance can pick disastrous $\hat{\theta}_i$ far from $\theta^*$!
Why the Second Descent? At $p = n$, the unique interpolant has exploding norm $\|\hat{\vth}\|_2 \sim \sigma_{\min}(\vec{X})^{-1} \to \infty$. For $p \gg n$, SGD finds the minimum-norm interpolant $\hat{\vth}_{\text{min}} = \argmin_{\vec{X}\vth = \vec{y}} \|\vth\|_2^2 = \vec{X}^{\top}(\vec{X}\vec{X}^{\top})^{-1}\vec{y}$, whose norm and variance shrink as $p$ grows!
"Even after the observation of the frequent conjunction of objects, we have no reason to draw any inference concerning any object beyond those of which we have had experience."David Hume, in A Treatise of Human Nature, Book I, part 3, Section 12.
There is not a universally good algorithm that's best on all possible test data!
$$\text{accuracy} = \frac{\text{number of correct predictions}}{\text{number of total predictions}}$$
Suppose $N = 10^6$. Take all $5\%$ of Class $0$ ($50{,}000$) + $5\%$ from Class $1$ ($50{,}000$) $\implies 10^5$ balanced samples:
Now deploy both classifiers on the true population ($5\%$ Class $0$, $95\%$ Class $1$):
"Winner" Classifier A ($92\%$ on balanced):
• Class $0$ ($5\%$): $100\%$ correct
• Class $1$ ($95\%$): $83\%$ correct$$\text{ACC}_{\text{wild}}(A) = 0.05(1) + 0.95(0.83) \approx \color{#dc322f}{\mathbf{84\%}}$$
"Loser" Classifier B ($90\%$ on balanced):
• Class $0$ ($5\%$): $80\%$ correct
• Class $1$ ($95\%$): $100\%$ correct$$\text{ACC}_{\text{wild}}(B) = 0.05(0.80) + 0.95(1) = \mathbf{99\%}$$
$$\text{ACC} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{FP} + \text{FN} + \text{TN}}$$ When $\text{TN}$ is huge, it dominates both the numerator and denominator!
| Pred \ True | $\mathbf{p}$ | $\mathbf{n}$ |
|---|---|---|
| $\mathbf{P}$ | $5$ | $50$ |
| $\mathbf{N}$ | $10$ | $10{,}000$ |
1. Our Classifier's Accuracy: $$\text{acc} = \frac{5 + 10{,}000}{10 + 5 + 50 + 10{,}000} = \mathbf{99.4\%}$$2. Dummy "Predict All $\mathbf{N}$" ($\text{TP}=0, \text{FP}=0$): $$\text{acc}_{\text{all-}N} = \frac{0 + 10{,}050}{15 + 10{,}050} \approx \color{#dc322f}{\mathbf{99.9\% > 99.4\%!}}$$
Balanced Accuracy ($\text{BA}$): $$\text{BA} = \frac{\text{Sensitivity} + \text{Specificity}}{2}$$• Our model ($\begin{smallmatrix}5 & 50\\ 10 & 10000\end{smallmatrix}$):
$\text{Sens} = \frac{5}{15} = 33.3\%$, $\text{Spec} = \frac{10000}{10050} = 99.5\%$ $$\text{BA} = \frac{33.3\% + 99.5\%}{2} = \mathbf{66.4\%}$$ • Predict All $\mathbf{N}$: $\frac{0\% + 100\%}{2} = \color{#dc322f}{\mathbf{50\%}}$ (chance!)
$F_1$ Score (Harmonic Mean of $P, R$): $$F_1 = 2\,\frac{P \cdot R}{P + R}$$• Our model ($\begin{smallmatrix}5 & 50\\ 10 & 10000\end{smallmatrix}$):
$P = \frac{5}{55} = 9.1\%$, $R = \frac{5}{15} = 33.3\%$ $$F_1 = \frac{2(0.091)(0.333)}{0.091 + 0.333} = \mathbf{14.3\%}$$ • Predict All $\mathbf{N}$: $R = 0 \implies \color{#dc322f}{\mathbf{F_1 = 0\%!}}$
Send marketing materials if probability of responding is $\gt 1\%$
With a ranking classifier, a classifier plus a threshold produces a single confusion matrix.
Equivalent to the Mann-Whitney-Wilcoxon ranking statistic (and Gini coefficient):
$$\text{AUC} = \PP\Big( s(\vec{x}_{+}) > s(\vec{x}_{-}) \Big)$$ The probability that a randomly chosen positive sample $\vec{x}_{+}$ is ranked (scored) higher than a randomly chosen negative sample $\vec{x}_{-}$!
Model calibration is the problem of predicting probability estimates representative of the true correctness likelihood
We want the probability associated with the predicted class label to reflect its ground truth correctness likelihood.
If that is the case, we know when we can trust the model, and when to route the decision to a human!
$$ \PP(\hat{Y} = Y \mid \hat{P} = p) = p, \quad \forall p \in [0, 1] $$
The network overfits NLL (becoming overconfident) long after 0/1 classification error plateaus!