diff options
author | Lester Solbakken <lesters@oath.com> | 2019-09-11 10:28:53 +0200 |
---|---|---|
committer | Lester Solbakken <lesters@oath.com> | 2019-09-11 10:28:53 +0200 |
commit | 45e26313812710cf7cfd56af3b14ddf8a9d7a82c (patch) | |
tree | d0779ed5f8a8258c817c21a6b3651ec4f5722d13 /model-integration/src/test | |
parent | 32feba98fc8ec7dc1ca0fccd14af267765bdca95 (diff) |
Add temporary test of xgboost missing field if-inversion
Diffstat (limited to 'model-integration/src/test')
-rw-r--r-- | model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java | 13 | ||||
-rw-r--r-- | model-integration/src/test/models/xgboost/xgboost.2.2.if_inversion.json | 19 |
2 files changed, 32 insertions, 0 deletions
diff --git a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java index 6d54b63db4b..6d75b9f40ff 100644 --- a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java +++ b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java @@ -25,4 +25,17 @@ public class XGBoostImportTestCase { assertEquals(1, model.outputExpressions().size()); } + @Test + public void testXGBoostWithIfInversion() { + ImportedModel model = new XGBoostImporter().importModel("test", "src/test/models/xgboost/xgboost.2.2.if_inversion.json"); + assertTrue("All inputs are scalar", model.inputs().isEmpty()); + assertEquals(1, model.expressions().size()); + RankingExpression expression = model.expressions().get("test"); + assertNotNull(expression); + assertEquals("if (f29 < -0.1234567, if (!(f56 >= -0.242398), 1.71218, -1.70044), if (f109 < 0.8723473, -1.94071, 1.85965)) + if (f60 < -0.482947, if (!(f29 >= -4.2387498), 0.784718, -0.96853), -6.23624)", + expression.getRoot().toString()); + assertEquals(1, model.outputExpressions().size()); + } + + } diff --git a/model-integration/src/test/models/xgboost/xgboost.2.2.if_inversion.json b/model-integration/src/test/models/xgboost/xgboost.2.2.if_inversion.json new file mode 100644 index 00000000000..c1217ef55a6 --- /dev/null +++ b/model-integration/src/test/models/xgboost/xgboost.2.2.if_inversion.json @@ -0,0 +1,19 @@ +[ + { "nodeid": 0, "depth": 0, "split": "f29", "split_condition": -0.1234567, "yes": 1, "no": 2, "missing": 2, "children": [ + { "nodeid": 1, "depth": 1, "split": "f56", "split_condition": -0.242398, "yes": 3, "no": 4, "missing": 3, "children": [ + { "nodeid": 3, "leaf": 1.71218 }, + { "nodeid": 4, "leaf": -1.70044 } + ]}, + { "nodeid": 2, "depth": 1, "split": "f109", "split_condition": 0.8723473, "yes": 5, "no": 6, "missing": 6, "children": [ + { "nodeid": 5, "leaf": -1.94071 }, + { "nodeid": 6, "leaf": 1.85965 } + ]} + ]}, + { "nodeid": 0, "depth": 0, "split": "f60", "split_condition": -0.482947, "yes": 1, "no": 2, "missing": 2, "children": [ + { "nodeid": 1, "depth": 1, "split": "f29", "split_condition": -4.2387498, "yes": 3, "no": 4, "missing": 3, "children": [ + { "nodeid": 3, "leaf": 0.784718 }, + { "nodeid": 4, "leaf": -0.96853 } + ]}, + { "nodeid": 2, "leaf": -6.23624 } + ]} +]
\ No newline at end of file |