Huw Campbell
10a6003e73
Add Deconvolution layer and update the GAN example to use it
...
This cuts the runtime by about 70% which is nice, and it's a
better algorithm for it anyway.
I've also refactored the Convolution layer such that there's
only one actual implementation instead of two, and with that
provided a few more instances for 2D and 3D shapes in and out.
Update to the README and mnist show higher levels of composition.
2017-04-06 13:34:43 +10:00
Huw Campbell
e6293b8461
Cleanup imports and move examples to new project
2017-03-20 17:20:33 +11:00
Huw Campbell
60e28aad8e
Add more reshape instances
2017-02-08 18:10:35 +11:00
Huw Campbell
d91d2cbf21
Sketch out travis
2017-02-07 20:58:24 +11:00
Huw Campbell
a153aff744
Make the recurrent api like core
2017-02-07 11:15:47 +11:00
Huw Campbell
7d476bf0f6
Semigroup dep for optparse
2017-02-03 21:18:53 +11:00
Huw Campbell
1e461cb07a
Make Pad 3D faster.
...
Using dependent types in the deeper functions and
requiring a Proxy to reach them meant we required
dictionary passing to get the Nats. This made the
pad and crop layers almost 1000 times slower than
they should have been.
2017-02-03 21:05:14 +11:00
Huw Campbell
7af621cbb6
Add c 3d pad and crop functions
2017-02-02 20:27:02 +11:00
Huw Campbell
a23103ee7b
Add extra composition
2017-02-01 22:13:20 +11:00
Huw Campbell
e6179ce5a4
Add recurrent tapes
2017-01-28 14:13:00 +11:00
Huw Campbell
bcd1856988
Update LSTM
2017-01-19 18:56:22 +11:00
Huw Campbell
4dc408f39d
Add very basic model saving and loading
2017-01-16 10:16:40 +11:00
Huw Campbell
ac0e4b22c8
Remove primes on shape instantiations
...
Add singletons for Shape and remove hacks on recurrent nets
Add Recurrent Nets
2017-01-14 21:09:07 +11:00
Huw Campbell
424d791a30
Fix silent conversion bug in pooling layer
...
Add quickcheck against reference implemenations for layer internals
Add skolem layer generators.
2016-12-15 11:21:37 +11:00
Huw Campbell
9df47d5c7e
Remove indexed Vector type
2016-12-13 09:51:55 +11:00
Huw Campbell
6417151620
Make Grenade fast
...
Changes shapes to get rid of the Vector, all data is
now held in contiguous memory.
Add fast c implementations for pooling layers.
Now does mnist on my laptop in 12 minutes.
2016-12-13 08:39:32 +11:00
Huw Campbell
3830e55a7c
Add stupidly fast im2col in c
2016-12-12 23:35:00 +11:00
Huw Campbell
bd881faf2b
Add some benchmarks
2016-12-12 10:20:40 +11:00
Huw Campbell
670f2d952f
Tests
2016-12-08 10:10:14 +11:00
Huw Campbell
b090b5f073
Make things faster
2016-12-08 10:10:14 +11:00
Huw Campbell
d360438fc0
Update hmatrix
2016-12-08 10:10:13 +11:00
Huw Campbell
ae4de42556
Remove phase. It's not needed
2016-12-04 21:27:59 +11:00
Huw Campbell
114dab4103
Separate Gradient calculation from update
2016-12-02 18:22:35 +11:00
Huw Campbell
3e335a0c76
Merge pull request #8 from HuwCampbell/topic/pad-and-crop-layers
...
Add pad and crop layers, add pad to mnist example
2016-07-07 17:03:24 +10:00
Erik de Castro Lopo
b4df23ef3e
Builds warning free with both ghc 7.10 and 8.0 now
...
Also:
* Upgrade mafia.
* Cabal file: Relax QuickCheck dependency bounds.
2016-07-01 19:29:50 +10:00
Huw Campbell
8b288cca9d
Add pad and crop layers, add pad to mnist example
2016-07-01 12:16:50 +10:00
Erik de Castro Lopo
3fda2d072c
grenade.cabal: Specify BSD2 to match the LICENSE file
2016-06-28 22:08:45 +10:00
Erik de Castro Lopo
705a53affc
grenade.cabal: Tighten up constraints
2016-06-28 21:55:07 +10:00
Huw Campbell
719b3c27ed
Replace licence in cabal file
2016-06-28 09:32:16 +10:00
Huw Campbell
923c9f546e
Add Phase to network, so dropout acts correctly between train and test
2016-06-27 19:03:48 +10:00
Huw Campbell
08afd74cde
Initial commit
2016-06-24 13:20:36 +10:00