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.