Почему в таблице H2O Gains/Lift только 16 строк? Как их следует интерпретировать?
В последней документации H2O говорится, что "данные разделены на группы по квантильным порогам вероятности ответа. Обратите внимание, что число групп по умолчанию равно 20; если имеется менее 20 уникальных значений вероятности, то число групп уменьшается до количество уникальных квантильных порогов ". http://docs.h2o.ai/h2o/latest-stable/h2o-docs/flow.html
Однако в действительности генерируется только 16 строк, даже если во входных данных содержится более 20 уникальных значений вероятности, и неясно, как их следует интерпретировать.
Вы можете увидеть это даже в этом примере кода, который взят непосредственно со страницы справки h2o.gainsLift():
library(h2o)
h2o.init()
prosPath <- system.file("extdata", "prostate.csv", package="h2o")
hex <- h2o.uploadFile(prosPath)
hex[,2] <- as.factor(hex[,2])
model <- h2o.gbm(x = 3:9, y = 2, distribution = "bernoulli",
training_frame = hex, validation_frame = hex, nfolds=3)
h2o.gainsLift(model) ## extract training metrics. Note that there are only 16 rows in the Gains/Lift Table.
h2o.gainsLift(model, valid=TRUE) ## extract validation metrics (here: the same)
h2o.gainsLift(model, xval =TRUE) ## extract cross-validation metrics
h2o.gainsLift(model, newdata=hex) ## score on new data (here: the same)
# Generating a ModelMetrics object
perf <- h2o.performance(model, hex)
h2o.gainsLift(perf) ## extract from existing metrics object. Note that there are still only 16 rows in the Gains/Lift Table.
# There are 380 unique predicted probability values, which is greater than 20.
length(unique(as.data.frame(h2o.predict(model, hex))$p1))
Кроме того, я склонен думать, что эти строки не представляют 16 равномерно распределенных квантилей, учитывая, что "проверки работоспособности" для усиления / подъема, отображаемые на этой странице, включают неравномерные корзины: https://github.com/h2oai/h2o- 3 / BLOB / ведущий / H 2 O-R / Тесты / testdir_jira / runit_pubdev_2372_gainLift.R
Смотрите строку 36 на этой странице, в которой, я считаю, определены ячейки. Они отображаются как: пробники = с (0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,85,0,9,0,95,0,96,0,97,0,98,0,99)
Как мне понять, что отображается в таблице усиления / подъема? Могу ли я настроить отображаемые корзины n-плитки? Я предпочел бы видеть 10 ящиков, в идеале.
Спасибо.
1 ответ
Документация должна содержать 16 групп, а не 20 (изначально по умолчанию было 20 групп, но с тех пор оно было обновлено), я сделал jira билет на проблему, которой вы можете следовать: https://0xdata.atlassian.net/browse/PUBDEV-5709?filter=-2.
Вы не можете изменить квантили, не касаясь Java-кода, но вы можете поместить поднабор в совокупные фракции данных (посмотрите на столбец cumuluative_data_fraction), которые вас интересуют (таблица подъема прироста дает вам больше информации, чем вам может понадобиться).