我可以在逻辑回归中拥有太多特征吗?
Can i have too many features in a logistic regression?
我正在构建一个模型,根据 data set 的 170 万条记录来预测纽约街头的行人伤亡情况。我决定从 ON STREET NAME
列中构建虚拟特征,以查看可能提供的预测能力。这样,我就有了大约 7500 个特征。
我试过 运行,我立即收到 Jupyter 内核死机的警告。再次尝试,同样的事情发生了。考虑到模型拟合需要多长时间,以及计算机运行的热度,当我尝试拟合 100 个特征时,我只能假设 LogisticRegression()
不适合处理这样的特征集。
两个问题:
- 是这样吗,逻辑回归是为了处理更小的特征集吗?
- 有没有什么方法可以减轻这种情况,并在这样的特征集上应用逻辑回归模型?
你至少应该提供一个日志,或者一个我们可以重现的例子,这样其他人就可以确定问题所在。
旁注 7500 个功能和 170 万行,假设每个元素都是浮点数,您在那里获得了大约 48 GB 的数据,ram 可能是一个主要问题。
- Logistic 回归是一个非常简单的模型,虽然它可以处理大量数据,但它不适用于复杂的数据,它的性能表现平平。您在这里崩溃的问题可能是为了训练,使用了最小二乘法,它要求所有数据都在 ram
- 对于大型数据集,应使用梯度下降变化,这将允许您训练数据并应用逻辑回归。有了这么多数据,您可以使用更复杂的模型来获得更好的结果。
最后,PCA 等特征缩减方法或某些特征选择方法可能会有所帮助,因此您无需更改模型
我正在构建一个模型,根据 data set 的 170 万条记录来预测纽约街头的行人伤亡情况。我决定从 ON STREET NAME
列中构建虚拟特征,以查看可能提供的预测能力。这样,我就有了大约 7500 个特征。
我试过 运行,我立即收到 Jupyter 内核死机的警告。再次尝试,同样的事情发生了。考虑到模型拟合需要多长时间,以及计算机运行的热度,当我尝试拟合 100 个特征时,我只能假设 LogisticRegression()
不适合处理这样的特征集。
两个问题:
- 是这样吗,逻辑回归是为了处理更小的特征集吗?
- 有没有什么方法可以减轻这种情况,并在这样的特征集上应用逻辑回归模型?
你至少应该提供一个日志,或者一个我们可以重现的例子,这样其他人就可以确定问题所在。 旁注 7500 个功能和 170 万行,假设每个元素都是浮点数,您在那里获得了大约 48 GB 的数据,ram 可能是一个主要问题。
- Logistic 回归是一个非常简单的模型,虽然它可以处理大量数据,但它不适用于复杂的数据,它的性能表现平平。您在这里崩溃的问题可能是为了训练,使用了最小二乘法,它要求所有数据都在 ram
- 对于大型数据集,应使用梯度下降变化,这将允许您训练数据并应用逻辑回归。有了这么多数据,您可以使用更复杂的模型来获得更好的结果。
最后,PCA 等特征缩减方法或某些特征选择方法可能会有所帮助,因此您无需更改模型