Research Projects

Machine learning and signal processing — one-page summaries, full papers linked.

CNN Music Genre Classification

79% accuracy from a from-scratch neural network

Problem. Classify music genres from audio without off-the-shelf models — derive the mathematical foundations of convolutional networks and implement them from first principles.

Approach.

  • Derived the convolution, pooling and backpropagation mathematics by hand before writing code.
  • Implemented the network and training loop in Python, no ML frameworks.
  • Evaluated against a held-out set with per-class error analysis.

Results. 79% classification accuracy. Recognized on "Ivanov's Top Papers of the Decade", and the work led directly to a programming assistant job offer.

Confusion matrix from the CNN music genre classifier
Confusion matrix — most confusion between acoustically adjacent genres.

DFT Signal Analysis

177k data points, clarinet harmonics

Problem. Characterize the timbre of a clarinet by decomposing its signal into frequency components using the Discrete Fourier Transform.

Approach.

  • Derived the DFT and its relationship to harmonic series from the mathematical definition.
  • Processed 177k sampled data points of clarinet recordings in Python.
  • Decomposed the spectrum into fundamental + harmonics and compared amplitude envelopes.

Results. Clean harmonic decomposition across 177k data points; the analysis was recognized among the top course papers.

Frequency-domain plot of clarinet harmonics from DFT analysis
Frequency-domain plot — harmonic peaks of the clarinet signal.