Как интерпретировать прогноз H2ORF для регрессионных задач? - PullRequest
1 голос
/ 25 сентября 2019

Меня смущает вывод модели H2ORandomForestEstimator.

Итак, моя задача - прогнозировать цену дома, что является регрессионной задачей.

обучение:

model = H2ORandomForestEstimator(ntrees=100, max_depth=20,mtries=-1, seed=42, score_each_iteration=True)
model.train(x=features, y=target, training_frame=train_frame)

данные имеют около 80 функций

иЯ предсказываю на тестовых данных, которые содержат 1495 строк (точками данных)

log_predict = model.predict(test_frame)

, но форма log_predict - (1459, 656), что действительно сбивает с толку, и это скриншотвывод: картинка (извините, я пока не могу вставить картинку ...)

Что означает число 656?И есть ли какой-нибудь удобный способ преобразовать его в массив (1459,1)?

Заранее спасибо!

1 Ответ

0 голосов
/ 26 сентября 2019

Я думаю, что вы преобразовали свой столбец ответов в столбец факторов (я не могу сказать наверняка, потому что у вас нет всего вашего кода там), поэтому он выполняет классификацию вместо регрессии.На снимке экрана с выводом прогноза показан вывод мультикласса (с 655 "классами").

Также возможно, что в числах в файле CSV есть кавычки, а H2O интерпретирует их как категории, а не числа.Вам нужно будет преобразовать столбец ответа обратно в числовое значение, а затем повторно обучить вашу модель:

train_frame[target] = train_frame[target].asnumeric()
...