我遇到的问题如下:
我有一个约有1000万行的csv文件。这样,我想使用许多交互项进行线性回归。最终,我将进行3000次此类交互。因此,手动创建它们会得到形状(10mio,3000)的数据集,该数据集不再适合内存。此外,在拟合之前,我需要先将这些交互项居中。
固定效果是不可能的,因为交互包含连续变量而不是真正的虚拟变量(它们将大部分为0,大约1和少量0.5)。
我现在的计划如下:
partial_fit()
属性的随机梯度下降(https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.SGDRegressor.html#sklearn.linear_model.SGDRegressor)来拟合模型,以使其在循环中分部进行。我也知道其他更新方式(https://dahtah.wordpress.com/2011/11/29/rank-one-updates-for-faster-matrix-inversion/),但尚未找到python的实现?您认为这是一个合理的计划吗?