Flux.jl/src
Mike J Innes e37973c3d5 Merge pull request #35 from oxinabox/patch-1
Replace deprecated `unpack` with `unstack`
2017-05-25 15:48:14 +01:00
..
backend Merge pull request #35 from oxinabox/patch-1 2017-05-25 15:48:14 +01:00
compiler updates for new broadcasting approach 2017-05-24 12:02:03 +01:00
dims refactor 2017-05-11 19:04:08 +01:00
layers reorganise recurrent stuff 2017-05-04 10:45:44 +01:00
data.jl organise training and utils 2017-05-01 12:41:54 +01:00
Flux.jl batch iterator 2017-05-11 19:03:53 +01:00
model.jl reorganise recurrent stuff 2017-05-04 10:45:44 +01:00
readme.md src docs 2017-05-04 13:17:21 +01:00
training.jl use juno's info function 2017-05-01 15:14:29 +01:00
utils.jl Use a package-local squeeze function instead of extending Base 2017-05-22 04:08:46 -04:00

model.jl implements the core Flux API for forward and backward passes.

The compiler folder implements the @net macro and some dataflow manipulation (like loop unrolling). The mxnet and tensorflow folders in backend each describe how to run @net code on those backends. These are the most involved parts of Flux where the magic-y stuff happens, but everything else is pretty straightforward Julia code.

layers is Flux's "standard library" of model parts; layers, activations, cost functions. Most are implemented using @net. control.jl implements Chain and others in pure Julia. shims.jl includes some things like convolutions which don't have "real" implementations yet, but can compile to a backend regardless.

dims implements the mechanisms for typing batch (and other) dimensions. This is basically standalone.

data.jl and utils.jl implement misc utilities.