sklearn.metrics.pairwise.pairwise_kernels

sklearn.metrics.pairwise.pairwise_kernels(X, Y=None, metric='linear', *, filter_params=False, n_jobs=None, **kwds)

源码

计算数组X和可选数组Y之间的内核。

此方法采用向量数组或内核矩阵,然后返回内核矩阵。如果输入是向量数组,则计算内核。如果输入是内核矩阵,则将其返回。

此方法提供了一种安全的方法,可以将内核矩阵作为输入,同时保持与采用矢量数组的许多其他算法的兼容性。

如果给定Y(默认为None),则返回的矩阵是X和Y数组之间的成对内核。

指标的有效值为:

['additive_chi2''chi2''linear''poly''polynomial''rbf''laplacian''Sigmoid''cosine']

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

参数 说明
X array [n_samples_a, n_samples_a] if metric == “precomputed”, or, [n_samples_a, n_features] otherwise
样本之间的成对内核数组或特征数组。
Y array [n_samples_b, n_features]
仅当X具有形状[n_samples_a,n_features]时,第二个特征数组。
metric string, or callable
计算特征数组中实例之间的内核时使用的度量。 如果metric是字符串,则它必须是pairwise.PAIRWISE_KERNEL_FUNCTIONS中的一个度量。如果度量是“precomputed”,则假定X为内核矩阵。或者,如果metric是可调用的函数,则在每对实例(行)上调用metric,并记录结果值。可调用对象应将X的两行作为输入,并以单个数字返回相应的内核值。这意味着不允许sklearn.metrics.pairwise中的可调用对象,因为它们在矩阵而不是单个样本上运行。请使用标识内核的字符串代替。
filter_params boolean
是否过滤无效参数。
n_jobs int or None, optional (default=None)
用于计算的作业数。将成对矩阵分解为n_jobs个偶数切片再并行计算。
除非在joblib.parallel_backend上下文中,否则None表示1。-1表示使用所有处理器。有关更多详细信息,请参见词汇表
*kwds optional keyword parameters
任何其他参数都直接传递给内核函数。
返回值 说明
K array [n_samples_a, n_samples_a] or [n_samples_a, n_samples_b]
如果Y为None,则使得K_ {i,j}是给定矩阵X的第i个向量和第j个向量之间的核的核矩阵K。如果Y不为None,则K_ {i,j}是X的第i个数组和Y的第j个数组之间的内核。

如果指标是‘precomputed’,则忽略Y并返回X。