about summary refs log tree commit diff
path: root/pkgs/applications/science/machine-learning
diff options
context:
space:
mode:
authorSebastián Mancilla <smancill@smancill.dev>2023-05-21 21:30:33 -0400
committerSebastián Mancilla <smancill@smancill.dev>2023-05-21 22:34:01 -0400
commit70b3662a675b2a439eae1251532e4fe9daeb31ae (patch)
treea826310e7fb90026829703e325a2f6746f48eadd /pkgs/applications/science/machine-learning
parent61fc2d2c898a7d84936f53058239aa5af24c5f16 (diff)
shogun: disable broken test
Shogun has been broken for a while [0].

Looks like the latest update to openblas, by f07a0615ea8 (openblas:
0.3.20 -> 0.3.21, 2022-08-10), broke the `libshogun-mathematics_lapack`
example. It calculates the eigenvectors for a matrix, but the assertions
now fail:

    compute_eigenvectors
    A=[
    [       -0.500000000000000111,  0.707106781186547351,   0.5],
    [       0.707106781186547351,   1.04083408558608426e-16,        0.707106781186547129],
    [       -0.499999999999999722,  -0.707106781186547462,  0.5]
    ]
    eigenvalues=[-1.41421356237309492,1.04083408558608426e-17,1.41421356237309492]
    terminate called after throwing an instance of 'shogun::ShogunException'

The darwin build output shows a bit more detail:

    assertion is_equal(A(0,0), 0.5, eps) failed in void test_ev()
    file /tmp/nix-build-shogun-6.1.4.drv-0/source/examples/undocumented/libshogun/mathematics_lapack.cpp
    line 49

Disable the test to fix the build, although the results seem "correct".
It appears that openblas now calculates values with slightly less
precision, thus the assertion fails due to the expected epsilon.

[0]: https://hydra.nixos.org/build/194671473
Diffstat (limited to 'pkgs/applications/science/machine-learning')
-rw-r--r--pkgs/applications/science/machine-learning/shogun/default.nix2
1 files changed, 2 insertions, 0 deletions
diff --git a/pkgs/applications/science/machine-learning/shogun/default.nix b/pkgs/applications/science/machine-learning/shogun/default.nix
index fdaec82490dbb..d25bc06385ea9 100644
--- a/pkgs/applications/science/machine-learning/shogun/default.nix
+++ b/pkgs/applications/science/machine-learning/shogun/default.nix
@@ -136,6 +136,8 @@ stdenv.mkDerivation rec {
     excludeTestsRegex = lib.concatStringsSep "|" [
       # sporadic segfault
       "TrainedModelSerialization"
+      # broken by openblas 0.3.21
+      "mathematics_lapack"
       # these take too long on CI
       "evaluation_cross_validation"
       "modelselection_combined_kernel"