aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFis Trivial <ybbs.daans@hotmail.com>2018-04-28 03:47:03 +0000
committerLudovic Courtès <ludo@gnu.org>2018-04-28 23:33:50 +0200
commit2dab4188ec69be8cb41594516cc8a484b984bdc9 (patch)
tree70d0f60d15ad0eb1c01ad6bc4019d0e95944745a
parent3c2d267f4b0c47893c65d6fa14e4c52b6cda7d61 (diff)
downloadguix-2dab4188ec69be8cb41594516cc8a484b984bdc9.tar
guix-2dab4188ec69be8cb41594516cc8a484b984bdc9.tar.gz
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.scm44
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))