Deep learning for the parentheses crowd
A neural-network toolkit that lets Clojure developers train models without leaving the REPL.

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 testincortexandcomputeruns 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.