|
|
|
|
@@ -95,8 +95,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("basic operation of booster") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
|
|
|
|
|
val booster = trainBooster(trainMat, testMat)
|
|
|
|
|
val predicts = booster.predict(testMat, true)
|
|
|
|
|
@@ -106,8 +106,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
|
|
|
|
|
test("save/load model with path") {
|
|
|
|
|
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val eval = new EvalError
|
|
|
|
|
val booster = trainBooster(trainMat, testMat)
|
|
|
|
|
// save and load
|
|
|
|
|
@@ -123,8 +123,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("save/load model with stream") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val eval = new EvalError
|
|
|
|
|
val booster = trainBooster(trainMat, testMat)
|
|
|
|
|
// save and load
|
|
|
|
|
@@ -139,7 +139,7 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("cross validation") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val params = List("eta" -> "1.0", "max_depth" -> "3", "silent" -> "1", "nthread" -> "6",
|
|
|
|
|
"objective" -> "binary:logistic", "gamma" -> "1.0", "eval_metric" -> "error").toMap
|
|
|
|
|
val round = 2
|
|
|
|
|
@@ -148,8 +148,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test with quantile histo depthwise") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "3", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "depthwise", "eval_metric" -> "auc").toMap
|
|
|
|
|
@@ -158,8 +158,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test with quantile histo lossguide") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "3", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "lossguide", "max_leaves" -> "8", "eval_metric" -> "auc").toMap
|
|
|
|
|
@@ -168,8 +168,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test with quantile histo lossguide with max bin") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "3", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "lossguide", "max_leaves" -> "8", "max_bin" -> "16",
|
|
|
|
|
@@ -179,8 +179,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test with quantile histo depthwidth with max depth") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "0", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "depthwise", "max_leaves" -> "8", "max_depth" -> "2",
|
|
|
|
|
@@ -190,8 +190,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test with quantile histo depthwidth with max depth and max bin") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "0", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "depthwise", "max_depth" -> "2", "max_bin" -> "2",
|
|
|
|
|
@@ -201,7 +201,7 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test training from existing model in scala") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val paramMap = List("max_depth" -> "0", "silent" -> "0",
|
|
|
|
|
"objective" -> "binary:logistic", "tree_method" -> "hist",
|
|
|
|
|
"grow_policy" -> "depthwise", "max_depth" -> "2", "max_bin" -> "2",
|
|
|
|
|
@@ -213,8 +213,8 @@ class ScalaBoosterImplSuite extends AnyFunSuite {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test("test getting number of features from a booster") {
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test")
|
|
|
|
|
val trainMat = new DMatrix("../../demo/data/agaricus.txt.train?format=libsvm")
|
|
|
|
|
val testMat = new DMatrix("../../demo/data/agaricus.txt.test?format=libsvm")
|
|
|
|
|
val booster = trainBooster(trainMat, testMat)
|
|
|
|
|
|
|
|
|
|
TestCase.assertEquals(booster.getNumFeature, 127)
|
|
|
|
|
|