unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#31432] [PATCH 0/2] gnu: Add lightgbm and vowpal-wabbit.
@ 2018-05-12 15:19 Fis Trivial
  2018-05-12 15:21 ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Fis Trivial @ 2018-05-12 15:19 UTC (permalink / raw)
  To: 31432


Language bindings are not enabled for vowpal-wabbit, it requires
rewritting the build code. Anyway, it has a fully featured command line
interface, so the language bindings can wait.

GPU support is not enabled for lightgbm, as GUIX doesn't have GPU
toolchain. I put this in the package features description.

I will send the two packages in one thread although they are not related
in the dependency tree. If you prefer me to send those with different
thread, just tell me. :)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#31432] [PATCH 1/2] gnu: Add lightgbm.
  2018-05-12 15:19 [bug#31432] [PATCH 0/2] gnu: Add lightgbm and vowpal-wabbit Fis Trivial
@ 2018-05-12 15:21 ` Fis Trivial
  2018-05-12 15:22 ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
  2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
  2 siblings, 0 replies; 7+ messages in thread
From: Fis Trivial @ 2018-05-12 15:21 UTC (permalink / raw)
  To: 31432@debbugs.gnu.org


* gnu/packages/machine-learning.scm (lightgbm): New variable.
---
 gnu/packages/machine-learning.scm | 48 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index f0d35484e..ac4fa8129 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -45,6 +45,7 @@
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages image)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages mpi)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -732,3 +733,50 @@ main intended application of Autograd is gradient-based optimization.")
 
 (define-public python2-autograd
   (package-with-python2 python-autograd))
+
+(define-public lightgbm
+  (package
+    (name "lightgbm")
+    (version "2.0.12")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/Microsoft/LightGBM/archive/v"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "132zf0yk0545mg72hyzxm102g3hpb6ixx9hnf8zd2k55gas6cjj1"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (native-inputs
+     `(("python-nose" ,python-nose)
+       ("python-pytest" ,python-pytest)))
+    (inputs
+     `(("openmpi" ,openmpi)))
+    (propagated-inputs
+     `(("python-numpy" ,python-numpy)
+       ("python-scipy" ,python-scipy)))
+    (arguments
+     `(#:configure-flags
+       '("-DUSE_MPI=ON")
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key outputs #:allow-other-keys)
+             (chdir "../LightGBM-2.0.12/")
+             (invoke "pytest" "tests/c_api_test/test_.py")
+             (chdir "../build"))))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/Microsoft/LightGBM")
+    (synopsis "Gradient boosting framework based on decision tree algorithms")
+    (description "LightGBM is a gradient boosting framework that uses tree
+based learning algorithms.  It is designed to be distributed and efficient with
+the following advantages:
+
+@itemize
+@item Faster training speed and higher efficiency
+@item Lower memory usage
+@item Better accuracy
+@item Parallel and GPU learning supported (not enabled in this package)
+@item Capable of handling large-scale data
+@end itemize\n")
+    (license license:expat)))
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit.
  2018-05-12 15:19 [bug#31432] [PATCH 0/2] gnu: Add lightgbm and vowpal-wabbit Fis Trivial
  2018-05-12 15:21 ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
@ 2018-05-12 15:22 ` Fis Trivial
  2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
  2 siblings, 0 replies; 7+ messages in thread
From: Fis Trivial @ 2018-05-12 15:22 UTC (permalink / raw)
  To: 31432@debbugs.gnu.org


* gnu/packages/machine-learning.scm (vowpal-wabbit): New variable.
---
 gnu/packages/machine-learning.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index ac4fa8129..57e308e66 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -780,3 +780,33 @@ the following advantages:
 @item Capable of handling large-scale data
 @end itemize\n")
     (license license:expat)))
+
+(define-public vowpal-wabbit
+  ;; Language bindings not included.
+  (package
+    (name "vowpal-wabbit")
+    (version "8.5.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/JohnLangford/vowpal_wabbit/archive/"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "0clp2kb7rk5sckhllxjr5a651awf4s8dgzg4659yh4hf5cqnf0gr"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (inputs
+     `(("boost" ,boost)
+       ("zlib" ,zlib)))
+    (arguments
+     `(#:configure-flags
+       (list (string-append "--with-boost="
+                            (assoc-ref %build-inputs "boost")))))
+    (build-system gnu-build-system)
+    (home-page "https://github.com/JohnLangford/vowpal_wabbit")
+    (synopsis "Machine learning system which pushes the frontier of machine
+learning")
+    (description "Vowpal Wabbit is a machine learning system which pushes the
+frontier of machine learning with techniques such as online, hashing,
+allreduce, reductions, learning2search, active, and interactive learning. ")
+    (license license:bsd-3)))
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#31432] Resend the patches (lightgbm and vowpal-wabbit).
  2018-05-12 15:19 [bug#31432] [PATCH 0/2] gnu: Add lightgbm and vowpal-wabbit Fis Trivial
  2018-05-12 15:21 ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
  2018-05-12 15:22 ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
@ 2018-06-12  9:58 ` Fis Trivial
  2018-06-12 10:01   ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
                     ` (2 more replies)
  2 siblings, 3 replies; 7+ messages in thread
From: Fis Trivial @ 2018-06-12  9:58 UTC (permalink / raw)
  To: 31432@debbugs.gnu.org


The new patches rephrase synopsis, use `with-directory-excursion'.

fis (2):
  gnu: Add lightgbm.
  gnu: Add vowpal-wabbit.

 gnu/packages/machine-learning.scm | 76 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 76 insertions(+)

--
2.14.4

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#31432] [PATCH 1/2] gnu: Add lightgbm.
  2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
@ 2018-06-12 10:01   ` Fis Trivial
  2018-06-12 10:02   ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
  2018-06-14 20:19   ` bug#31432: Resend the patches (lightgbm and vowpal-wabbit) Ludovic Courtès
  2 siblings, 0 replies; 7+ messages in thread
From: Fis Trivial @ 2018-06-12 10:01 UTC (permalink / raw)
  To: Fis Trivial; +Cc: 31432@debbugs.gnu.org


* gnu/packages/machine-learning.scm (lightgbm): New variable.
---
 gnu/packages/machine-learning.scm | 47 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 15e4d4574..499248965 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -47,6 +47,7 @@
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages image)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages mpi)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -786,3 +787,49 @@ main intended application of Autograd is gradient-based optimization.")

 (define-public python2-autograd
   (package-with-python2 python-autograd))
+
+(define-public lightgbm
+  (package
+    (name "lightgbm")
+    (version "2.0.12")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/Microsoft/LightGBM/archive/v"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "132zf0yk0545mg72hyzxm102g3hpb6ixx9hnf8zd2k55gas6cjj1"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-nose" ,python-nose)))
+    (inputs
+     `(("openmpi" ,openmpi)))
+    (propagated-inputs
+     `(("python-numpy" ,python-numpy)
+       ("python-scipy" ,python-scipy)))
+    (arguments
+     `(#:configure-flags
+       '("-DUSE_MPI=ON")
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key outputs #:allow-other-keys)
+             (with-directory-excursion ,(string-append "../LightGBM-" version)
+               (invoke "pytest" "tests/c_api_test/test_.py")))))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/Microsoft/LightGBM")
+    (synopsis "Gradient boosting framework based on decision tree algorithms")
+    (description "LightGBM is a gradient boosting framework that uses tree
+based learning algorithms.  It is designed to be distributed and efficient with
+the following advantages:
+
+@itemize
+@item Faster training speed and higher efficiency
+@item Lower memory usage
+@item Better accuracy
+@item Parallel and GPU learning supported
+@item Capable of handling large-scale data
+@end itemize\n")
+    (license license:expat)))
--
2.14.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit.
  2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
  2018-06-12 10:01   ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
@ 2018-06-12 10:02   ` Fis Trivial
  2018-06-14 20:19   ` bug#31432: Resend the patches (lightgbm and vowpal-wabbit) Ludovic Courtès
  2 siblings, 0 replies; 7+ messages in thread
From: Fis Trivial @ 2018-06-12 10:02 UTC (permalink / raw)
  To: Fis Trivial; +Cc: 31432@debbugs.gnu.org


* gnu/packages/machine-learning.scm (vowpal-wabbit): New variable.
---
 gnu/packages/machine-learning.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 499248965..6ed5d20ef 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -833,3 +833,32 @@ the following advantages:
 @item Capable of handling large-scale data
 @end itemize\n")
     (license license:expat)))
+
+(define-public vowpal-wabbit
+  ;; Language bindings not included.
+  (package
+    (name "vowpal-wabbit")
+    (version "8.5.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/JohnLangford/vowpal_wabbit/archive/"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "0clp2kb7rk5sckhllxjr5a651awf4s8dgzg4659yh4hf5cqnf0gr"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (inputs
+     `(("boost" ,boost)
+       ("zlib" ,zlib)))
+    (arguments
+     `(#:configure-flags
+       (list (string-append "--with-boost="
+                            (assoc-ref %build-inputs "boost")))))
+    (build-system gnu-build-system)
+    (home-page "https://github.com/JohnLangford/vowpal_wabbit")
+    (synopsis "Fast machine learning library for online learning")
+    (description "Vowpal Wabbit is a machine learning system with techniques
+such as online, hashing, allreduce, reductions, learning2search, active, and
+interactive learning.")
+    (license license:bsd-3)))
--
2.14.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#31432: Resend the patches (lightgbm and vowpal-wabbit).
  2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
  2018-06-12 10:01   ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
  2018-06-12 10:02   ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
@ 2018-06-14 20:19   ` Ludovic Courtès
  2 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2018-06-14 20:19 UTC (permalink / raw)
  To: Fis Trivial; +Cc: 31432@debbugs.gnu.org

Hello,

Fis Trivial <ybbs.daans@hotmail.com> skribis:

> The new patches rephrase synopsis, use `with-directory-excursion'.
>
> fis (2):
>   gnu: Add lightgbm.
>   gnu: Add vowpal-wabbit.

Sorry for the looong delay.  Applied now, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-06-14 20:20 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-12 15:19 [bug#31432] [PATCH 0/2] gnu: Add lightgbm and vowpal-wabbit Fis Trivial
2018-05-12 15:21 ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
2018-05-12 15:22 ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
2018-06-12  9:58 ` [bug#31432] Resend the patches (lightgbm and vowpal-wabbit) Fis Trivial
2018-06-12 10:01   ` [bug#31432] [PATCH 1/2] gnu: Add lightgbm Fis Trivial
2018-06-12 10:02   ` [bug#31432] [PATCH 2/2] gnu: Add vowpal-wabbit Fis Trivial
2018-06-14 20:19   ` bug#31432: Resend the patches (lightgbm and vowpal-wabbit) Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).