使用h2o包从R中保存模型时如何指定文件名

4
我正在尝试使用h2o.saveModel()函数保存模型构建,根据H2O R用户手册第159页的函数描述,该参数仅考虑path。我查看了其他类似的函数,如h2o.saveModelDetails(),但它使用相同的参数。请问是否有另一种指定模型名称的方法。

您可以重命名模型的model_path。 - pari
4个回答

4
模型文件的名称将由模型的ID确定。因此,如果您在训练模型时指定了model_id,则可以自定义它。目前无法在训练后更改模型的ID。
保存后可以将文件重新命名:
h2o.saveModel(object = fit, path = path.value, force = TRUE) # force overwriting
name <- file.path(path.value, fileName) # destination file name at the same folder location
file.rename(file.path(path.value, fit@model_id), name)

嗨,David,可以告诉我代码中所指的名称是什么吗? name <- file.path(path.value, fileName),file,path,fileName - hanzgs

2

在Python中:

model_path = h2o.save_model(model=model, path="mymodel1", force=True)
path = os.path.dirname(os.path.abspath(model_path))
os.rename(model_path, os.path.join(path,f'h2o_new_name'))

2
我认为更好的解决方法是每次保存模型时生成一个唯一的文件夹。当加载模型时,路径下始终只有一个模型文件。
saved_model = os.path.join('UNIQUE_MODEL_PATH', os.listdir('UNIQUE_MODEL_PATH')[0])
loaded_model = h2o.load_model(saved_model)

0

这里有一个可能的方法:

output_dir <-getwd()
DRF_MO <- h2o.saveModel(object=aml, path=output_dir, force=TRUE)
DRF_MO <- file.path(output_dir, aml@algorithm) 
file.rename(file.path(output_dir, aml@model_id), DRF_MO)

它只是将结果文件重命名为用户选择的名称(这里是 DRF_MO)。 - Holger Brandl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接