Python &引用;字典中的线性相关性;skomp中的异常

Python &引用;字典中的线性相关性;skomp中的异常,python,machine-learning,scikit-learn,compression,Python,Machine Learning,Scikit Learn,Compression,我用sklearns得到一个信号的稀疏编码,使用一个。但是,在fit期间,我得到以下运行时警告: /usr/local/lib/python2.7/dist-packages/sklearn/linear_model/omp.py:391: RuntimeWarning: Orthogonal matching pursuit ended prematurely due to linear dependence in the dictionary. The requested precisio

我用sklearns得到一个信号的稀疏编码,使用一个。但是,在fit期间,我得到以下运行时警告:

/usr/local/lib/python2.7/dist-packages/sklearn/linear_model/omp.py:391: RuntimeWarning:  Orthogonal matching pursuit ended prematurely due to linear
dependence in the dictionary. The requested precision might not have been met.

  copy_X=copy_X, return_path=return_path)
在这些情况下,结果确实不令人满意。我不明白这个警告的意义,因为在稀疏编码中,有一个过完备的字典是很常见的,因此它里面也有一个线性依赖关系。这不应该成为OMP的问题。事实上,如果字典是平方矩阵,也会发出警告


此警告是否也指向应用程序中的其他问题?

问题出现在中的数据向量
y

omp = OrthogonalMatchingPursuit(n_nonzero_coefs=target_sparsity)
omp.fit(D, y)

它包含数量非常小的数字。当我规范化
y
D
时,拟合的精度达到了预期。

您能解释一下如何规范化数据吗?您是否将它们缩放到特定范围?我应用了直接的列标准化,即字典
D
的每一列以及数据向量
y
的L2范数为1。