Toggle Menu
Prev Up Next

scikit-learn 1.3.2
Other versions

Please cite us if you use the software.

# `sklearn.metrics.pairwise`.chi2_kernel

sklearn.metrics.pairwise.chi2_kernel(X, Y=None, gamma=1.0)

  Compute the exponential chi-squared kernel between X and Y.

  The chi-squared kernel is computed between each pair of rows in X and Y. X and Y have to be non-negative. This kernel is most commonly applied to histograms.

  The chi-squared kernel is given by:

      k(x, y) = exp(-gamma Sum [(x - y)^2 / (x + y)])

  It can be interpreted as a weighted difference per entry.

  Read more in the User Guide.

  Parameters:
    X array-like of shape (n_samples_X, n_features)

      A feature array.

    Y ndarray of shape (n_samples_Y, n_features), default=None

      An optional second feature array. If `None`, uses `Y=X`.

    gamma float, default=1

      Scaling parameter of the chi2 kernel.

  Returns:
    kernel_matrix ndarray of shape (n_samples_X, n_samples_Y)

      The kernel matrix.

  See also

  `additive_chi2_kernel`

    The additive version of this kernel.

  `sklearn.kernel_approximation.AdditiveChi2Sampler`

    A Fourier approximation to the additive version of this kernel.

  References

  - Zhang, J. and Marszalek, M. and Lazebnik, S. and Schmid, C. Local features and kernels for classification of texture and object categories: A comprehensive study International Journal of Computer Vision 2007 https://hal.archives-ouvertes.fr/hal-00171412/document