我正在使用h2o训练一组glm
模型,其中非常稀疏训练矩阵(4million x 50k
)相同,但是每个模型的响应变量(y)不同。我正在使用的步骤是
scipy.sparse.csc_matrix
是使用表[时间:<5s]]创建的>train_h2o_orig = h2o.H2OFrame(csc_matrix)
for y in cols:
train_h2o = train_h2o_orig.cbind(h2o.H2OFrame(y))
train_h2o[-1] = train_h2o[-1].asfactor()
glm_h2o = H2PGeneralizedLinearEstimator(family="binomial", nfolds=4, nlambdas=20,
lambda_search=True, max_active_predictors=100, seed=12345)
glm_h2o.train(y=train_h2o.names[-1], training_frame=train_h2o)
问题:
是否有GLM模型训练函数的版本,可以分别提供训练矩阵和响应向量(如H2OFrame
s,因此我不必绑定和复制帧。
这里最慢的步骤是`h2o.H2OFrame(。)(> 30分钟)。是否有更有效的稀疏矩阵格式(csc?coo?csr?)
过去,我更喜欢编写SVMLight文件并将其读回。但是,我必须在磁盘上创建20个磁盘,然后将其读回。是否创建一种没有响应变量的文件创建方法?
设置:32核,512GB内存,RHEL7(单用户)/ Python 3.6.9 / h2o 3.30.0.2/jre 1.8.0_251
我正在使用h2o训练一组glm模型,其中非常稀疏的训练矩阵(400万x 50k)相同,但是每个模型的响应变量(y)不同。我正在使用的步骤是...
您的问题的答案: