diff options
author | Fis Trivial <ybbs.daans@hotmail.com> | 2018-04-28 03:47:03 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2018-04-28 23:33:50 +0200 |
commit | 2dab4188ec69be8cb41594516cc8a484b984bdc9 (patch) | |
tree | 70d0f60d15ad0eb1c01ad6bc4019d0e95944745a | |
parent | 3c2d267f4b0c47893c65d6fa14e4c52b6cda7d61 (diff) |
gnu: Add python-autograd
* gnu/packages/machine-learning.scm (python-autograd, python2-autograd): New
variables.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r-- | gnu/packages/machine-learning.scm | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 12384a1031..f0d35484ea 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Mark Meyer <mark@ofosos.org> ;;; Copyright © 2018 Ben Woodcroft <donttrustben@gmail.com> +;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -688,3 +689,46 @@ mining and data analysis.") (define-public python2-scikit-learn (package-with-python2 python-scikit-learn)) + +(define-public python-autograd + (let* ((commit "442205dfefe407beffb33550846434baa90c4de7") + (revision "0") + (version (git-version "0.0.0" revision commit))) + (package + (name "python-autograd") + (home-page "https://github.com/HIPS/autograd") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "189sv2xb0mwnjawa9z7mrgdglc1miaq93pnck26r28fi1jdwg0z4")) + (file-name (git-file-name name version)))) + (version version) + (build-system python-build-system) + (native-inputs + `(("python-nose" ,python-nose) + ("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-future" ,python-future) + ("python-numpy" ,python-numpy))) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "py.test" "-v")))))) + (synopsis "Efficiently computes derivatives of NumPy code") + (description "Autograd can automatically differentiate native Python and +NumPy code. It can handle a large subset of Python's features, including loops, +ifs, recursion and closures, and it can even take derivatives of derivatives +of derivatives. It supports reverse-mode differentiation +(a.k.a. backpropagation), which means it can efficiently take gradients of +scalar-valued functions with respect to array-valued arguments, as well as +forward-mode differentiation, and the two can be composed arbitrarily. The +main intended application of Autograd is gradient-based optimization.") + (license license:expat)))) + +(define-public python2-autograd + (package-with-python2 python-autograd)) |