Commit Graph

70 Commits

Author SHA1 Message Date
Huw Campbell
df75beee8d Missing test file 2017-01-19 19:49:13 +11:00
Huw Campbell
2369ec3407 Merge pull request #15 from HuwCampbell/topic/cereal
Add very basic model saving and loading
2017-01-19 19:06:36 +11:00
Huw Campbell
7c4916409d Add command line parameters for shakespeare example 2017-01-19 19:04:15 +11:00
Huw Campbell
bcd1856988 Update LSTM 2017-01-19 18:56:22 +11:00
Huw Campbell
48263cd9e2 Update README.md
Add recurrent
2017-01-17 19:47:39 +11:00
Huw Campbell
4dc408f39d Add very basic model saving and loading 2017-01-16 10:16:40 +11:00
Huw Campbell
20e7e483d7 Fix 7.10 builds 2017-01-16 00:29:25 +11:00
Huw Campbell
cc70f1fc0c Merge pull request #18 from HuwCampbell/topic/recurrent
Recurrent nets and other changes
2017-01-14 21:16:48 +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
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