Поделиться через


QuantileRegressionTree Класс

Определение

Класс контейнера для предоставления Microsoft.ML.Trainers.FastTree.InternalQuantileRegressionTreeпользователям атрибутов. Этот класс не должен быть изменяемым, поэтому он содержит много элементов только для чтения. В дополнение к наследуемым вещам мы добавляем RegressionTreeBaseGetLeafSamplesAt(Int32) и добавляем (GetLeafSampleWeightsAt(Int32)суб-выборки) обучающие метки, падающие на лист листеIndex-th и их весовые коэффициенты.

public sealed class QuantileRegressionTree : Microsoft.ML.Trainers.FastTree.RegressionTreeBase
type QuantileRegressionTree = class
    inherit RegressionTreeBase
Public NotInheritable Class QuantileRegressionTree
Inherits RegressionTreeBase
Наследование
QuantileRegressionTree

Свойства

CategoricalSplitFlags

Определите типы функции разбиения. Если CategoricalSplitFlags[i] имеет значение true, i-th node использует функцию разделения категорий. В противном случае используется традиционное числовое разделение.

(Унаследовано от RegressionTreeBase)
LeafValues

LeafValues[i] — это выученное значение на i-м листе.

(Унаследовано от RegressionTreeBase)
LeftChild

LeftChild[i] — это дочерний индекс узла i-го узла, используемый, когда (1) числовая функция, индексированная NumericalSplitFeatureIndexes[i] меньше или равна порогу NumericalSplitThresholds[i], или (2) категориальные признаки, индексированные по возвращаемой GetCategoricalCategoricalSplitFeatureRangeAt(Int32)значению nodeIndex=i, не являются подсетью GetCategoricalSplitFeaturesAt(Int32) с nodeIndex=i. Обратите внимание, что случай (1) происходит только в том случае, если CategoricalSplitFlags[i] имеет значение false и в противном случае (2) возникает. Ненулевое возвращаемое значение означает узел (т. е. не конечный); Например, 2 означает 3-й узел в базовой Microsoft.ML.Trainers.FastTree.RegressionTreeBase._treeбазе. Отрицательное возвращаемое значение означает конечный элемент; Например, -1 обозначает ~лист (-1)-й лист в базовой Microsoft.ML.Trainers.FastTree.RegressionTreeBase._treeбазе. Обратите внимание, что ~ это побитовый оператор дополнения в C#; дополнительные сведения см. в разделе https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/bitwise-complement-operator.

(Унаследовано от RegressionTreeBase)
NumberOfLeaves

Количество листьев в дереве. Обратите внимание, что NumberOfLeaves не учитывается неконечные узлы.

(Унаследовано от RegressionTreeBase)
NumberOfNodes

Количество узлов в дереве. Это не включает никаких листьев. Например, дерево с node0-node1, node0-leaf3>>, node1-leaf1>, node1-leaf2>NumberOfNodes и NumberOfLeaves должно быть 2 и 3 соответственно.

(Унаследовано от RegressionTreeBase)
NumericalSplitFeatureIndexes

NumericalSplitFeatureIndexes[i] — это индекс признаков, используемый функцией разбиения узла i-го узла. Это значение допустимо только в том случае, если CategoricalSplitFlags[i] имеет значение false.

(Унаследовано от RegressionTreeBase)
NumericalSplitThresholds

NumericalSplitThresholds[i] — это пороговое значение компонента, индексированного NumericalSplitFeatureIndexes[i], где i — индекс i-го узла (например, i — 1 для 2-го узла в Microsoft.ML.Trainers.FastTree.RegressionTreeBase._tree).

(Унаследовано от RegressionTreeBase)
RightChild

RightChild[i] — это дочерний индекс i-го узла, используемый, когда два условия (1) и (2), описанные в LeftChildдокументе, не соответствуют действительности. Его возвращаемое значение соответствует формату, используемому в LeftChild.

(Унаследовано от RegressionTreeBase)
SplitGains

Выгоды, полученные путем разделения данных на узлах. Его значение i-го вычисляется из разбиения на i-м узле.

(Унаследовано от RegressionTreeBase)

Методы

GetCategoricalCategoricalSplitFeatureRangeAt(Int32)

Возвращает диапазон категориальных пороговых значений, используемый на узле, индексированного nodeIndex. Категориальное разделение узла, индексированного nodeIndex, может одновременно рассматривать несколько последовательных функций ввода; их диапазон задается в параметре GetCategoricalCategoricalSplitFeatureRangeAt(Int32). Возвращаемое значение всегда является массивом из 2 элементов; его 1-й элемент является начальным индексом, а его 2-й элемент является конечным индексом сегмента признаков. Возвращаемое значение допустимо только в том случае, если CategoricalSplitFlagsзначение [nodeIndex] имеет значение true.

(Унаследовано от RegressionTreeBase)
GetCategoricalSplitFeaturesAt(Int32)

Возвращает категориальные пороговые значения, используемые в узле, индексированных nodeIndex. Если считается, что функция ввода не соответствует любому из возвращаемых GetCategoricalSplitFeaturesAt(Int32)значений, мы называем это событием меньше порогового значения, поэтому LeftChild[nodeIndex] является дочерним узлом, который должен идти дальше. Возвращаемое значение допустимо только в том случае, если CategoricalSplitFlagsзначение [nodeIndex] имеет значение true.

(Унаследовано от RegressionTreeBase)
GetLeafSamplesAt(Int32)

Возвращает метки обучения, падающие на указанный лист.

GetLeafSampleWeightsAt(Int32)

Возвращает весовые коэффициенты для меток обучения, падающих на указанный лист. Если GetLeafSamplesAt(Int32) и GetLeafSampleWeightsAt(Int32) использовать те же входные данные, то возвращаемое i-е значение этой функции является весом метки i-th в GetLeafSamplesAt(Int32).

Применяется к