mlpack_tree_MeanSplit3
A binary space partitioning tree node is split into its left and right child.
Usage
Static Private Member Functions
Reorder the
dataset
into
two
parts
such
that
they
lie
on
either
side
of
splitCol.
Detailed Description
template<typename BoundType, typename MatType = arma::mat>class mlpack::tree::MeanSplit< BoundType, MatType >
A binary space partitioning tree node is split into its left and right child.
The split is done in the dimension that has the maximum width. The points are divided into two parts based on the mean in this dimension.
Definition at line 38 of file mean_split.hpp.
Member Function Documentation
template<typename BoundType , typename MatType = arma::mat> static size_t mlpack::tree::MeanSplit< BoundType, MatType >::PerformSplit (MatType &data, const size_tbegin, const size_tcount, const size_tsplitDimension, const doublesplitVal) [static], [private]
Reorder the dataset into two parts such that they lie on either side of splitCol.
Parameters:
data The dataset used by the binary space tree.
begin Index of the starting point in the dataset that belongs to this node.
count Number of points in this node.
splitDimension The dimension to split the node on.
splitVal The split in dimension splitDimension is based on this value.
template<typename BoundType , typename MatType = arma::mat> static size_t mlpack::tree::MeanSplit< BoundType, MatType >::PerformSplit (MatType &data, const size_tbegin, const size_tcount, const size_tsplitDimension, const doublesplitVal, std::vector< size_t > &oldFromNew) [static], [private]
Reorder the dataset into two parts such that they lie on either side of splitCol. Also returns a list of changed indices.
Parameters:
data The dataset used by the binary space tree.
begin Index of the starting point in the dataset that belongs to this node.
count Number of points in this node.
splitDimension The dimension to split the node on.
splitVal The split in dimension splitDimension is based on this value.
oldFromNew Vector which will be filled with the old positions for each new point.
template<typename BoundType , typename MatType = arma::mat> static bool mlpack::tree::MeanSplit< BoundType, MatType >::SplitNode (const BoundType &bound, MatType &data, const size_tbegin, const size_tcount, size_t &splitDimension, size_t &splitCol) [static]
Split the node according to the mean value in the dimension with maximum width.
Parameters:
bound The bound used for this node.
data The dataset used by the binary space tree.
begin Index of the starting point in the dataset that belongs to this node.
count Number of points in this node.
splitDimension This will be filled with the dimension the node is to be split on.
splitCol The index at which the dataset is divided into two parts after the rearrangement.
template<typename BoundType , typename MatType = arma::mat> static bool mlpack::tree::MeanSplit< BoundType, MatType >::SplitNode (const BoundType &bound, MatType &data, const size_tbegin, const size_tcount, size_t &splitDimension, size_t &splitCol, std::vector< size_t > &oldFromNew) [static]
Split the node according to the mean value in the dimension with maximum width and return a list of changed indices.
Parameters:
bound The bound used for this node.
data The dataset used by the binary space tree.
begin Index of the starting point in the dataset that belongs to this node.
count Number of points in this node.
splitDimension This will be filled with the dimension the node is to be split on.
splitCol The index at which the dataset is divided into two parts after the rearrangement.
oldFromNew Vector which will be filled with the old positions for each new point.