sklearn.linear_model.orthogonal_mp_gram

sklearn.linear_model.orthogonal_mp_gram(Gram, Xy, *, n_nonzero_coefs=None, tol=None, norms_squared=None, copy_Gram=True, copy_Xy=True, return_path=False, return_n_iter=False)

[源码]

Gram正交匹配追踪(OMP)

仅使用Gram矩阵XT * X和乘积XT * y解决n_targets正交匹配追踪问题。

用户指南中阅读更多内容。

参数 说明
Gram array, shape (n_features, n_features)
输入数据的Gram矩阵:XT * X
Xy array, shape (n_features,) or (n_features, n_targets)
输入目标乘以X: X.T * y
n_nonzero_coefs int
解决方案中非零项的期望数目。如果为None(默认情况下),这个值设置为n_features的10%。
tol float
残差的最大范数。如果不是None,则覆盖n_nonzero_coefs。
norms_squared array-like, shape (n_targets,)
y线的平方L2范数。如果tol不为None,则需要设置。
copy_Gram bool, optional
gram矩阵是否必须由算法复制。假值只有在它已经被Fortran-ordered时才有用,否则无论如何都会复制。
copy_Xy bool, optional
该算法是否必须复制协方差向量Xy。如果为False,则可能会覆盖它。
return_path bool, optional. Default: False
是否沿正向路径返回非零系数的每个值。对于交叉验证很有用。
return_n_iter bool, optional default False
是否返回迭代次数。
返回值 说明
coef array, shape (n_features,) or (n_features, n_targets)
OMP解决方案的系数。如果为return_path=True,则包含整个系数路径。在这种情况下,其形状为(n_features,n_features)或(n_features,n_targets,n_features),并且在最后一个轴上进行迭代会按活动特征的递增顺序生成系数。
n_iters array-like or int
每个目标上的活动特征数量。仅当return_n_iter设置为True时返回 。

另见:

OrthogonalMatchingPursuit

orthogonal_mp

lars_path

decomposition.sparse_encode

Orthogonal matching pursuit was introduced in G. Mallat, Z. Zhang, Matching pursuits with time-frequency dictionaries, IEEE Transactions on Signal Processing, Vol. 41, No. 12. (December 1993), pp. 3397-3415. (http://blanche.polytechnique.fr/~mallat/papiers/MallatPursuit93.pdf)

This implementation is based on Rubinstein, R., Zibulevsky, M. and Elad, M., Efficient Implementation of the K-SVD Algorithm using Batch Orthogonal Matching Pursuit Technical Report - CS Technion, April 2008. https://www.cs.technion.ac.il/~ronrubin/Publications/KSVD-OMP-v2.pdf