Создание экземпляра H2OGeneralizedLinearEstimator из существующих коэффициентов - PullRequest
0 голосов
/ 27 марта 2019

У меня есть набор коэффициентов из обученной модели, но у меня нет доступа к самой модели или к учебному набору данных.Я хотел бы создать экземпляр H2OGeneralizedLinearEstimator и установить коэффициенты вручную, чтобы использовать модель для прогнозирования.

Первое, что я попробовал, было (это пример воспроизведения ошибки):

import h2o
from h2o.estimators.glm import H2OGeneralizedLinearEstimator
from h2o.frame import H2OFrame
h2o.init()

# creating some test dataset
test = {"x":[0,1,2], "y":[0,0,1]}
df = H2OFrame(python_obj=test)
glm = H2OGeneralizedLinearEstimator(family='binomial', model_id='logreg')
# setting the coefficients
glm.coef = {'Intercept':0, 'x':1}
# predict
glm.predict(test_data=df)

Это приводит к ошибке:

H2OResponseError: Ошибка сервераwater.exceptions.H2OKeyNotFoundArgumentException: ошибка: объект 'logreg' не найден в функции: прогноз для аргумента: модель

Я также попытался установить ключи glm.params на основе ключей аналогичной обученной модели:

for key in trained.params.keys():
    glm.params.__setitem__(key, trained.params[key])

но это не заполняет glm.params (glm.params = {}).

1 Ответ

0 голосов
/ 05 апреля 2019

Похоже, вы хотите использовать функцию makeGLMModel

Это дополнительно описано в документации , и я сделаю репост здесь для вашего удобства:

Изменение или создание пользовательской модели GLM

В R и python вызов makeGLMModel может использоваться для создания модели H2O из заданных коэффициентов.Для извлечения информации о наборе данных необходима исходная модель GLM, обученная на том же наборе данных.Чтобы создать собственную модель GLM из R или Python:

  • R: вызовите h2o.makeGLMModel.Это принимает модель, вектор коэффициентов и (необязательный) порог принятия решения в качестве параметров.
  • Pyton: H2OGeneralizedLinearEstimator.makeGLMModel (статический метод) принимает модель, словарь, содержащий коэффициенты, и (необязательный) порог принятия решения какпараметры.
...