簡體   English   中英

如何自動使用 h2o automl 非中獎機型的所有 model 參數?

[英]How to automatically employ all the model parameters of non-winning models of h2o automl?

我對 h2o 相當陌生,並試圖了解它。 我目前正在使用 automl 並且從排行榜上的模型中,我決定使用第三個 model 而不是領導者 model

我使用下面的代碼執行此操作,然后獲取特定 model 的參數。 然后我手動檢查與默認參數不同的實際參數,並使用它們來定義我的 model。

#choosing the 3rd model from the leaderboard
chosen_model = h2o.get_model(aml.leaderboard.as_data_frame()['model_id'][2])

#getting the model parameters
chosen_model.params

# example result including only some of the parameters 

{'model_id': {'default': None,
  'actual': {'__meta': {'schema_version': 3,
    'schema_name': 'ModelKeyV3',
    'schema_type': 'Key<Model>'},
   'name': 'GBM_grid_1_AutoML_20191007_170602_model_12',
   'type': 'Key<Model>',
   'URL': '/3/Models/GBM_grid_1_AutoML_20191007_170602_model_12'}},
 'training_frame': {'default': None,
  'actual': {'__meta': {'schema_version': 3,
    'schema_name': 'FrameKeyV3',
    'schema_type': 'Key<Frame>'},
   'name': 'automl_training_py_13_sid_ac88',
   'type': 'Key<Frame>',
   'URL': '/3/Frames/automl_training_py_13_sid_ac88'}},
 'validation_frame': {'default': None,
  'actual': {'__meta': {'schema_version': 3,
    'schema_name': 'FrameKeyV3',
    'schema_type': 'Key<Frame>'},
   'name': 'py_15_sid_ac88',
   'type': 'Key<Frame>',
   'URL': '/3/Frames/py_15_sid_ac88'}},
 'nfolds': {'default': 0, 'actual': 5},
 'keep_cross_validation_models': {'default': True, 'actual': False},
 'keep_cross_validation_predictions': {'default': False, 'actual': True},
 'keep_cross_validation_fold_assignment': {'default': False, 'actual': False},  etc.


# pasting the actual parameters on my model

model = H2OGradientBoostingEstimator(nfolds=5, keep_cross_validation_models=False, keep_cross_validation_predictions= True, score_tree_interval=5, fold_assignment= 'Modulo', ntrees=51, max_depth=12, min_rows=5.0, stopping_metric='deviance', stopping_tolerance = 0.04867923835112355, seed = 47, distribution='gaussian', learn_rate=0.1, sample_rate=0.5, col_sample_rate = 0.7) 

這是一個我必須重復多次的過程,因為我正在為我目前正在從事的項目運行許多 automls。

h2o 上是否已經有代碼可以讓您自動執行此操作? 或者有人知道更有效的方法嗎?

提前非常感謝!

我們還沒有方便的 function 從 Python 中的 H2O model 中獲取非默認參數,但是有一張票可以打開

我的建議是您只需編寫一個 function 來執行此操作(檢查所有參數以查看“默認”和“實際”值是否相同,返回非默認值),因此您可以在任何 model 上重新使用它在將來。 如果您確實編寫了 function,請更新您的帖子,也許我們可以使用您的代碼來完成任務(或隨時創建拉取請求)。 :-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM