View on GitHub


Documenting everything about OCaml


Machine Learning, Deep Learning, Scientific Computing and Data Science

Machine (Deep) Learning/Data Science

  • Owl: OCaml numeric library. Offers compilation of computation graphs to Tensorflow. See above.
  • ocaml-torch: OCaml bindings for PyTorch.
  • OCANNL: OCaml Compiles Algorithms for Neural Networks Learning. A framework for deep learning.
  • tensorflow-ocaml: OCaml bindings for TensorFlow.
  • hdf5-OCaml: OCaml implementation of hdf5 reader/writer. hdf5 is a file format commonly used in data science.

Numerical Computing/Data Science

  • Owl: OCaml numerical library: dense and sparse matrix, linear algebra, regressions, maths and stats functions.
  • pareto: Statistics library using GSL.
  • SPOC: Allows computing in OCaml with GPUs. Supports both CUDA and OpenCL.
  • lacaml: OCaml bindings for BLAS/LAPACK (high-performance linear algebra Fortran libraries).
  • sklearn: OCaml bindings to python’s scikit-learn, numpy and scipy. These are heavy duty libraries used by professional data scientists.
  • onumerical: Numerical library for OCaml.
  • oml: OCaml library for general numerical work.
  • slap: A linear algebra library in OCaml with type-based static size checking for matrix operations.
  • obandit: OCaml library for multi-armed bandits.
  • ocephes: Bindings to frequently used C special functions library.
  • glpk: Bindings to the glpk linear programming kit.
  • zarith: Arithmetic over arbitrary precision integers and rational numbers. Uses gmplib. Note that operations can be more expensive than calling gmplib directly.
  • gmp-ocaml: Low-level bindings to the gmplib.

Graphing, Plotting and Data Visualization

See Graphing


  • biocaml: OCaml Bioinformatics Library, see also
  • bistro: OCaml library for building bioinformatics pipelines.

Numerical File Formats