Huw Campbell
88021fbde7
Better testing
2016-12-15 20:04:45 +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
70e9b83b04
Remove unneeded function
2016-12-13 11:09:35 +11:00
Huw Campbell
fc958630c4
Merge pull request #16 from HuwCampbell/topic/performance
...
Topic/performance
2016-12-13 11:01:35 +11:00
Huw Campbell
bacfa8145b
Update REAMDE and use type synonyms
2016-12-13 10:59:29 +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
1ec65a414f
Add stupidly fast col2im
2016-12-13 01:11:18 +11:00
Huw Campbell
3830e55a7c
Add stupidly fast im2col in c
2016-12-12 23:35:00 +11:00
Huw Campbell
f04bfebfee
Speed up im2col, vid2col.
...
Each point on the output is written to precisely once, so we don't
need to initialise it or use an additive update modifier.
2016-12-12 12:59:41 +11:00
Huw Campbell
bd881faf2b
Add some benchmarks
2016-12-12 10:20:40 +11:00
Huw Campbell
c0bb69de3b
Update README
2016-12-09 22:48:41 +11:00
Huw Campbell
2cffa4a568
Merge pull request #14 from HuwCampbell/topic/performance
...
Topic/performance
2016-12-09 22:04:50 +11:00
Huw Campbell
267ebc2080
Optimise poolForwardFit
2016-12-09 22:03:29 +11:00
Huw Campbell
b914b91c1f
Reimplement pooling backwards for speed
2016-12-09 22:03:29 +11:00
Huw Campbell
bbd29e71bd
Make ST modifications strict
2016-12-09 22:03:29 +11:00
Huw Campbell
8b3ca1e0b6
Merge pull request #13 from HuwCampbell/topic/performance
...
Topic/performance
2016-12-09 10:44:51 +11:00
Huw Campbell
a29afe8603
Replace dodgy sequence
2016-12-09 09:17:23 +11:00
Huw Campbell
eb179d071b
Add another test
2016-12-08 21:11:50 +11:00
Huw Campbell
24289dba41
Add faster maxIndex and maxElement for matrices
2016-12-08 21:07:18 +11:00
Huw Campbell
ff20855676
Minor changes
2016-12-08 10:32:07 +11:00
Huw Campbell
2433e1fba2
Remove old functions
2016-12-08 10:10:14 +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
2cb93c6a5b
Use ExceptT in mnist
2016-12-08 10:10:04 +11:00
Huw Campbell
3f7cf7f9a6
Merge pull request #12 from HuwCampbell/topic/gradients
...
Topic/gradients
2016-12-07 09:16:05 +11:00
Huw Campbell
8cd875a62d
Update types in README
2016-12-06 21:07:38 +11:00
Huw Campbell
a87fde1a90
Simplify, start working toward randomNet again
2016-12-06 17:27:49 +11:00
Huw Campbell
ae4de42556
Remove phase. It's not needed
2016-12-04 21:27:59 +11:00
Huw Campbell
109d5be3ca
Nicer types, and better regulariser so mnist actually works
2016-12-04 11:20:27 +11:00
Huw Campbell
70fbac3924
Merge pull request #11 from HuwCampbell/topic/learning-separation
...
Topic/learning separation
2016-12-04 11:19:24 +11:00
Huw Campbell
dfbb6c17b8
Remove pad from MNIST example, tidy ups
2016-12-03 00:04:01 +11:00
Huw Campbell
ca4b0fe912
Purity is the best option
...
I had a basic monadic interface on, thinking that it might be nice
to use for dropout and the like.
In retrospect I think that was too heavy. Being a purely functional
heterogeneous list, substituting layers is easy, so it one wants to
do that using MonadRandom it can still be done.
2016-12-02 23:44:29 +11:00
Huw Campbell
b01ef9f74e
Simpler type
2016-12-02 20:43:31 +11:00
Huw Campbell
cd4598bee8
Remove Typeable, fix tests
2016-12-02 19:14:37 +11:00
Huw Campbell
114dab4103
Separate Gradient calculation from update
2016-12-02 18:22:35 +11:00
Huw Campbell
cef1b14268
Add P
2016-12-02 15:24:12 +11:00
Huw Campbell
be61f9b762
Merge pull request #10 from angerman/patch-2
...
Update README.md
2016-10-17 21:14:29 +11:00
Moritz Angermann
b2136e9751
Update README.md
...
Add links to Justin Le and the practical dependent types in haskell blog post, so others don't have to jump through google to find the relevant links :-)
2016-10-17 18:10:13 +08: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
Huw Campbell
a5398f7ec7
Merge pull request #7 from erikd/master
...
Now builds with ghc 7.10 and 8.0
2016-07-01 20:00:06 +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
Huw Campbell
047ee6a08c
Fixup README link
2016-06-29 20:55:02 +10:00
Huw Campbell
2bd9f46aa1
Merge pull request #4 from erikd/master
...
Add .gitignore and add minimal build documentation
2016-06-29 20:53:52 +10:00
Erik de Castro Lopo
4ef66b7569
README.md: Minimal build instructions
2016-06-29 20:47:22 +10:00
Erik de Castro Lopo
c719fe0df8
Add .gitignore
2016-06-29 20:24:06 +10:00
Huw Campbell
b8e0450cbd
Merge pull request #3 from erikd/master
...
Couple of minor fixes
2016-06-28 22:33:49 +10:00
Erik de Castro Lopo
3fda2d072c
grenade.cabal: Specify BSD2 to match the LICENSE file
2016-06-28 22:08:45 +10:00