다음을 통해 공유


RegressionTree 클래스

정의

사용자에게 특성을 노출하기 Microsoft.ML.Trainers.FastTree.InternalRegressionTree위한 컨테이너 클래스입니다. 이 클래스는 변경할 수 없으므로 읽기 전용 멤버가 많이 포함됩니다. RegressionTree 이는 동일 RegressionTreeBase 하지만 다른 파생 클래스 QuantileRegressionTree 에서는 일부 특성이 추가됩니다.

public sealed class RegressionTree : Microsoft.ML.Trainers.FastTree.RegressionTreeBase
type RegressionTree = class
    inherit RegressionTreeBase
Public NotInheritable Class RegressionTree
Inherits RegressionTreeBase
상속
RegressionTree

속성

CategoricalSplitFlags

분할 함수의 형식을 결정합니다. [i]가 true이면 CategoricalSplitFlagsi-th 노드는 범주 분할 함수를 사용합니다. 그렇지 않으면 기존 숫자 분할이 사용됩니다.

(다음에서 상속됨 RegressionTreeBase)
LeafValues

LeafValues[i]는 i-th 리프에서 배운 값입니다.

(다음에서 상속됨 RegressionTreeBase)
LeftChild

LeftChild[i]는 (1) [i]에 의해 NumericalSplitFeatureIndexes인덱싱된 숫자 기능이 임계값 NumericalSplitThresholds[i]보다 작거나 같거나, (2) nodeIndex=i가 nodeIndex=i의 하위 집합 GetCategoricalSplitFeaturesAt(Int32) 이 아닌 경우 사용되는 i번째 노드의 자식 인덱GetCategoricalCategoricalSplitFeatureRangeAt(Int32)스입니다. 사례 (1)는 [i]가 false이고 그렇지 않으면 (2)가 발생할 때만 CategoricalSplitFlags발생합니다. 음수가 아닌 반환 값은 노드(즉, 리프가 아님)를 의미합니다. 예를 들어 2는 기본 노드의 3번째 노드를 의미합니다 Microsoft.ML.Trainers.FastTree.RegressionTreeBase._tree. 음수 반환 값은 리프를 의미합니다. 예를 들어 -1은 기본 Microsoft.ML.Trainers.FastTree.RegressionTreeBase._tree리프의 ~(-1)을 나타냅니다. ~ 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>>가 있는 트리는 각각 2 NumberOfNodesNumberOfLeaves 3이어야 합니다.

(다음에서 상속됨 RegressionTreeBase)
NumericalSplitFeatureIndexes

NumericalSplitFeatureIndexes[i]는 i-th 노드의 분할 함수를 사용하는 기능 인덱스입니다. 이 값은 [i]가 false인 경우에만 CategoricalSplitFlags유효합니다.

(다음에서 상속됨 RegressionTreeBase)
NumericalSplitThresholds

NumericalSplitThresholds[i]는 [i]에 의해 NumericalSplitFeatureIndexes인덱싱된 기능의 임계값입니다. 여기서 i-th 노드의 인덱스입니다(예: 2번째 노드 Microsoft.ML.Trainers.FastTree.RegressionTreeBase._tree의 경우 1).

(다음에서 상속됨 RegressionTreeBase)
RightChild

RightChild[i]는 '의 문서에 설명된 LeftChild두 조건(1) 및 (2)이 true가 아닐 때 사용되는 i-th 노드의 자식 인덱스입니다. 반환 값은 에 사용된 LeftChild형식을 따릅니다.

(다음에서 상속됨 RegressionTreeBase)
SplitGains

노드에서 데이터를 분할하여 얻은 이득입니다. i-th 값은 i-th 노드의 분할에서 계산됩니다.

(다음에서 상속됨 RegressionTreeBase)

메서드

GetCategoricalCategoricalSplitFeatureRangeAt(Int32)

nodeIndex에서 인덱싱된 노드에서 사용되는 범주 임계값 범위를 반환합니다. nodeIndex에서 인덱싱된 노드의 범주 분할은 한 번에 여러 개의 연속 입력 기능을 고려할 수 있습니다. 해당 범위는 .로 지정됩니다 GetCategoricalCategoricalSplitFeatureRangeAt(Int32). 반환된 값은 항상 2개 요소 배열입니다. 첫 번째 요소는 시작 인덱스이고 두 번째 요소는 기능 세그먼트의 끝 인덱스입니다. 반환된 값은 [nodeIndex]가 true인 경우에만 CategoricalSplitFlags유효합니다.

(다음에서 상속됨 RegressionTreeBase)
GetCategoricalSplitFeaturesAt(Int32)

nodeIndex에서 인덱싱된 노드에서 사용되는 범주 임계값을 반환합니다. 고려된 입력 기능이 반환된 GetCategoricalSplitFeaturesAt(Int32)값과 일치하지 않는 경우 임계값 미만 이벤트라고 하므로 LeftChild[nodeIndex]는 입력이 다음에 가야 하는 자식 노드입니다. 반환된 값은 [nodeIndex]가 true인 경우에만 CategoricalSplitFlags유효합니다.

(다음에서 상속됨 RegressionTreeBase)

적용 대상