Flux.jl/README.md
2017-03-06 16:05:31 +00:00

1.7 KiB
Raw Blame History

Флукс

Build Status Join the chat at https://gitter.im/MikeInnes/Flux.jl

Flux is a high-level library for machine learning, implemented in Julia.

Flux is designed to get the best performance (by running on TensorFlow or MXNet) while still being intuitive to work with you get good error messages, can step through models with the debugger, and the notation is very close to what you'd find in a paper.

Check out the docs to get started. Flux is in alpha so please open issues liberally; if something is broken for you it can most likely be fixed easily, or if you're not sure how to do something we can help.

Brief Examples

Simple multi-layer-perceptron for MNIST:

Chain(
  Input(784),
  Affine(128), relu,
  Affine( 64), relu,
  Affine( 10), softmax)

LSTM example:

@net type LSTM
  Wxf; Wyf; bf
  Wxi; Wyi; bi
  Wxo; Wyo; bo
  Wxc; Wyc; bc
  y; state
  function (x)
    # Gates
    forget = σ( x * Wxf + y{-1} * Wyf + bf )
    input  = σ( x * Wxi + y{-1} * Wyi + bi )
    output = σ( x * Wxo + y{-1} * Wyo + bo )
    # State update and output
    state = tanh( x * Wxc + y{-1} * Wyc + bc )
    state  = forget .* state{-1} + input .* state
    y = output .* tanh(state)
  end
end

Chain(
  Input(N),
  LSTM(N, 256),
  LSTM(256, 256),
  Affine(256, N),
  softmax)