我想知道我在这里是否做错了什么,我找不到能解释使用Dask ML设置线性回归的先决条件的文档。
我有一个名为Facts
的dask数据框,
def train_model(facts, features_cols, target):
"""
Train linear regression model from fact table
Parameters
---------
facts: Dask Dataframe
Set of data to be used for features and target
feature_cols: Array<column_names>
Array of column names to be loaded as features
target: string<column_name>
Name of column to be used as target
Returns
-------
model: Linear Regresssion
Linear Regression model trained on features
"""
features = facts[features_cols].values
target = facts[[target]].values
model = LinearRegression()
model.fit(features, target)
return model
如果我在特征和目标上调用计算并使用sklearn中的LinearRegression
,它将在预期的时间内计算。在Dask ML中,看起来好像有大量的数据(数量级大于所使用的所有数据的总和)被加载到内存中。我对此一无所知,所以我缺少什么吗?在将值提交到线性回归之前,我必须计算值吗?