#[non_exhaustive]pub struct CalibratedClassifierCV { /* private fields */ }Expand description
A calibrated classifier wrapper.
Uses internal cross-validation to produce calibrated probability
estimates from any classifier that supports predict_proba.
During fit, the data is split into n_folds folds. For each fold,
the base classifier is trained on the training portion, predictions are
made on the held-out portion, and those predictions are used to fit a
calibration model (per class in the OVR scheme). At predict time, the
full model’s raw probabilities are transformed through the calibrator.
§Example
ⓘ
use scry_learn::calibration::{CalibratedClassifierCV, CalibrationMethod};
use scry_learn::tree::DecisionTreeClassifier;
use scry_learn::dataset::Dataset;
let data = Dataset::from_csv("iris.csv", "species").unwrap();
let mut cal = CalibratedClassifierCV::new(
DecisionTreeClassifier::new(),
CalibrationMethod::Isotonic,
).n_folds(5);
cal.fit(&data).unwrap();
let probs = cal.predict_proba(&data.feature_matrix()).unwrap();Implementations§
Source§impl CalibratedClassifierCV
impl CalibratedClassifierCV
Sourcepub fn new<C: CalibrableClassifier + 'static>(
classifier: C,
method: CalibrationMethod,
) -> Self
pub fn new<C: CalibrableClassifier + 'static>( classifier: C, method: CalibrationMethod, ) -> Self
Create a new calibrated classifier wrapper.
Sourcepub fn fit(&mut self, data: &Dataset) -> Result<()>
pub fn fit(&mut self, data: &Dataset) -> Result<()>
Fit the calibrated classifier.
- Splits data into
n_foldsstratified folds. - For each fold, trains a clone of the base classifier on the
training portion and collects
predict_probaon held-out. - Fits a per-class calibrators on the aggregated out-of-fold predictions.
- Re-trains the base classifier on the full dataset.
Auto Trait Implementations§
impl Freeze for CalibratedClassifierCV
impl !RefUnwindSafe for CalibratedClassifierCV
impl !Send for CalibratedClassifierCV
impl !Sync for CalibratedClassifierCV
impl Unpin for CalibratedClassifierCV
impl UnsafeUnpin for CalibratedClassifierCV
impl !UnwindSafe for CalibratedClassifierCV
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more