New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lockdown Microsoft.ML.FastTree public surface #2511

Merged
merged 6 commits into from Feb 19, 2019

Conversation

@codemzs
Copy link
Member

codemzs commented Feb 12, 2019

fixes #2266

Reduces public API count from 1098 to 274 237.

Before After
image image
@codemzs

This comment has been minimized.

Copy link
Member Author

codemzs commented Feb 12, 2019

### NEW API SURFACE:

N:Microsoft.ML
T:Microsoft.ML.TreeExtensions
M:Microsoft.ML.TreeExtensions.FastForest(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,Microsoft.ML.Trainers.FastTree.FastForestClassification.Options)
M:Microsoft.ML.TreeExtensions.FastForest(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.FastForest(Microsoft.ML.RegressionCatalog.RegressionTrainers,Microsoft.ML.Trainers.FastTree.FastForestRegression.Options)
M:Microsoft.ML.TreeExtensions.FastForest(Microsoft.ML.RegressionCatalog.RegressionTrainers,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Options)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.RankingCatalog.RankingTrainers,Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.RankingCatalog.RankingTrainers,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.RegressionCatalog.RegressionTrainers,Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer.Options)
M:Microsoft.ML.TreeExtensions.FastTree(Microsoft.ML.RegressionCatalog.RegressionTrainers,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.FastTreeTweedie(Microsoft.ML.RegressionCatalog.RegressionTrainers,Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Options)
M:Microsoft.ML.TreeExtensions.FastTreeTweedie(Microsoft.ML.RegressionCatalog.RegressionTrainers,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Double)
M:Microsoft.ML.TreeExtensions.GeneralizedAdditiveModels(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer.Options)
M:Microsoft.ML.TreeExtensions.GeneralizedAdditiveModels(Microsoft.ML.BinaryClassificationCatalog.BinaryClassificationTrainers,System.String,System.String,System.String,System.Int32,System.Double,System.Int32)
M:Microsoft.ML.TreeExtensions.GeneralizedAdditiveModels(Microsoft.ML.RegressionCatalog.RegressionTrainers,Microsoft.ML.Trainers.FastTree.RegressionGamTrainer.Options)
M:Microsoft.ML.TreeExtensions.GeneralizedAdditiveModels(Microsoft.ML.RegressionCatalog.RegressionTrainers,System.String,System.String,System.String,System.Int32,System.Double,System.Int32)
N:Microsoft.ML.FastTree
T:Microsoft.ML.FastTree.QuantileRegressionTree
M:Microsoft.ML.FastTree.QuantileRegressionTree.GetLeafSamplesAt(System.Int32)
M:Microsoft.ML.FastTree.QuantileRegressionTree.GetLeafSampleWeightsAt(System.Int32)
T:Microsoft.ML.FastTree.QuantileRegressionTreeEnsemble
T:Microsoft.ML.FastTree.RegressionTree
T:Microsoft.ML.FastTree.RegressionTreeBase
P:Microsoft.ML.FastTree.RegressionTreeBase.CategoricalSplitFlags
P:Microsoft.ML.FastTree.RegressionTreeBase.GtChild
P:Microsoft.ML.FastTree.RegressionTreeBase.LeafValues
P:Microsoft.ML.FastTree.RegressionTreeBase.LteChild
P:Microsoft.ML.FastTree.RegressionTreeBase.NumericalSplitFeatureIndexes
P:Microsoft.ML.FastTree.RegressionTreeBase.NumericalSplitThresholds
P:Microsoft.ML.FastTree.RegressionTreeBase.NumLeaves
P:Microsoft.ML.FastTree.RegressionTreeBase.NumNodes
M:Microsoft.ML.FastTree.RegressionTreeBase.get_CategoricalSplitFlags
M:Microsoft.ML.FastTree.RegressionTreeBase.GetCategoricalCategoricalSplitFeatureRangeAt(System.Int32)
M:Microsoft.ML.FastTree.RegressionTreeBase.GetCategoricalSplitFeaturesAt(System.Int32)
M:Microsoft.ML.FastTree.RegressionTreeBase.get_GtChild
M:Microsoft.ML.FastTree.RegressionTreeBase.get_LeafValues
M:Microsoft.ML.FastTree.RegressionTreeBase.get_LteChild
M:Microsoft.ML.FastTree.RegressionTreeBase.get_NumericalSplitFeatureIndexes
M:Microsoft.ML.FastTree.RegressionTreeBase.get_NumericalSplitThresholds
M:Microsoft.ML.FastTree.RegressionTreeBase.get_NumLeaves
M:Microsoft.ML.FastTree.RegressionTreeBase.get_NumNodes
T:Microsoft.ML.FastTree.RegressionTreeEnsemble
T:Microsoft.ML.FastTree.TreeEnsemble1 P:Microsoft.ML.FastTree.TreeEnsemble1.Bias
P:Microsoft.ML.FastTree.TreeEnsemble1.Trees P:Microsoft.ML.FastTree.TreeEnsemble1.TreeWeights
M:Microsoft.ML.FastTree.TreeEnsemble1.get_Bias M:Microsoft.ML.FastTree.TreeEnsemble1.get_Trees
M:Microsoft.ML.FastTree.TreeEnsemble1.get_TreeWeights N:Microsoft.ML.Trainers.FastTree T:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamModelParameters M:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamModelParameters.#ctor(Microsoft.ML.IHostEnvironment,System.Double[][],System.Double[][],System.Double,System.Int32,System.Int32[]) T:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer M:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView) T:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer.Options F:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer.Options.UnbalancedSets M:Microsoft.ML.Trainers.FastTree.BinaryClassificationGamTrainer.Options.#ctor T:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.EarlyStoppingRule F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithm F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.BestStepRankingRegressionTrees F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.EnablePruning F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.FilterZeroLambdas F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.RandomStart F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.UseLineSearch F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.UseTolerantPruning F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.WriteLastEnsemble F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.DropoutRate F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.LearningRates F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.MaxTreeOutput F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.MinStepSize F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.PruningThreshold F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.Shrinkage F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.EarlyStoppingMetrics F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.GetDerivativesSampleRate F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.NumPostBracketSteps F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.PruningWindowSize F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.BaselineAlphaRisk F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.BaselineScoresFormula F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.PositionDiscountFreeform M:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.#ctor T:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithmType F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithmType.AcceleratedGradientDescent F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithmType.ConjugateGradientDescent F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithmType.GradientDescent F:Microsoft.ML.Trainers.FastTree.BoostedTreeArgs.OptimizationAlgorithmType.value__ T:Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase3
T:Microsoft.ML.Trainers.FastTree.Bundle
F:Microsoft.ML.Trainers.FastTree.Bundle.Adjacent
F:Microsoft.ML.Trainers.FastTree.Bundle.AggregateLowPopulation
F:Microsoft.ML.Trainers.FastTree.Bundle.None
F:Microsoft.ML.Trainers.FastTree.Bundle.value__
T:Microsoft.ML.Trainers.FastTree.FastForestClassification
M:Microsoft.ML.Trainers.FastTree.FastForestClassification.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.FastForestClassification.Options
F:Microsoft.ML.Trainers.FastTree.FastForestClassification.Options.MaxTreeOutput
M:Microsoft.ML.Trainers.FastTree.FastForestClassification.Options.#ctor
T:Microsoft.ML.Trainers.FastTree.FastForestClassificationModelParameters
T:Microsoft.ML.Trainers.FastTree.FastForestOptionsBase
F:Microsoft.ML.Trainers.FastTree.FastForestOptionsBase.QuantileSampleCount
M:Microsoft.ML.Trainers.FastTree.FastForestOptionsBase.#ctor
T:Microsoft.ML.Trainers.FastTree.FastForestRegression
M:Microsoft.ML.Trainers.FastTree.FastForestRegression.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.FastForestRegression.Options
F:Microsoft.ML.Trainers.FastTree.FastForestRegression.Options.ShuffleLabels
M:Microsoft.ML.Trainers.FastTree.FastForestRegression.Options.#ctor
T:Microsoft.ML.Trainers.FastTree.FastForestRegressionModelParameters
M:Microsoft.ML.Trainers.FastTree.FastForestRegressionModelParameters.Microsoft#ML#Internal#Internallearn#IQuantileRegressionPredictor#CreateMapper(System.Double[])
M:Microsoft.ML.Trainers.FastTree.FastForestRegressionModelParameters.Microsoft#ML#Internal#Internallearn#IQuantileValueMapper#GetMapper(System.Single[])
T:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer
M:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Options
F:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Options.UnbalancedSets
M:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Options.#ctor
M:Microsoft.ML.Trainers.FastTree.FastTreeBinaryClassificationTrainer.Options.Microsoft#ML#IComponentFactory{Microsoft#ML#ITrainer}#CreateComponent(Microsoft.ML.IHostEnvironment)
T:Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters
T:Microsoft.ML.Trainers.FastTree.FastTreeRankingModelParameters
T:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer
M:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.DistanceWeight2
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.NormalizeQueryLambdas
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.ShiftedNdcg
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.TrainDcg
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.CostFunctionParam
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.LambdaMartMaxTruncation
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.CustomGains
F:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.SortingAlgorithm
M:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.#ctor
M:Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options.Microsoft#ML#IComponentFactory{Microsoft#ML#ITrainer}#CreateComponent(Microsoft.ML.IHostEnvironment)
T:Microsoft.ML.Trainers.FastTree.FastTreeRegressionModelParameters
T:Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer
M:Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer.Options
M:Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer.Options.#ctor
M:Microsoft.ML.Trainers.FastTree.FastTreeRegressionTrainer.Options.Microsoft#ML#IComponentFactory{Microsoft#ML#ITrainer}#CreateComponent(Microsoft.ML.IHostEnvironment)
T:Microsoft.ML.Trainers.FastTree.FastTreeTrainerBase3 P:Microsoft.ML.Trainers.FastTree.FastTreeTrainerBase3.Info
M:Microsoft.ML.Trainers.FastTree.FastTreeTrainerBase3.get_Info T:Microsoft.ML.Trainers.FastTree.FastTreeTweedieModelParameters T:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer M:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView) T:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Options F:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Options.Index M:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Options.#ctor M:Microsoft.ML.Trainers.FastTree.FastTreeTweedieTrainer.Options.Microsoft#ML#IComponentFactory{Microsoft#ML#ITrainer}#CreateComponent(Microsoft.ML.IHostEnvironment) T:Microsoft.ML.Trainers.FastTree.GamModelParametersBase F:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Intercept F:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.NumShapeFunctions P:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Data#IValueMapper#InputType P:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Data#IValueMapper#OutputType P:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#ICalculateFeatureContribution#FeatureContributionCalculator M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.GetBinEffects M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.GetBinEffects(System.Int32) M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.GetBinUpperBounds M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.GetBinUpperBounds(System.Int32) M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Data#IValueMapper#GetMapper``2 M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Data#IValueMapper#get_InputType M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Data#IValueMapper#get_OutputType M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#ICalculateFeatureContribution#get_FeatureContributionCalculator M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#ICanSaveInIniFormat#SaveAsIni(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema,Microsoft.ML.Calibrator.ICalibrator) M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#ICanSaveInTextFormat#SaveAsText(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#ICanSaveSummary#SaveSummary(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.GamModelParametersBase.Microsoft#ML#Internal#Internallearn#IFeatureContributionMapper#GetFeatureContributionMapper``2(System.Int32,System.Int32,System.Boolean) T:Microsoft.ML.Trainers.FastTree.GamTrainerBase3
P:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.Info M:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.get_Info
T:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.EnablePruning
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.FeatureFlocks F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.EntropyCoefficient
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.LearningRates F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.MaxOutput
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.GainConfidenceLevel F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.GetDerivativesSampleRate
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.MaxBins F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.MinDocuments
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.NumIterations F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.RngSeed
F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.DiskTranspose F:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.NumThreads
M:Microsoft.ML.Trainers.FastTree.GamTrainerBase3.OptionsBase.#ctor T:Microsoft.ML.Trainers.FastTree.RandomForestTrainerBase3
T:Microsoft.ML.Trainers.FastTree.RegressionGamModelParameters
M:Microsoft.ML.Trainers.FastTree.RegressionGamModelParameters.#ctor(Microsoft.ML.IHostEnvironment,System.Double[][],System.Double[][],System.Double,System.Int32,System.Int32[])
T:Microsoft.ML.Trainers.FastTree.RegressionGamTrainer
M:Microsoft.ML.Trainers.FastTree.RegressionGamTrainer.Fit(Microsoft.Data.DataView.IDataView,Microsoft.Data.DataView.IDataView)
T:Microsoft.ML.Trainers.FastTree.RegressionGamTrainer.Options
F:Microsoft.ML.Trainers.FastTree.RegressionGamTrainer.Options.PruningMetrics
M:Microsoft.ML.Trainers.FastTree.RegressionGamTrainer.Options.#ctor
T:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters
F:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.InputType
F:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.OutputType
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Data#IValueMapper#InputType
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Data#IValueMapper#OutputType
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICalculateFeatureContribution#FeatureContributionCalculator
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Model#Pfa#ICanSavePfa#CanSavePfa
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#TreePredictor#ITreeEnsemble#NumTrees
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.GetFeatureWeights(Microsoft.ML.Data.VBuffer{System.Single}@)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.GetLeaf(System.Int32,Microsoft.ML.Data.VBuffer{System.Single}@,System.Collections.Generic.List{System.Int32}@)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.GetLeafValue(System.Int32,System.Int32)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Data#IValueMapper#GetMapper2 M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Data#IValueMapper#get_InputType M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Data#IValueMapper#get_OutputType M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICalculateFeatureContribution#get_FeatureContributionCalculator M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanGetSummaryAsIRow#GetStatsIRowOrNull(Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanGetSummaryAsIRow#GetSummaryIRowOrNull(Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanGetSummaryInKeyValuePairs#GetSummaryInKeyValuePairs(Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanSaveInIniFormat#SaveAsIni(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema,Microsoft.ML.Calibrator.ICalibrator) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanSaveInSourceCode#SaveAsCode(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanSaveInTextFormat#SaveAsText(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#ICanSaveSummary#SaveSummary(System.IO.TextWriter,Microsoft.ML.Data.RoleMappedSchema) M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Internal#Internallearn#IFeatureContributionMapper#GetFeatureContributionMapper2(System.Int32,System.Int32,System.Boolean)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Model#Onnx#ICanSaveOnnx#CanSaveOnnx(Microsoft.ML.Model.Onnx.OnnxContext)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Model#Onnx#ISingleCanSaveOnnx#SaveAsOnnx(Microsoft.ML.Model.Onnx.OnnxContext,System.String[],System.String)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Model#Pfa#ICanSavePfa#get_CanSavePfa
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#Model#Pfa#ISingleCanSavePfa#SaveAsPfa(Microsoft.ML.Model.Pfa.BoundPfaContext,Newtonsoft.Json.Linq.JToken)
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#TreePredictor#ITreeEnsemble#GetTrees
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParameters.Microsoft#ML#TreePredictor#ITreeEnsemble#get_NumTrees
T:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnQuantileRegressionTree
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnQuantileRegressionTree.TrainedTreeEnsemble
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnQuantileRegressionTree.get_TrainedTreeEnsemble
T:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnRegressionTree
P:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnRegressionTree.TrainedTreeEnsemble
M:Microsoft.ML.Trainers.FastTree.TreeEnsembleModelParametersBasedOnRegressionTree.get_TrainedTreeEnsemble
T:Microsoft.ML.Trainers.FastTree.TreeOptions
F:Microsoft.ML.Trainers.FastTree.TreeOptions.Bundling
F:Microsoft.ML.Trainers.FastTree.TreeOptions.AllowEmptyTrees
F:Microsoft.ML.Trainers.FastTree.TreeOptions.CategoricalSplit
F:Microsoft.ML.Trainers.FastTree.TreeOptions.CompressEnsemble
F:Microsoft.ML.Trainers.FastTree.TreeOptions.ExecutionTimes
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureFlocks
F:Microsoft.ML.Trainers.FastTree.TreeOptions.PrintTestGraph
F:Microsoft.ML.Trainers.FastTree.TreeOptions.PrintTrainValidGraph
F:Microsoft.ML.Trainers.FastTree.TreeOptions.BaggingTrainFraction
F:Microsoft.ML.Trainers.FastTree.TreeOptions.Bias
F:Microsoft.ML.Trainers.FastTree.TreeOptions.EntropyCoefficient
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureFirstUsePenalty
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureFraction
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureReusePenalty
F:Microsoft.ML.Trainers.FastTree.TreeOptions.GainConfidenceLevel
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MinDocsPercentageForCategoricalSplit
F:Microsoft.ML.Trainers.FastTree.TreeOptions.Smoothing
F:Microsoft.ML.Trainers.FastTree.TreeOptions.SoftmaxTemperature
F:Microsoft.ML.Trainers.FastTree.TreeOptions.SparsifyThreshold
F:Microsoft.ML.Trainers.FastTree.TreeOptions.SplitFraction
F:Microsoft.ML.Trainers.FastTree.TreeOptions.BaggingSize
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureCompressionLevel
F:Microsoft.ML.Trainers.FastTree.TreeOptions.FeatureSelectSeed
F:Microsoft.ML.Trainers.FastTree.TreeOptions.HistogramPoolSize
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MaxBins
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MaxCategoricalGroupsPerNode
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MaxCategoricalSplitPoints
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MaxTreesAfterCompression
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MinDocsForCategoricalSplit
F:Microsoft.ML.Trainers.FastTree.TreeOptions.MinDocumentsInLeafs
F:Microsoft.ML.Trainers.FastTree.TreeOptions.NumLeaves
F:Microsoft.ML.Trainers.FastTree.TreeOptions.NumTrees
F:Microsoft.ML.Trainers.FastTree.TreeOptions.RngSeed
F:Microsoft.ML.Trainers.FastTree.TreeOptions.TestFrequency
F:Microsoft.ML.Trainers.FastTree.TreeOptions.DiskTranspose
F:Microsoft.ML.Trainers.FastTree.TreeOptions.NumThreads
M:Microsoft.ML.Trainers.FastTree.TreeOptions.#ctor

#Resolved

@codemzs codemzs requested review from TomFinley and zeahmed Feb 12, 2019

@codemzs codemzs added the api label Feb 12, 2019

@codemzs codemzs added this to In progress in Project 13 via automation Feb 12, 2019

@codemzs codemzs added this to the 0219 milestone Feb 12, 2019

@codecov

This comment has been minimized.

Copy link

codecov bot commented Feb 12, 2019

Codecov Report

Merging #2511 into master will increase coverage by <.01%.
The diff coverage is 55.78%.

@@            Coverage Diff             @@
##           master    #2511      +/-   ##
==========================================
+ Coverage   71.53%   71.54%   +<.01%     
==========================================
  Files         800      800              
  Lines      141858   141846      -12     
  Branches    16121    16119       -2     
==========================================
+ Hits       101476   101479       +3     
+ Misses      35930    35916      -14     
+ Partials     4452     4451       -1
Flag Coverage Δ
#Debug 71.54% <55.78%> (ø) ⬆️
#production 67.83% <55.78%> (+0.01%) ⬆️
#test 85.73% <ø> (-0.05%) ⬇️

@shauheen shauheen added this to In Progress in v0.11 Feb 12, 2019

@shauheen shauheen removed this from In Progress in v0.11 Feb 12, 2019

@Ivanidzo4ka

This comment has been minimized.

Copy link
Member

Ivanidzo4ka commented Feb 12, 2019

public delegate void SignatureTreeEnsembleTrainer();

feel free to make it internal #Resolved


Refers to: src/Microsoft.ML.FastTree/FastTree.cs:39 in 1ae455e. [](commit_id = 1ae455e, deletion_comment = False)

@codemzs codemzs force-pushed the codemzs:fasttreesurfacearea branch 2 times, most recently from a5d31a6 to 40a8d85 Feb 15, 2019

@codemzs codemzs self-assigned this Feb 18, 2019

@codemzs codemzs force-pushed the codemzs:fasttreesurfacearea branch from 40a8d85 to f67e38e Feb 19, 2019

@@ -900,12 +899,12 @@ private double[] GetInitScores(Dataset set)

internal abstract class DataConverter
{
protected readonly int NumFeatures;
private protected readonly int NumFeatures;

This comment has been minimized.

@yaeldekel

yaeldekel Feb 19, 2019

Member

private [](start = 8, length = 7)

For an internal class, is there a difference between protected and private protected? #Resolved

This comment has been minimized.

@codemzs

codemzs Feb 19, 2019

Author Member

probably not but I don't see this change doing any harm either :-)


In reply to: 258221426 [](ancestors = 258221426)

private protected double[] InitTrainScores;
private protected double[] InitValidScores;
private protected double[][] InitTestScores;
//internal int Iteration;

This comment has been minimized.

@yaeldekel

yaeldekel Feb 19, 2019

Member

//internal int Iteration; [](start = 8, length = 25)

Can be deleted. #Resolved

@@ -223,18 +223,18 @@ private IEnumerable<bool> GetClassificationLabelsFromRatings(Dataset set)
return set.Ratings.Select(x => x >= 1);
}

protected override void PrepareLabels(IChannel ch)
private protected override void PrepareLabels(IChannel ch)
{
_trainSetLabels = GetClassificationLabelsFromRatings(TrainSet).ToArray(TrainSet.NumDocs);
//Here we set regression labels to what is in bin file if the values were not overriden with floats

This comment has been minimized.

@yaeldekel

yaeldekel Feb 19, 2019

Member

//Here we set regression labels to what is in bin file if the values were not overriden with floats [](start = 12, length = 99)

Not related to your change, but - should this be deleted? #Resolved

This comment has been minimized.

@TomFinley

TomFinley Feb 19, 2019

Contributor

It may be, I might prefer to wait on that for now. #Resolved

@@ -8,7 +8,7 @@

namespace Microsoft.ML
{
public sealed class QuantileStatistics : IQuantileDistribution<float>
internal sealed class QuantileStatistics : IQuantileDistribution<float>

This comment has been minimized.

@yaeldekel

yaeldekel Feb 19, 2019

Member

QuantileStatistics [](start = 26, length = 18)

The IQuantileDistribution interface seems to have just this one implementation,
which only uses the GetQuantile() method. Can this be defined instead as a private class inside FastForestRegressionModelParameters? #Resolved

This comment has been minimized.

@TomFinley

TomFinley Feb 19, 2019

Contributor

That would probably be positive. Then we can delete that internal IQuantileDistribution interface altogether. A quick and easy improvement in case we need to update this PR again.


In reply to: 258227442 [](ancestors = 258227442)

@TomFinley
Copy link
Contributor

TomFinley left a comment

Hi thanks for doing this @codemzs.

If you have time while waiting for a second signoff, the enhancements as suggested by @yaeldekel would be nice to improve our overall code quality, and I'd re-address the issues raised by @zeahmed since certainly having public abstract and virtual methods inside an interface class are not problematic at all. 😄 But only if you have time, code quality inside FastTree is sort of just problematic already.

@codemzs codemzs force-pushed the codemzs:fasttreesurfacearea branch from f67e38e to a29e51d Feb 19, 2019

@yaeldekel
Copy link
Member

yaeldekel left a comment

:shipit:

@codemzs codemzs merged commit 563607c into dotnet:master Feb 19, 2019

2 of 3 checks passed

MachineLearning-CodeCoverage in progress
Details
MachineLearning-CI #20190219.20 succeeded
Details
license/cla All CLA requirements met.
Details

Project 13 automation moved this from In progress to Done Feb 19, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment