The hmatrix-backprop package

[ Tags: bsd3, library, math ] [ Propose Tags ]

hmatrix operations lifted for backprop.

Meant to act as a drop-in replacement to the API of Numeric.LinearAlgebra.Static. Just change your imports, and your functions are automatically backpropagatable.

See README on Github at https://github.com/mstksg/hmatrix-backprop#readme


[Skip to Readme]

Properties

Versions 0.1.0.0
Change log CHANGELOG.md
Dependencies ANum (>=0.2), backprop (>=0.1.2), base (>=4.7 && <5), ghc-typelits-knownnat, ghc-typelits-natnormalise, hmatrix (>=0.18), hmatrix-vector-sized (>=0.1), microlens, vector, vector-sized (>=0.6) [details]
License BSD3
Copyright (c) Justin Le 2018
Author Justin Le
Maintainer justin@jle.im
Category Math
Home page https://github.com/mstksg/hmatrix-backprop#readme
Bug tracker https://github.com/mstksg/hmatrix-backprop/issues
Source repo head: git clone https://github.com/mstksg/hmatrix-backprop
Uploaded Sun Feb 11 06:40:28 UTC 2018 by jle
Distributions NixOS:0.1.0.0, Stackage:0.1.0.0
Downloads 23 total (23 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-02-11 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for hmatrix-backprop-0.1.0.0

[back to package description]

hmatrix-backprop

hmatrix-backprop on Hackage Build Status

hmatrix operations lifted for backprop.

Meant to act as a drop-in replacement to the API of Numeric.LinearAlgebra.Static. Just change your imports, and your functions are automatically backpropagatable. Useful types are all re-exported.

Formulas for gradients come from the following papers:

Some functions are not yet implemented! See module documentation for details. PR's definitely appreciated :)

Tests

Currently numeric tests are implemented as property tests using hedgehog, but it is possible that the answers might differ from the true values by an amount undetectable by property tests.

All functions currently are tested except for the higher-order functions.

They are tested by "nudging" components of inputs and checking if the change in the function outputs match what is expected from the backpropagated gradient.

TODO

Apart from the exact API of hmatrix, it'd be nice to have:

  1. Statically sized convolutions. Should probably add this to hmatrix instead first, though.