11 writes to Gain
Microsoft.ML.FastTree (11)
Dataset\FeatureFlock.cs (4)
324leafSplitCandidates.FeatureSplitInfo[featureIndex].Gain = (bestShiftedGain - gainShift) * trust - usePenalty; 481leafSplitCandidates.FeatureSplitInfo[firstFlockFeature].Gain = (bestShiftedGain - gainShift) * trust - 693leafSplitCandidates.FeatureSplitInfo[firstFlockFeature].Gain = (bestShiftedGain - gainShift) * trust - 915leafSplitCandidates.FeatureSplitInfo[firstFlockFeature].Gain = (bestShiftedGain - gainShift) * trust -
Training\TreeLearners\LeastSquaresRegressionTreeLearner.cs (7)
209newRootSplitInfo.Gain = 0; 398BestSplitInfoPerLeaf[lteChild].Gain = double.NegativeInfinity; 399BestSplitInfoPerLeaf[gtChild].Gain = double.NegativeInfinity; 803leafSplitCandidates.FeatureSplitInfo[feature].Gain = (bestShiftedGain - gainShift) * trust - usePenalty; 1078FeatureSplitInfo[f].Gain = double.NegativeInfinity; 1117Gain = double.NegativeInfinity; 1168Gain = buffer.ToDouble(ref offset);
23 references to Gain
Microsoft.ML.FastTree (23)
Dataset\FeatureFlock.cs (2)
226leafSplitCandidates.FeatureSplitInfo[leafSplitCandidates.FlockToBestFeature[flock]].Gain < 227leafSplitCandidates.FeatureSplitInfo[feature].Gain)
GamTrainer.cs (1)
368if (_leafSplitCandidates.FeatureSplitInfo[globalFeatureIndex].Gain > 0)
Training\TreeLearners\FastForestLeastSquaresTreeLearner.cs (3)
57double max = infos[0].Gain; 60if (infos[i].Gain > max && Rand.NextDouble() < SplitFraction || Double.IsNegativeInfinity(max)) 61max = infos[bestFeature = i].Gain;
Training\TreeLearners\LeastSquaresRegressionTreeLearner.cs (17)
240if (Double.IsNaN(rootSplitInfo.Gain) || Double.IsNegativeInfinity(rootSplitInfo.Gain)) 265bestLeaf = BestSplitInfoPerLeaf.Select(info => info.Gain).ArgMax(tree.NumLeaves); 269if (bestLeafSplitInfo.Gain <= 0) 290bestSplitInfo.CategoricalSplit, bestSplitInfo.Threshold, bestSplitInfo.LteOutput, bestSplitInfo.GTOutput, bestSplitInfo.Gain, bestSplitInfo.GainPValue); 456bestFeature = leafSplitCandidates.FeatureSplitInfo.Select(info => info.Gain) 462double max = infos[0].Gain; 471if (bestFeatInFlock != -1 && infos[bestFeatInFlock].Gain > max) 472max = infos[bestFeature = bestFeatInFlock].Gain; 479if (infos[f].Gain > max) 480max = infos[bestFeature = f].Gain; 486bestFeature = leafSplitCandidates.FeatureSplitInfo.Select(info => info.Gain / SoftmaxTemperature).SoftArgMax(Rand); 810leafSplitCandidates.FeatureSplitInfo[leafSplitCandidates.FlockToBestFeature[flock]].Gain < 811leafSplitCandidates.FeatureSplitInfo[feature].Gain) 1141Gain.ToByteArray(buffer, ref offset); 1188double myGain = Gain; 1189double otherGain = other.Gain;