Cross-validation utilities for kernel regression and density estimation.
This module defines a CVScorer class that can be used to evaluate leave-one-out cross-validation (LOOCV) or K-fold cross-validation for kernel regression or density estimation.
- class hessband.cv.CVScorer(X: ndarray, y: ndarray, folds: int = 5, kernel: str = 'gaussian')[source]¶
Bases:
objectCross-validation scorer for kernel regression.
- Parameters:
X – Input values.
y – Target values.
folds – Number of folds for K-fold cross-validation.
kernel – Kernel type (‘gaussian’ or ‘epanechnikov’).
- score(predict_fn: Callable[[ndarray, ndarray, ndarray, float, str], ndarray], h: float) float[source]¶
Computes the cross-validation MSE for a given bandwidth.
- Parameters:
predict_fn – Function that takes
(X_train, y_train, X_test, h, kernel)and returns predictions.h – Bandwidth value.
- Returns:
Cross-validation mean squared error.