Relax! Flux is the ML library that doesn't make you tensor
Go to file
Iblis Lin c43bda019b TrackedArray: implement mean
```julia
julia> p
Tracked 2×3 Array{Float64,2}:
 1.0  3.0  5.0
 2.0  4.0  6.0
```

Before
```julia
julia> @benchmark Flux.Tracker.back!(sum($p, 2) ./ size($p, 2), ones(2, 1))
BenchmarkTools.Trial:
  memory estimate:  3.44 KiB
  allocs estimate:  75
  --------------
  minimum time:     20.438 μs (0.00% GC)
  median time:      21.239 μs (0.00% GC)
  mean time:        22.354 μs (1.68% GC)
  maximum time:     3.811 ms (98.51% GC)
  --------------
  samples:          10000
  evals/sample:     1
```

After
```julia
julia> @benchmark Flux.Tracker.back!(mean($p, 2), ones(2, 1))
BenchmarkTools.Trial:
  memory estimate:  1008 bytes
  allocs estimate:  21
  --------------
  minimum time:     5.973 μs (0.00% GC)
  median time:      6.310 μs (0.00% GC)
  mean time:        6.630 μs (1.96% GC)
  maximum time:     680.709 μs (97.28% GC)
  --------------
  samples:          10000
  evals/sample:     6
```
2017-10-30 16:21:02 +08:00
docs Merge pull request #92 from CarloLucibello/drop 2017-10-26 12:07:28 +01:00
src TrackedArray: implement mean 2017-10-30 16:21:02 +08:00
test TrackedArray: implement mean 2017-10-30 16:21:02 +08:00
.gitignore ignore demos 2017-03-14 15:27:53 +00:00
.travis.yml don't need this 2017-10-18 10:22:35 +01:00
LICENSE.md Flux.jl generated files. 2016-03-22 19:58:58 +00:00
README.md move 2017-09-11 14:56:35 +01:00
REQUIRE update dataflow bounds 2017-09-07 01:21:41 -04:00

Флукс

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

Flux is a refreshing approach to machine learning. It provides lightweight abstractions on top of Julia's native GPU and AD support, while remaining fully hackable (right down to the GPU kernels).

julia> Pkg.add("Flux")

See the documentation or the model zoo for examples.