@@ -56,7 +56,7 @@ public abstract class FastTreeTrainerBase<TArgs, TTransformer, TModel> :
56
56
protected readonly TArgs Args ;
57
57
protected readonly bool AllowGC ;
58
58
protected int FeatureCount ;
59
- private protected TreeEnsemble TrainedEnsemble ;
59
+ private protected InternalTreeEnsemble TrainedEnsemble ;
60
60
private protected RoleMappedData ValidData ;
61
61
/// <summary>
62
62
/// If not null, it's a test data set passed in from training context. It will be converted to one element in
@@ -88,7 +88,7 @@ public abstract class FastTreeTrainerBase<TArgs, TTransformer, TModel> :
88
88
protected double [ ] InitValidScores ;
89
89
protected double [ ] [ ] InitTestScores ;
90
90
//protected int Iteration;
91
- private protected TreeEnsemble Ensemble ;
91
+ private protected InternalTreeEnsemble Ensemble ;
92
92
93
93
protected bool HasValidSet => ValidSet != null ;
94
94
@@ -488,7 +488,7 @@ protected bool AreSamplesWeighted(IChannel ch)
488
488
489
489
private void InitializeEnsemble ( )
490
490
{
491
- Ensemble = new TreeEnsemble ( ) ;
491
+ Ensemble = new InternalTreeEnsemble ( ) ;
492
492
}
493
493
494
494
/// <summary>
@@ -793,7 +793,7 @@ private float GetMachineAvailableBytes()
793
793
794
794
// This method is called at the end of each training iteration, with the tree that was learnt on that iteration.
795
795
// Note that this tree can be null if no tree was learnt this iteration.
796
- private protected virtual void CustomizedTrainingIteration ( RegressionTree tree )
796
+ private protected virtual void CustomizedTrainingIteration ( InternalRegressionTree tree )
797
797
{
798
798
}
799
799
@@ -924,7 +924,7 @@ internal abstract class DataConverter
924
924
/// of features we actually trained on. This can be null in the event that no filtering
925
925
/// occurred.
926
926
/// </summary>
927
- /// <seealso cref="TreeEnsemble .RemapFeatures"/>
927
+ /// <seealso cref="InternalTreeEnsemble .RemapFeatures"/>
928
928
public int [ ] FeatureMap ;
929
929
930
930
protected readonly IHost Host ;
@@ -2811,13 +2811,13 @@ public abstract class TreeEnsembleModelParameters :
2811
2811
ISingleCanSaveOnnx
2812
2812
{
2813
2813
/// <summary>
2814
- /// An ensemble of trees exposed to users. It is a wrapper on the <see langword="internal"/> <see cref="TreeEnsemble "/> in <see cref="ML.FastTree.Representation.TreeRegressorCollection "/>.
2814
+ /// An ensemble of trees exposed to users. It is a wrapper on the <see langword="internal"/> <see cref="InternalTreeEnsemble "/> in <see cref="ML.FastTree.Representation.TreeEnsemble "/>.
2815
2815
/// </summary>
2816
- public ML . FastTree . Representation . TreeRegressorCollection TrainedTreeCollection { get ; }
2816
+ public ML . FastTree . Representation . TreeEnsemble TrainedTreeCollection { get ; }
2817
2817
2818
2818
// The below two properties are necessary for tree Visualizer
2819
2819
[ BestFriend ]
2820
- internal TreeEnsemble TrainedEnsemble => TrainedTreeCollection . TreeEnsemble ;
2820
+ internal InternalTreeEnsemble TrainedEnsemble => TrainedTreeCollection . UnderlyingTreeEnsemble ;
2821
2821
int ITreeEnsemble . NumTrees => TrainedEnsemble . NumTrees ;
2822
2822
2823
2823
// Inner args is used only for documentation purposes when saving comments to INI files.
@@ -2861,7 +2861,7 @@ public abstract class TreeEnsembleModelParameters :
2861
2861
2862
2862
/// The following function is used in both FastTree and LightGBM so <see cref="BestFriendAttribute"/> is required.
2863
2863
[ BestFriend ]
2864
- internal TreeEnsembleModelParameters ( IHostEnvironment env , string name , TreeEnsemble trainedEnsemble , int numFeatures , string innerArgs )
2864
+ internal TreeEnsembleModelParameters ( IHostEnvironment env , string name , InternalTreeEnsemble trainedEnsemble , int numFeatures , string innerArgs )
2865
2865
: base ( env , name )
2866
2866
{
2867
2867
Host . CheckValue ( trainedEnsemble , nameof ( trainedEnsemble ) ) ;
@@ -2871,7 +2871,7 @@ internal TreeEnsembleModelParameters(IHostEnvironment env, string name, TreeEnse
2871
2871
// REVIEW: When we make the predictor wrapper, we may want to further "optimize"
2872
2872
// the trained ensemble to, for instance, resize arrays so that they are of the length
2873
2873
// the actual number of leaves/nodes, or remove unnecessary arrays, and so forth.
2874
- TrainedTreeCollection = new ML . FastTree . Representation . TreeRegressorCollection ( trainedEnsemble ) ;
2874
+ TrainedTreeCollection = new ML . FastTree . Representation . TreeEnsemble ( trainedEnsemble ) ;
2875
2875
InnerArgs = innerArgs ;
2876
2876
NumFeatures = numFeatures ;
2877
2877
@@ -2899,7 +2899,7 @@ protected TreeEnsembleModelParameters(IHostEnvironment env, string name, ModelLo
2899
2899
if ( ctx . Header . ModelVerWritten >= VerCategoricalSplitSerialized )
2900
2900
categoricalSplits = true ;
2901
2901
2902
- TrainedTreeCollection = new ML . FastTree . Representation . TreeRegressorCollection ( new TreeEnsemble ( ctx , usingDefaultValues , categoricalSplits ) ) ;
2902
+ TrainedTreeCollection = new ML . FastTree . Representation . TreeEnsemble ( new InternalTreeEnsemble ( ctx , usingDefaultValues , categoricalSplits ) ) ;
2903
2903
MaxSplitFeatIdx = TrainedEnsemble . GetMaxFeatureIndex ( ) ;
2904
2904
2905
2905
InnerArgs = ctx . LoadStringOrNull ( ) ;
@@ -3202,7 +3202,7 @@ private void SaveEnsembleAsCode(TextWriter writer, RoleMappedSchema schema)
3202
3202
MetadataUtils . GetSlotNames ( schema , RoleMappedSchema . ColumnRole . Feature , NumFeatures , ref names ) ;
3203
3203
3204
3204
int i = 0 ;
3205
- foreach ( RegressionTree tree in TrainedEnsemble . Trees )
3205
+ foreach ( InternalRegressionTree tree in TrainedEnsemble . Trees )
3206
3206
{
3207
3207
writer . Write ( "double treeOutput{0}=" , i ) ;
3208
3208
SaveTreeAsCode ( tree , writer , in names ) ;
@@ -3218,13 +3218,13 @@ private void SaveEnsembleAsCode(TextWriter writer, RoleMappedSchema schema)
3218
3218
/// <summary>
3219
3219
/// Convert a single tree to code, called recursively
3220
3220
/// </summary>
3221
- private void SaveTreeAsCode ( RegressionTree tree , TextWriter writer , in VBuffer < ReadOnlyMemory < char > > names )
3221
+ private void SaveTreeAsCode ( InternalRegressionTree tree , TextWriter writer , in VBuffer < ReadOnlyMemory < char > > names )
3222
3222
{
3223
3223
ToCSharp ( tree , writer , 0 , in names ) ;
3224
3224
}
3225
3225
3226
3226
// converts a subtree into a C# expression
3227
- private void ToCSharp ( RegressionTree tree , TextWriter writer , int node , in VBuffer < ReadOnlyMemory < char > > names )
3227
+ private void ToCSharp ( InternalRegressionTree tree , TextWriter writer , int node , in VBuffer < ReadOnlyMemory < char > > names )
3228
3228
{
3229
3229
if ( node < 0 )
3230
3230
{
@@ -3308,9 +3308,9 @@ Row ICanGetSummaryAsIRow.GetStatsIRowOrNull(RoleMappedSchema schema)
3308
3308
3309
3309
private sealed class Tree : ITree < VBuffer < Float > >
3310
3310
{
3311
- private readonly RegressionTree _regTree ;
3311
+ private readonly InternalRegressionTree _regTree ;
3312
3312
3313
- public Tree ( RegressionTree regTree )
3313
+ public Tree ( InternalRegressionTree regTree )
3314
3314
{
3315
3315
_regTree = regTree ;
3316
3316
}
0 commit comments