Software Open Access

Flux – Elegant Machine Learning

Mike Innes

Flux is library for machine learning (ML), written using the numerical computing language Julia. The package allows models to be written using Julia's simple mathematical syntax, and applies automatic differentiation (AD) to seamlessly calculate derivatives and train the model. Meanwhile, it makes heavy use of Julia's language and compiler features to carry out code analysis and make optimisations. For example, Julia's GPU compilation support can be used to JIT-compile custom GPU kernels for model layers.

The machine learning community has traditionally been divided between "static" and "dynamic" frameworks that are easy to optimise and easy to use, respectively. Flux blurs the line between these two approaches, combining a highly intuitive programming model with the compiler techniques needed by ML. This enables research into advanced compiler transforms such as batching without changing any user code.

Files (55.3 kB)
Name Size
Flux.jl-0.5.1.zip
md5:97649a07bd55bd12b09b24ac2d11edec
55.3 kB Download
21
0
views
downloads
All versions This version
Views 2121
Downloads 00
Data volume 0 Bytes0 Bytes
Unique views 2121
Unique downloads 00

Share

Cite as