← all repositories
rosejn/cortex

Deep learning for the parentheses crowd

A neural-network toolkit that lets Clojure developers train models without leaving the REPL.

1.3k stars Clojure ML FrameworksLanguage Models
cortex
Velocity · 7d
+0.4
★ / day
Trend
steady
star history

What it does

Cortex is a machine-learning library for Clojure covering neural networks, regression, and feature learning. It wraps GPU acceleration via CUDA/cuDNN through JavaCPP bindings, so you can train classifiers on a GPU from a Lisp REPL. The project includes MNIST examples and verification tests to get you started.

The interesting bit

The authors explicitly designed the compute layer to match the cuDNN API, betting that a thin, faithful mapping to NVIDIA’s primitives would pay off for larger pre-trained models. It’s a pragmatic glue layer rather than an abstraction tower — refreshing in a field that loves to over-wrap.

Key highlights

  • GPU compute via CUDA 8.0 and cuDNN (Ubuntu, macOS, and “preliminary” Windows support)
  • Model serialization uses EDN in nippy format — readable, but not yet stable across versions
  • Includes working MNIST classification example and verification suite
  • Distributed on Clojars; lein test in cortex and compute runs training tests
  • Active TODO list: Keras/VGG import, recurrence, multi-GPU, profiling, visualization

Caveats

  • Explicitly pre-1.0; save formats may break between versions
  • Recurrent networks and multi-GPU are on the roadmap, not shipped
  • GPU setup is manual and version-sensitive (CUDA 8.0 hardcoded in current master)

Verdict

Worth a look if you’re already in the Clojure ecosystem and want to experiment with neural nets without Python interop. Everyone else should probably stick to PyTorch or JAX until the Keras import and recurrence land.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.