Go to the documentation of this file.
13 #ifndef MLPACK_CORE_TREE_BINARY_SPACE_TREE_RP_TREE_MAX_SPLIT_HPP
14 #define MLPACK_CORE_TREE_BINARY_SPACE_TREE_RP_TREE_MAX_SPLIT_HPP
31 template<
typename BoundType,
typename MatType = arma::mat>
80 return split::PerformSplit<MatType, RPTreeMaxSplit>(data, begin, count,
103 std::vector<size_t>& oldFromNew)
105 return split::PerformSplit<MatType, RPTreeMaxSplit>(data, begin, count,
106 splitInfo, oldFromNew);
115 template<
typename VecType>
133 static bool GetSplitVal(
const MatType& data,
136 const arma::Col<ElemType>& direction,
144 #include "rp_tree_max_split_impl.hpp"
146 #endif // MLPACK_CORE_TREE_BINARY_SPACE_TREE_RP_TREE_MAX_SPLIT_HPP
The core includes that mlpack expects; standard C++ includes and Armadillo.
static size_t PerformSplit(MatType &data, const size_t begin, const size_t count, const SplitInfo &splitInfo, std::vector< size_t > &oldFromNew)
Perform the split process according to the information about the split and return the list of changed...
static size_t PerformSplit(MatType &data, const size_t begin, const size_t count, const SplitInfo &splitInfo)
Perform the split process according to the information about the split.
ElemType splitVal
The value according to which the node is being split.
Linear algebra utility functions, generally performed on matrices or vectors.
This class splits a node by a random hyperplane.
static bool AssignToLeftNode(const VecType &point, const SplitInfo &splitInfo)
Indicates that a point should be assigned to the left subtree.
An information about the partition.
static bool SplitNode(const BoundType &, MatType &data, const size_t begin, const size_t count, SplitInfo &splitInfo)
Split the node by a random hyperplane.
arma::Col< ElemType > direction
The normal vector to the hyperplane that splits the node.
MatType::elem_type ElemType
The element type held by the matrix type.