如何在H2O python中应用序数回归?

问题描述 投票:1回答:1

我有一个由5个类组成的目标,其中存在序数关系。我想为这个多类分类问题实现序数回归。这是我尝试过的:

train['target'] = train['target'].asfactor()
valid['target'] = valid['target'].asfactor()
test['target'] = test['target'].asfactor()

from h2o.estimators.glm import H2OGeneralizedLinearEstimator

hyper_params_glm = {'alpha': [0.001, 0.003, 0.005, 0.1, 0.3, 0.5, 0.7,0.75,0.8,0.85,0.9,0.95],
                   'missing_values_handling': ["skip", "mean_imputation"]}

ip_grid_glm = H2OGridSearch(model=H2OGeneralizedLinearEstimator(                 
                    standardize = True,
                    family='ordinal', keep_cross_validation_predictions=True, 
                    fold_assignment = "Modulo",lambda_search = True,
                    intercept = True,seed=2345, early_stopping = True, nfolds = 5)
                    ,hyper_params=hyper_params_glm)

ip_grid_glm.train(x=finalFeatures, y='AnsQ1', training_frame=train)

但是我得到了错误:

争论family应该是一个?Enum [“multinomial”,“quasibinomial”,“poisson”,“gamma”,“gaussian”,“tweedie”,“binomial”],得到了弦序数

我还使用asnumeric()将目标类型更改为数字,但是我又得到了相同的错误。

如何为我的多类分类应用序数回归?

编辑:如果我从文件link正确理解,如果我使用超过2个分类值的多项族,那么它会考虑类别的顺序吗?

python-3.x classification h2o
1个回答
1
投票

您使用的是什么版本的H2O? family looks like的“序数”选项在3.18.0.3中添加。

希望http://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/glm.html#logistic-ordinal-regression-ordinal-family回答你的其他问题?它解释了“序数”和“多项”之间的数学差异。

(但我认为你编辑中问题的简短答案是“是”,因为它说:“[它是]变量是谨慎的,如在分类中,但可以按顺序排序。”)

© www.soinside.com 2019 - 2024. All rights reserved.