Week 8 — Coding Projects

Core

Implement PCA from covariance to projection.

  • NumPy: Mean-center data. Compute covariance. Eigendecompose. Project to top-k PCs. Study reconstruction error.
  • Metal: Mean-centering and covariance accumulation on GPU; eigensolve on CPU initially. Feed GPU projection using top-k eigenvectors. · Reading: MBT — compute workflows over large buffers, feeding compute outputs into visualization.
  • Vulkan: Same split: GPU covariance, CPU eigensolve first. · Reading: Vulkan Book — compute-to-graphics data flow, storage buffers for matrix data.
  • CUDA: GPU covariance plus optional power iteration for top eigenvector. · Reading: CUDA Book — iterative kernels, reductions, matrix-vector multiplies.
  • Stretch: Implement power iteration. Reconstruct from top-1 or top-2 PCs.
  • Verify: Principal direction visually matches variance direction · Reconstruction error decreases as k increases.