如何在R h2o.ai中执行分层随机分裂



我喜欢ml的h2o.ai工具。它是java,但它很熟悉,做得很好。

以下是关于分层拆分的一般信息:

  • https://en.wikipedia.org/wiki/Stratified_sampling
  • 分层拆分数据

我有一个非常不平衡的变量,所以我需要基于R-gui对该变量的数据进行分层拆分,在h2o.ai中。有办法做到吗?

用于在h2o.ai工具中拆分数据的R命令如下:

splits = h2o.splitFrame(mydata, ratios=myratio, destination_frames=...)

在splitframe变量中没有分层选项。我知道在Flow(运行java的web接口(工具中,它们允许在交叉验证的方法中使用平衡类,所以在其中的某个地方它正在进行分层拆分。

我不喜欢在基本R中这样做,因为R中的内存处理不如在h2o.ai中有效,而且我的数据量很大。

据我所知,您的问题是使用分层采样,因为您的数据严重不平衡

在创建模型时,您可以设置某些参数来实现这一点,例如

h2o.gbm(....., nfolds=n, fold_asssignment="Stratified", fold_column="Your Column")

或者你可以尝试设置

h2o.gbm(..., balance_classes=True, ...)

希望这将对您有所帮助,有关更多详细信息,请参阅https://docs.h2o.ai/h2o/latest-stable/h2o-r/h2o_package.pdf

相关内容

  • 没有找到相关文章

最新更新