The Journal of Open Source Software · 2018 · 367 citations · 1 references
ComputingComputer ScienceCompilersComputer VisionMachine LearningComputational ModelsDeep LearningGraphics Processing Unit ComputingOptimization For Machine LearningAutomatic DifferentiationCompiler DesignCompiler SupportDifferentiationGpu Compiler OptimizationGpu Programming ModelsMachine Learning SoftwareSource Code Analysis
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 (Besard, Foket, and De Sutter 2017) can be used to JIT-compile custom GPU kernels for model layers (Innes and others 2017a).
1
Julia: A Fresh Approach to Numerical Computing
Jeff Bezanson, Alan Edelman, Stefan Karpinski et al. · SIAM Review · 2017 · 6.3K citations