ppforest2 v0.1.0
Projection Pursuit Decision Trees and Random Forests
Loading...
Searching...
No Matches
PPStrategy.hpp
Go to the documentation of this file.
1#pragma once
2
4#include "models/Strategy.hpp"
6
17namespace ppforest2::pp {
27
37 struct PPStrategy : public Strategy<PPStrategy> {
46 virtual types::Feature
47 index(types::FeatureMatrix const& x, stats::GroupPartition const& group_spec, Projector const& projector) const = 0;
48
56 virtual PPResult optimize(types::FeatureMatrix const& x, stats::GroupPartition const& group_spec) const = 0;
57
62 return optimize(x, group_spec).projector;
63 }
64 };
65}
Contiguous-block representation of grouped observations.
Definition GroupPartition.hpp:42
Projection pursuit strategies.
Definition PPPDAStrategy.hpp:8
types::FeatureVector Projector
Column vector of projection coefficients (one per variable).
Definition Projector.hpp:6
Eigen::Matrix< Feature, Eigen::Dynamic, Eigen::Dynamic > FeatureMatrix
Dynamic-size matrix of feature values.
Definition Types.hpp:24
float Feature
Scalar type for feature values (float or double).
Definition Types.hpp:17
CRTP base class providing self-registration for strategy types.
Definition Strategy.hpp:23
Result of a projection pursuit optimization step.
Definition PPStrategy.hpp:21
types::Feature index_value
Projection pursuit index value achieved.
Definition PPStrategy.hpp:25
Projector projector
Optimized projection vector.
Definition PPStrategy.hpp:23
Abstract strategy for projection pursuit optimization.
Definition PPStrategy.hpp:37
virtual types::Feature index(types::FeatureMatrix const &x, stats::GroupPartition const &group_spec, Projector const &projector) const =0
Evaluate the projection pursuit index for a given projector.
Projector operator()(types::FeatureMatrix const &x, stats::GroupPartition const &group_spec) const
Convenience operator: optimize and return the projector only.
Definition PPStrategy.hpp:61
virtual PPResult optimize(types::FeatureMatrix const &x, stats::GroupPartition const &group_spec) const =0
Find the optimal projection for the data.