Boost

Struct Boost 

Source
pub struct Boost { /* private fields */ }
Expand description

Boosted tree classifier derived from DTrees

§See also

[ml_intro_boost]

Implementations§

Source§

impl Boost

Source

pub fn create() -> Result<Ptr<Boost>>

Creates the empty model. Use StatModel::train to train the model, Algorithm::load<Boost>(filename) to load the pre-trained model.

Source

pub fn load(filepath: &str, node_name: &str) -> Result<Ptr<Boost>>

Loads and creates a serialized Boost from a file

Use Boost::save to serialize and store an RTree to disk. Load the Boost from this file again, by calling this function with the path to the file. Optionally specify the node for the file containing the classifier

§Parameters
  • filepath: path to serialized Boost
  • nodeName: name of node containing the classifier
§C++ default parameters
  • node_name: String()
Source

pub fn load_def(filepath: &str) -> Result<Ptr<Boost>>

Loads and creates a serialized Boost from a file

Use Boost::save to serialize and store an RTree to disk. Load the Boost from this file again, by calling this function with the path to the file. Optionally specify the node for the file containing the classifier

§Parameters
  • filepath: path to serialized Boost
  • nodeName: name of node containing the classifier
§Note

This alternative version of Boost::load function uses the following default values for its arguments:

  • node_name: String()

Trait Implementations§

Source§

impl AlgorithmTrait for Boost

Source§

fn as_raw_mut_Algorithm(&mut self) -> *mut c_void

Source§

fn clear(&mut self) -> Result<()>

Clears the algorithm state
Source§

fn read(&mut self, fn_: &impl FileNodeTraitConst) -> Result<()>

Reads algorithm parameters from a file storage
Source§

impl AlgorithmTraitConst for Boost

Source§

fn as_raw_Algorithm(&self) -> *const c_void

Source§

fn write(&self, fs: &mut impl FileStorageTrait) -> Result<()>

Stores algorithm parameters in a file storage
Source§

fn write_1(&self, fs: &mut impl FileStorageTrait, name: &str) -> Result<()>

Stores algorithm parameters in a file storage Read more
Source§

fn write_with_name(&self, fs: &Ptr<FileStorage>, name: &str) -> Result<()>

@deprecated Read more
Source§

fn write_with_name_def(&self, fs: &Ptr<FileStorage>) -> Result<()>

👎Deprecated:

§Note

Deprecated: ## Note This alternative version of AlgorithmTraitConst::write_with_name function uses the following default values for its arguments: Read more
Source§

fn empty(&self) -> Result<bool>

Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read
Source§

fn save(&self, filename: &str) -> Result<()>

Saves the algorithm to a file. In order to make this method work, the derived class must implement Algorithm::write(FileStorage& fs).
Source§

fn get_default_name(&self) -> Result<String>

Returns the algorithm string identifier. This string is used as top level xml/yml node tag when the object is saved to a file or string.
Source§

impl BoostTrait for Boost

Source§

fn as_raw_mut_Boost(&mut self) -> *mut c_void

Source§

fn set_boost_type(&mut self, val: i32) -> Result<()>

Type of the boosting algorithm. See Boost::Types. Default value is Boost::REAL. Read more
Source§

fn set_weak_count(&mut self, val: i32) -> Result<()>

The number of weak classifiers. Default value is 100. Read more
Source§

fn set_weight_trim_rate(&mut self, val: f64) -> Result<()>

A threshold between 0 and 1 used to save computational time. Samples with summary weight inline formula do not participate in the next iteration of training. Set this parameter to 0 to turn off this functionality. Default value is 0.95. Read more
Source§

impl BoostTraitConst for Boost

Source§

fn as_raw_Boost(&self) -> *const c_void

Source§

fn get_boost_type(&self) -> Result<i32>

Type of the boosting algorithm. See Boost::Types. Default value is Boost::REAL. Read more
Source§

fn get_weak_count(&self) -> Result<i32>

The number of weak classifiers. Default value is 100. Read more
Source§

fn get_weight_trim_rate(&self) -> Result<f64>

A threshold between 0 and 1 used to save computational time. Samples with summary weight inline formula do not participate in the next iteration of training. Set this parameter to 0 to turn off this functionality. Default value is 0.95. Read more
Source§

impl Boxed for Boost

Source§

unsafe fn from_raw(ptr: <Boost as OpenCVFromExtern>::ExternReceive) -> Self

Wrap the specified raw pointer Read more
Source§

fn into_raw(self) -> <Boost as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying raw pointer while consuming this wrapper. Read more
Source§

fn as_raw(&self) -> <Boost as OpenCVTypeExternContainer>::ExternSend

Return the underlying raw pointer. Read more
Source§

fn as_raw_mut(&mut self) -> <Boost as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying mutable raw pointer Read more
Source§

impl DTreesTrait for Boost

Source§

fn as_raw_mut_DTrees(&mut self) -> *mut c_void

Source§

fn set_max_categories(&mut self, val: i32) -> Result<()>

Cluster possible values of a categorical variable into K<=maxCategories clusters to find a suboptimal split. If a discrete variable, on which the training procedure tries to make a split, takes more than maxCategories values, the precise best subset estimation may take a very long time because the algorithm is exponential. Instead, many decision trees engines (including our implementation) try to find sub-optimal split in this case by clustering all the samples into maxCategories clusters that is some categories are merged together. The clustering is applied only in n > 2-class classification problems for categorical variables with N > max_categories possible values. In case of regression and 2-class classification the optimal split can be found efficiently without employing clustering, thus the parameter is not used in these cases. Default value is 10. Read more
Source§

fn set_max_depth(&mut self, val: i32) -> Result<()>

The maximum possible depth of the tree. That is the training algorithms attempts to split a node while its depth is less than maxDepth. The root node has zero depth. The actual depth may be smaller if the other termination criteria are met (see the outline of the training procedure [ml_intro_trees] “here”), and/or if the tree is pruned. Default value is INT_MAX. Read more
Source§

fn set_min_sample_count(&mut self, val: i32) -> Result<()>

If the number of samples in a node is less than this parameter then the node will not be split. Read more
Source§

fn set_cv_folds(&mut self, val: i32) -> Result<()>

If CVFolds > 1 then algorithms prunes the built decision tree using K-fold cross-validation procedure where K is equal to CVFolds. Default value is 10. Read more
Source§

fn set_use_surrogates(&mut self, val: bool) -> Result<()>

If true then surrogate splits will be built. These splits allow to work with missing data and compute variable importance correctly. Default value is false. Read more
Source§

fn set_use1_se_rule(&mut self, val: bool) -> Result<()>

If true then a pruning will be harsher. This will make a tree more compact and more resistant to the training data noise but a bit less accurate. Default value is true. Read more
Source§

fn set_truncate_pruned_tree(&mut self, val: bool) -> Result<()>

If true then pruned branches are physically removed from the tree. Otherwise they are retained and it is possible to get results from the original unpruned (or pruned less aggressively) tree. Default value is true. Read more
Source§

fn set_regression_accuracy(&mut self, val: f32) -> Result<()>

Termination criteria for regression trees. If all absolute differences between an estimated value in a node and values of train samples in this node are less than this parameter then the node will not be split further. Default value is 0.01f Read more
Source§

fn set_priors(&mut self, val: &impl MatTraitConst) -> Result<()>

The array of a priori class probabilities, sorted by the class label value. Read more
Source§

impl DTreesTraitConst for Boost

Source§

fn as_raw_DTrees(&self) -> *const c_void

Source§

fn get_max_categories(&self) -> Result<i32>

Cluster possible values of a categorical variable into K<=maxCategories clusters to find a suboptimal split. If a discrete variable, on which the training procedure tries to make a split, takes more than maxCategories values, the precise best subset estimation may take a very long time because the algorithm is exponential. Instead, many decision trees engines (including our implementation) try to find sub-optimal split in this case by clustering all the samples into maxCategories clusters that is some categories are merged together. The clustering is applied only in n > 2-class classification problems for categorical variables with N > max_categories possible values. In case of regression and 2-class classification the optimal split can be found efficiently without employing clustering, thus the parameter is not used in these cases. Default value is 10. Read more
Source§

fn get_max_depth(&self) -> Result<i32>

The maximum possible depth of the tree. That is the training algorithms attempts to split a node while its depth is less than maxDepth. The root node has zero depth. The actual depth may be smaller if the other termination criteria are met (see the outline of the training procedure [ml_intro_trees] “here”), and/or if the tree is pruned. Default value is INT_MAX. Read more
Source§

fn get_min_sample_count(&self) -> Result<i32>

If the number of samples in a node is less than this parameter then the node will not be split. Read more
Source§

fn get_cv_folds(&self) -> Result<i32>

If CVFolds > 1 then algorithms prunes the built decision tree using K-fold cross-validation procedure where K is equal to CVFolds. Default value is 10. Read more
Source§

fn get_use_surrogates(&self) -> Result<bool>

If true then surrogate splits will be built. These splits allow to work with missing data and compute variable importance correctly. Default value is false. Read more
Source§

fn get_use1_se_rule(&self) -> Result<bool>

If true then a pruning will be harsher. This will make a tree more compact and more resistant to the training data noise but a bit less accurate. Default value is true. Read more
Source§

fn get_truncate_pruned_tree(&self) -> Result<bool>

If true then pruned branches are physically removed from the tree. Otherwise they are retained and it is possible to get results from the original unpruned (or pruned less aggressively) tree. Default value is true. Read more
Source§

fn get_regression_accuracy(&self) -> Result<f32>

Termination criteria for regression trees. If all absolute differences between an estimated value in a node and values of train samples in this node are less than this parameter then the node will not be split further. Default value is 0.01f Read more
Source§

fn get_priors(&self) -> Result<Mat>

The array of a priori class probabilities, sorted by the class label value. Read more
Source§

fn get_roots(&self) -> Result<Vector<i32>>

Returns indices of root nodes
Source§

fn get_nodes(&self) -> Result<Vector<DTrees_Node>>

Returns all the nodes Read more
Source§

fn get_splits(&self) -> Result<Vector<DTrees_Split>>

Returns all the splits Read more
Source§

fn get_subsets(&self) -> Result<Vector<i32>>

Returns all the bitsets for categorical splits Read more
Source§

impl Debug for Boost

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for Boost

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl From<Boost> for Algorithm

Source§

fn from(s: Boost) -> Self

Converts to this type from the input type.
Source§

impl From<Boost> for DTrees

Source§

fn from(s: Boost) -> Self

Converts to this type from the input type.
Source§

impl From<Boost> for StatModel

Source§

fn from(s: Boost) -> Self

Converts to this type from the input type.
Source§

impl StatModelTrait for Boost

Source§

fn as_raw_mut_StatModel(&mut self) -> *mut c_void

Source§

fn train_with_data( &mut self, train_data: &Ptr<TrainData>, flags: i32, ) -> Result<bool>

Trains the statistical model Read more
Source§

fn train_with_data_def(&mut self, train_data: &Ptr<TrainData>) -> Result<bool>

Trains the statistical model Read more
Source§

fn train( &mut self, samples: &impl ToInputArray, layout: i32, responses: &impl ToInputArray, ) -> Result<bool>

Trains the statistical model Read more
Source§

impl StatModelTraitConst for Boost

Source§

fn as_raw_StatModel(&self) -> *const c_void

Source§

fn get_var_count(&self) -> Result<i32>

Returns the number of variables in training samples
Source§

fn empty(&self) -> Result<bool>

Source§

fn is_trained(&self) -> Result<bool>

Returns true if the model is trained
Source§

fn is_classifier(&self) -> Result<bool>

Returns true if the model is classifier
Source§

fn calc_error( &self, data: &Ptr<TrainData>, test: bool, resp: &mut impl ToOutputArray, ) -> Result<f32>

Computes error on the training or test dataset Read more
Source§

fn predict( &self, samples: &impl ToInputArray, results: &mut impl ToOutputArray, flags: i32, ) -> Result<f32>

Predicts response(s) for the provided sample(s) Read more
Source§

fn predict_def(&self, samples: &impl ToInputArray) -> Result<f32>

Predicts response(s) for the provided sample(s) Read more
Source§

impl TryFrom<DTrees> for Boost

Source§

type Error = Error

The type returned in the event of a conversion error.
Source§

fn try_from(s: DTrees) -> Result<Self>

Performs the conversion.
Source§

impl TryFrom<StatModel> for Boost

Source§

type Error = Error

The type returned in the event of a conversion error.
Source§

fn try_from(s: StatModel) -> Result<Self>

Performs the conversion.
Source§

impl Send for Boost

Auto Trait Implementations§

§

impl Freeze for Boost

§

impl RefUnwindSafe for Boost

§

impl !Sync for Boost

§

impl Unpin for Boost

§

impl UnwindSafe for Boost

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<Mat> ModifyInplace for Mat
where Mat: Boxed,

Source§

unsafe fn modify_inplace<Res>( &mut self, f: impl FnOnce(&Mat, &mut Mat) -> Res, ) -> Res

Helper function to call OpenCV functions that allow in-place modification of a Mat or another similar object. By passing a mutable reference to the Mat to this function your closure will get called with the read reference and a write references to the same Mat. This is unsafe in a general case as it leads to having non-exclusive mutable access to the internal data, but it can be useful for some performance sensitive operations. One example of an OpenCV function that allows such in-place modification is imgproc::threshold. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.