Relax! Flux is the ML library that doesn't make you tensor
Go to file
Mike J Innes 53a6c3bebd update readme 2017-09-07 01:02:29 -04:00
docs also in contributing 2017-08-24 10:27:15 +01:00
src handle epoch elsewhere 2017-09-07 00:29:55 -04:00
test efficient traversal 2017-09-06 23:09:32 -04:00
.gitignore ignore demos 2017-03-14 15:27:53 +00:00
.travis.yml stop travis complaining 2017-08-23 00:32:59 +01:00
LICENSE.md Flux.jl generated files. 2016-03-22 19:58:58 +00:00
README.md update readme 2017-09-07 01:02:29 -04:00
REQUIRE initial cuarrays integration 2017-08-24 17:00:48 +01:00

README.md

Флукс

Build Status Join the chat at https://gitter.im/FluxML Slack

Flux is a library for machine learning, implemented in Julia. Flux is high-level yet extremely lightweight, providing only simple abstractions on top of Julia's native GPU support and automatic differentiation.

Define a simple model using any Julia code:

using Flux.Tracker
x, y = rand(10), rand(5) # Dummy input / output
# `track` defines parameters that we can train
W, b = track(randn(5,10)), track(randn(5))
# Transform `x` and calculate the mean squared error
loss = Flux.mse(W*x .+ b, y)
# Calculate and store gradients of `track`ed parameters
back!(loss)
Tracker.grad(W) # Get the gradient of `W` wrt the loss

Define a larger model using high-level abstractions:

using Flux

m = Chain(
  Dense(10, 32, relu),
  Dense(32, 10), softmax)

m(rand(10))

Mix and match the two:

using Flux.Tracker
x, y = rand(10), rand(5)
d = Dense(10, 5)
loss = Flux.mse(d(x), y)

See the documentation or the model zoo for more examples.