gbm-developers / gbm

Gradient boosted models (the old gbm package)
Other
51 stars 27 forks source link

Test issue for non-Intel architectures #78

Open tillea opened 6 months ago

tillea commented 6 months ago

Hi, after upgrading the Debian package from version 2.1.8.1 to 2.1.9 the CI test we are running on different architectures failed for all non-Intel architectures which you can see in the debci check matrix. When you have a look into one of the test logs - for instance for arm64 you can find the problem is here:

 ----- FAILED[data]: test_least_squares.R<68--69>
  call| expect_true(abs(mean(data2$Y - f.predict)) < 0.01, info = "LS: checking if Gaussian absolute error within tolerance.")
  diff| Expected TRUE, got FALSE
  info| LS: checking if Gaussian absolute error within tolerance.
 ----- FAILED[data]: test_least_squares.R<70--71>
  call| expect_true(sd(data2$Y - f.predict) < sigma, info = "LS: checking if Gaussian squared error within tolerance.")
  diff| Expected TRUE, got FALSE
  info| LS: checking if Gaussian squared error within tolerance.
 Error: 2 out of 5 tests failed
 Execution halted

It might be that relaxing the test condition could help passing this test again but I have to less knowledge about the internals of this package.

Kind regards, Andreas.

tillea commented 4 months ago

Ping?

tillea commented 4 months ago

I wonder if the silence about this bug is connected to the advise to switch to gbm3. Unfortunately there are several packages in Debian (and thus CRAN) that depend on this version of gbm. I wonder whether the issue is visible also on CRAN test builds on non-Intel architectures.

gregridgeway commented 4 months ago

Silence mostly due to day jobs.

Can you try the following:

  1. Install from github if you can't from CRAN, remotes::install_github("gbm-developers/gbm")
  2. Run the test script inst/tinytest/test_least_squares.R
  3. Let us know what the value of best.iter mean(data2$Y - f.predict) sd(data2$Y - f.predict)
tillea commented 4 months ago

Hi Greg,

Am Thu, Apr 25, 2024 at 06:58:14AM -0700 schrieb Greg Ridgeway:

Silence mostly due to day jobs.

Fine. Will be true for me as well in the next couple of weeks. I was just elected as Debian Project Leader and all my packaging duties are left behind a bit. I try to do my best in debugging but it might last some time. l

Can you try the following:

  1. Install from github if you can't from CRAN, remotes::install_github("gbm-developers/gbm")
  2. Run the test script inst/tinytest/test_least_squares.R
  3. Let us know what the value of best.iter mean(data2$Y - f.predict) sd(data2$Y - f.predict)

I put this somewhere on my todo list.