在稀疏矩阵上执行特征缩放和均值归一化是一个好主意吗?我有一个70%稀疏的矩阵。通常,特征缩放和均值归一化可以提高算法性能,但在稀疏矩阵的情况下,它会增加许多非零项
答案 0 :(得分:2)
如果表示稀疏是很重要的,那么为了适应内存,那么你就不能在表示本身中进行标准化,不能。它变得完全密集并且失败了。
通常,您将均值归一化数学推入公式或计算的另一部分。或者,您可以在访问元素时进行规范化,之前已经计算了均值和方差。
或者,如果可能,您可以选择不需要标准化的算法。
答案 1 :(得分:0)
如果使用scikit-learn,则可以如下所示:
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler(with_mean=False)
scaler.fit(data)
在这里,您将维护稀疏性的平均值设为零,就像在文档here中看到的那样。