<- Data projects

2025 / UC Berkeley (ME249)

First-Principles vs Keras Neural Networks

Benchmarking custom optimization against RMSprop

MLRegressionOptimizationScientific ML
Keras predictions vs data
Keras predictions vs data

Overview

Compared a hand-coded Newton-style solver against a Keras implementation on the same physical system dataset to understand convergence behavior and error profiles.

Problem

How do custom first-principles optimization routines compare to modern deep learning optimizers for the same regression task?

Role

Course project (ME249)

Timeline

Oct 2025

Tools

Python / NumPy / TensorFlow/Keras

Data

  • Physical system dataset provided in course notebooks
  • Identical initialization and activation functions across pipelines

Approach

  • Implemented a Newton-style update loop with manual step scheduling
  • Trained a Keras model with RMSprop using matched architecture
  • Compared parameter drift and prediction error across runs

Evaluation

  • Normalized MAE reported ~0.012 for RMSprop vs higher baseline
  • Prediction error stayed within ~1.1°C across test cases

Results

  • Keras converged faster with lower sensitivity to initialization
  • First-principles solver offered transparent gradient auditing

Deployment

  • Reusable scripts for reproducible training runs
  • Logs document sensitivity to starting weights

Limitations

  • Small dataset with controlled test cases
  • Single architecture comparison

Evidence

Keras predictions vs data
Keras predictions vs data
First-principles predictions vs data
First-principles predictions vs data

Repro Steps

  • Run keras_training.py or first_principles.py in project2
  • Outputs saved to project2/out

Next Steps

  • Expand to larger datasets and additional optimizers
  • Add regularization to stabilize first-principles updates
View repository ->