Skip to content

Repository of best practices for deep learning in Julia, inspired by fastai

License

Notifications You must be signed in to change notification settings

FluxML/FastAI.jl

Repository files navigation

FastAI.jl

FastAI.jl is a Julia library for training state-of-the art deep learning models.

From loading datasets and creating data preprocessing pipelines to training, FastAI.jl takes the boilerplate out of deep learning projects. It equips you with reusable components for every part of your project while remaining customizable at every layer. FastAI.jl comes with support for common computer vision and tabular data learning tasks, with more to come.

FastAI.jl's high-level workflows combine functionality from many packages in the ecosystem, most notably Flux.jl, FluxTraining.jl, DataAugmentation.jl and MLUtils.jl.

See our documentation to find out more.

Example

As an example, here is how to train an image classification model:

using FastAI, FastVision
data, blocks = load(datarecipes()["imagenette2-320"])
task = ImageClassificationSingle(blocks)
learner = tasklearner(task, data, callbacks=[ToGPU()])
fitonecycle!(learner, 10)
showoutputs(task, learner)

Setup

To get started, install FastAI.jl and domain packages using the Julia package manager:

using Pkg
pkg"add FastAI FastVision"

or try it out with this Google Colab template.

Getting started

To dive in, you may be interested in

Get in touch

You can get in touch here on GitHub or on the JuliaLang Zulip in the #ml-contributors channel.


Acknowledgements

FastAI.jl takes inspiration from the fantastic fastai library for Python. Jeremy Howard and the fastai team kindly approved this project and its use of the fastai name.

This project also builds on many packages in the Julia ecosystem.