Package gov.nih.mipav.model.algorithms
Class StochasticForests.Tree
- java.lang.Object
-
- gov.nih.mipav.model.algorithms.StochasticForests.Tree
-
- Direct Known Subclasses:
StochasticForests.TreeClassification
,StochasticForests.TreeProbability
,StochasticForests.TreeRegression
,StochasticForests.TreeSurvival
- Enclosing class:
- StochasticForests
private abstract class StochasticForests.Tree extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected double
alpha
protected java.util.Vector<java.lang.Double>
case_weights
protected java.util.Vector<java.util.Vector<java.lang.Integer>>
child_nodeIDs
protected StochasticForests.Data
data
protected int
dependent_varID
protected java.util.Vector<java.lang.Integer>
deterministic_varIDs
protected boolean
holdout
protected StochasticForests.ImportanceMode
importance_mode
protected java.util.Vector<java.lang.Integer>
inbag_counts
protected boolean
keep_inbag
protected boolean
memory_saving_splitting
protected int
min_node_size
protected double
minprop
protected int
mtry
protected int
num_random_splits
protected int
num_samples
protected int
num_samples_oob
protected java.util.Vector<java.lang.Integer>
oob_sampleIDs
protected java.util.Vector<java.lang.Integer>
prediction_terminal_nodeIDs
protected java.util.Random
random
protected java.util.Vector<java.lang.Double>
sample_fraction
protected boolean
sample_with_replacement
protected java.util.Vector<java.util.Vector<java.lang.Integer>>
sampleIDs
protected java.util.Vector<java.lang.Integer>
split_select_varIDs
protected java.util.Vector<java.lang.Double>
split_select_weights
protected java.util.Vector<java.lang.Double>
split_values
protected java.util.Vector<java.lang.Integer>
split_varIDs
protected StochasticForests.SplitRule
splitrule
protected java.util.Vector<java.lang.Double>
variable_importance
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
allocateMemory()
void
appendToFile(java.io.BufferedWriter bw)
abstract void
appendToFileInternal(java.io.BufferedWriter bw)
void
bootstrap()
protected abstract void
bootstrapClassWise()
void
bootstrapWeighted()
void
bootstrapWithoutReplacement()
protected abstract void
bootstrapWithoutReplacementClassWise()
void
bootstrapWithoutReplacementWeighted()
protected abstract void
cleanUpInternal()
void
computePermutationImportance(java.util.Vector<java.lang.Double> forest_importance, java.util.Vector<java.lang.Double> forest_variance)
protected abstract double
computePredictionAccuracyInternal()
void
createEmptyNode()
protected abstract void
createEmptyNodeInternal()
void
createPossibleSplitVarSubset(java.util.Vector<java.lang.Integer> result)
void
dispose()
int
dropDownSamplePermuted(int permuted_varID, int sampleID, int permuted_sampleID)
java.util.Vector<java.util.Vector<java.lang.Integer>>
getChildNodeIDs()
java.util.Vector<java.lang.Integer>
getInbagCounts()
int
getNumSamplesOob()
java.util.Vector<java.lang.Integer>
getOobSampleIDs()
java.util.Vector<java.lang.Double>
getSplitValues()
java.util.Vector<java.lang.Integer>
getSplitVarIDs()
void
grow(java.util.Vector<java.lang.Double> variable_importance)
void
init(StochasticForests.Data data, int mtry, int dependent_varID, int num_samples, long seed, java.util.Vector<java.lang.Integer> deterministic_varIDs, java.util.Vector<java.lang.Integer> split_select_varIDs, java.util.Vector<java.lang.Double> split_select_weights, StochasticForests.ImportanceMode importance_mode, int min_node_size, boolean sample_with_replacement, boolean memory_saving_splitting, StochasticForests.SplitRule splitrule, java.util.Vector<java.lang.Double> case_weights, boolean keep_inbag, java.util.Vector<java.lang.Double> sample_fraction, double alpha, double minprop, boolean holdout, int num_random_splits)
void
permuteAndPredictOobSamples(int permuted_varID, java.util.Vector<java.lang.Integer> permutations)
void
predict(StochasticForests.Data prediction_data, boolean oob_prediction)
boolean
splitNode(int nodeID)
protected abstract boolean
splitNodeInternal(int nodeID, java.util.Vector<java.lang.Integer> possible_split_varIDs)
-
-
-
Field Detail
-
random
protected java.util.Random random
-
dependent_varID
protected int dependent_varID
-
mtry
protected int mtry
-
num_samples
protected int num_samples
-
num_samples_oob
protected int num_samples_oob
-
min_node_size
protected int min_node_size
-
deterministic_varIDs
protected java.util.Vector<java.lang.Integer> deterministic_varIDs
-
split_select_varIDs
protected java.util.Vector<java.lang.Integer> split_select_varIDs
-
split_select_weights
protected java.util.Vector<java.lang.Double> split_select_weights
-
case_weights
protected java.util.Vector<java.lang.Double> case_weights
-
split_varIDs
protected java.util.Vector<java.lang.Integer> split_varIDs
-
split_values
protected java.util.Vector<java.lang.Double> split_values
-
child_nodeIDs
protected java.util.Vector<java.util.Vector<java.lang.Integer>> child_nodeIDs
-
sampleIDs
protected java.util.Vector<java.util.Vector<java.lang.Integer>> sampleIDs
-
oob_sampleIDs
protected java.util.Vector<java.lang.Integer> oob_sampleIDs
-
holdout
protected boolean holdout
-
keep_inbag
protected boolean keep_inbag
-
inbag_counts
protected java.util.Vector<java.lang.Integer> inbag_counts
-
data
protected StochasticForests.Data data
-
variable_importance
protected java.util.Vector<java.lang.Double> variable_importance
-
importance_mode
protected StochasticForests.ImportanceMode importance_mode
-
prediction_terminal_nodeIDs
protected java.util.Vector<java.lang.Integer> prediction_terminal_nodeIDs
-
sample_with_replacement
protected boolean sample_with_replacement
-
sample_fraction
protected java.util.Vector<java.lang.Double> sample_fraction
-
memory_saving_splitting
protected boolean memory_saving_splitting
-
splitrule
protected StochasticForests.SplitRule splitrule
-
alpha
protected double alpha
-
minprop
protected double minprop
-
num_random_splits
protected int num_random_splits
-
-
Method Detail
-
dispose
public void dispose()
-
init
public void init(StochasticForests.Data data, int mtry, int dependent_varID, int num_samples, long seed, java.util.Vector<java.lang.Integer> deterministic_varIDs, java.util.Vector<java.lang.Integer> split_select_varIDs, java.util.Vector<java.lang.Double> split_select_weights, StochasticForests.ImportanceMode importance_mode, int min_node_size, boolean sample_with_replacement, boolean memory_saving_splitting, StochasticForests.SplitRule splitrule, java.util.Vector<java.lang.Double> case_weights, boolean keep_inbag, java.util.Vector<java.lang.Double> sample_fraction, double alpha, double minprop, boolean holdout, int num_random_splits)
-
grow
public void grow(java.util.Vector<java.lang.Double> variable_importance)
-
predict
public void predict(StochasticForests.Data prediction_data, boolean oob_prediction)
-
computePermutationImportance
public void computePermutationImportance(java.util.Vector<java.lang.Double> forest_importance, java.util.Vector<java.lang.Double> forest_variance)
-
appendToFile
public void appendToFile(java.io.BufferedWriter bw)
-
createPossibleSplitVarSubset
public void createPossibleSplitVarSubset(java.util.Vector<java.lang.Integer> result)
-
splitNode
public boolean splitNode(int nodeID)
-
createEmptyNode
public void createEmptyNode()
-
dropDownSamplePermuted
public int dropDownSamplePermuted(int permuted_varID, int sampleID, int permuted_sampleID)
-
permuteAndPredictOobSamples
public void permuteAndPredictOobSamples(int permuted_varID, java.util.Vector<java.lang.Integer> permutations)
-
bootstrap
public void bootstrap()
-
bootstrapWeighted
public void bootstrapWeighted()
-
bootstrapWithoutReplacement
public void bootstrapWithoutReplacement()
-
bootstrapWithoutReplacementWeighted
public void bootstrapWithoutReplacementWeighted()
-
allocateMemory
public abstract void allocateMemory()
-
appendToFileInternal
public abstract void appendToFileInternal(java.io.BufferedWriter bw)
-
getChildNodeIDs
public java.util.Vector<java.util.Vector<java.lang.Integer>> getChildNodeIDs()
-
getSplitValues
public java.util.Vector<java.lang.Double> getSplitValues()
-
getSplitVarIDs
public java.util.Vector<java.lang.Integer> getSplitVarIDs()
-
getOobSampleIDs
public java.util.Vector<java.lang.Integer> getOobSampleIDs()
-
getNumSamplesOob
public int getNumSamplesOob()
-
getInbagCounts
public java.util.Vector<java.lang.Integer> getInbagCounts()
-
splitNodeInternal
protected abstract boolean splitNodeInternal(int nodeID, java.util.Vector<java.lang.Integer> possible_split_varIDs)
-
createEmptyNodeInternal
protected abstract void createEmptyNodeInternal()
-
computePredictionAccuracyInternal
protected abstract double computePredictionAccuracyInternal()
-
bootstrapClassWise
protected abstract void bootstrapClassWise()
-
bootstrapWithoutReplacementClassWise
protected abstract void bootstrapWithoutReplacementClassWise()
-
cleanUpInternal
protected abstract void cleanUpInternal()
-
-