StochTree 0.0.1
|
Marginal likelihood and posterior computation for heteroskedastic log-linear variance model. More...
#include <leaf_model.h>
Public Member Functions | |
double | SplitLogMarginalLikelihood (LogLinearVarianceSuffStat &left_stat, LogLinearVarianceSuffStat &right_stat, double global_variance) |
Log marginal likelihood for a proposed split, evaluated only for observations that fall into the node being split. | |
double | NoSplitLogMarginalLikelihood (LogLinearVarianceSuffStat &suff_stat, double global_variance) |
Log marginal likelihood of a node, evaluated only for observations that fall into the node being split. | |
double | PosteriorParameterShape (LogLinearVarianceSuffStat &suff_stat, double global_variance) |
Leaf node posterior shape parameter. | |
double | PosteriorParameterScale (LogLinearVarianceSuffStat &suff_stat, double global_variance) |
Leaf node posterior scale parameter. | |
void | SampleLeafParameters (ForestDataset &dataset, ForestTracker &tracker, ColumnVector &residual, Tree *tree, int tree_num, double global_variance, std::mt19937 &gen) |
Draw new parameters for every leaf node in tree , using a Gibbs update that conditions on the data, every other tree in the forest, and all model parameters. | |
Marginal likelihood and posterior computation for heteroskedastic log-linear variance model.
double StochTree::LogLinearVarianceLeafModel::SplitLogMarginalLikelihood | ( | LogLinearVarianceSuffStat & | left_stat, |
LogLinearVarianceSuffStat & | right_stat, | ||
double | global_variance | ||
) |
Log marginal likelihood for a proposed split, evaluated only for observations that fall into the node being split.
left_stat | Sufficient statistics of the left node formed by the proposed split |
right_stat | Sufficient statistics of the right node formed by the proposed split |
global_variance | Global error variance parameter |
double StochTree::LogLinearVarianceLeafModel::NoSplitLogMarginalLikelihood | ( | LogLinearVarianceSuffStat & | suff_stat, |
double | global_variance | ||
) |
Log marginal likelihood of a node, evaluated only for observations that fall into the node being split.
suff_stat | Sufficient statistics of the node being evaluated |
global_variance | Global error variance parameter |
double StochTree::LogLinearVarianceLeafModel::PosteriorParameterShape | ( | LogLinearVarianceSuffStat & | suff_stat, |
double | global_variance | ||
) |
Leaf node posterior shape parameter.
suff_stat | Sufficient statistics of the node being evaluated |
global_variance | Global error variance parameter |
double StochTree::LogLinearVarianceLeafModel::PosteriorParameterScale | ( | LogLinearVarianceSuffStat & | suff_stat, |
double | global_variance | ||
) |
Leaf node posterior scale parameter.
suff_stat | Sufficient statistics of the node being evaluated |
global_variance | Global error variance parameter |
void StochTree::LogLinearVarianceLeafModel::SampleLeafParameters | ( | ForestDataset & | dataset, |
ForestTracker & | tracker, | ||
ColumnVector & | residual, | ||
Tree * | tree, | ||
int | tree_num, | ||
double | global_variance, | ||
std::mt19937 & | gen | ||
) |
Draw new parameters for every leaf node in tree
, using a Gibbs update that conditions on the data, every other tree in the forest, and all model parameters.
dataset | Data object containining training data, including covariates, leaf regression bases, and case weights |
tracker | Tracking data structures that speed up sampler operations, synchronized with active_forest tracking a forest's state |
residual | Data object containing the "full" residual net of all the model's mean terms |
tree | Tree to be updated |
tree_num | Integer index of tree to be updated |
global_variance | Value of the global error variance parameter |
gen | C++ random number generator |