BoostedTreesCalculateBestFeatureSplit

공개 최종 클래스 BoostedTreesCalculateBestFeatureSplit

각 기능에 대한 이득을 계산하고 기능에 대해 가능한 최상의 분할 정보를 반환합니다.

분할 정보는 각 기능에 대한 노드당 최상의 임계값(버킷 ID), 이득 및 왼쪽/오른쪽 노드 기여도입니다.

각 기능에서 모든 노드를 분할할 수는 없을 수도 있습니다. 따라서 가능한 노드 목록은 기능마다 다를 수 있습니다. 따라서 이 기능을 사용하여 분할할 수 있는 노드 목록이 포함된 각 기능에 대해 'node_ids_list'를 반환합니다.

이러한 방식으로 출력은 기능별 및 노드별로 최상의 분할이므로 나중에 결합하여 (가능한 모든 기능 중에서) 각 노드에 대해 최상의 분할을 생성해야 합니다.

출력 모양은 모든 텐서의 첫 번째 차원이 동일하고 각 기능에 대해 가능한 분할 노드 수와 동일한 방식으로 호환됩니다.

중첩 클래스

수업 BoostedTreesCalculateBestFeatureSplit.Options BoostedTreesCalculateBestFeatureSplit 의 선택적 속성

공개 방법

정적 BoostedTreesCalculateBestFeatureSplit
생성 ( Scope 범위, Operand <Integer> nodeIdRange, Operand <Float> statsSummary, Operand <Float> l1, Operand <Float> l2, Operand <Float> treeComplexity, Operand <Float> minNodeWeight, Long logitsDimension, Options... 옵션)
새로운 BoostedTreesCalculateBestFeatureSplit 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
출력 <정수>
기능크기 ()
기능이 다차원인 경우 특정 노드에 대해 분할할 각 기능에 대한 최상의 기능 차원을 나타내는 순위 1 텐서.
출력 <플로트>
이득 ()
특정 노드에 대해 분할할 각 기능의 최고 이득을 나타내는 순위 1 텐서.
출력 <플로트>
leftNodeContribs ()
상위 노드(출력 node_ids_list의 텐서 요소에 의해 제공됨)에서 각 기능에 대해 지정된 임계값만큼 왼쪽 방향으로 분기할 때 왼쪽 노드의 기여도를 나타내는 순위 2 텐서입니다.
출력 <정수>
노드 ID ()
각 기능에 대해 가능한 분할 노드 ID를 나타내는 순위 1 텐서.
출력 <플로트>
rightNodeContribs ()
left_node_contribs_list와 동일한 모양/조건을 갖는 순위 2 텐서이지만 값은 오른쪽 노드에 대한 것입니다.
정적 BoostedTreesCalculateBestFeatureSplit.Options
분할 유형 (문자열 분할 유형)
출력 <문자열>
SplitWithDefaultDirections ()
데이터가 누락된 경우 이동할 방향을 나타내는 순위 1 텐서.
출력 <정수>
임계값 ()
각 노드의 분할을 위해 (임계값으로) 비교할 버킷 ID를 나타내는 순위 1 텐서.

상속된 메서드

공개 방법

public static BoostedTreesCalculateBestFeatureSplit create ( Scope 범위, Operand <Integer> nodeIdRange, Operand <Float> statsSummary, Operand <Float> l1, Operand <Float> l2, Operand <Float> treeComplexity, Operand <Float> minNodeWeight, Long logitsDimension, Options.. . 옵션)

새로운 BoostedTreesCalculateBestFeatureSplit 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.

매개변수
범위 현재 범위
nodeIdRange `stats_summary_list` 내에서 처리할 노드 ID의 범위[첫 번째, 마지막)를 지정하는 순위 1 텐서(모양=[2]). 노드는 'for node_id in range(node_id_range[0], node_id_range[1])'처럼 텐서에 의해 지정된 두 노드 사이에서 반복됩니다(마지막 인덱스 node_id_range[1]은 제외됩니다).
통계요약 각 기능에 대한 노드별, 차원별, 버킷별 누적 통계 요약(그라디언트/헤시안)을 위한 순위 4 텐서(#shape=[max_splits, feature_dims, bucket, stats_dims]). 텐서의 첫 번째 차원은 최대 분할 수이므로 모든 요소가 사용되지는 않지만 node_ids에 지정된 인덱스만 사용됩니다.
l1 l1 인스턴스 기반 리프 가중치에 대한 정규화 인자.
l2 l2 인스턴스 기반 리프 가중치에 대한 정규화 인자입니다.
트리복잡성 리프별로 이득을 조정합니다.
minNodeWeight 노드 분할을 고려하기 전에 노드에 있는 헤센의 최소 평균입니다.
로지트차원 로짓의 차원, 즉 클래스 수.
옵션 선택적 속성 값을 전달합니다.
보고
  • BoostedTreesCalculateBestFeatureSplit의 새로운 인스턴스

공개 출력 <Integer> featureDimensions ()

기능이 다차원인 경우 특정 노드에 대해 분할할 각 기능에 대한 최상의 기능 차원을 나타내는 순위 1 텐서. 모양이나 크기와 같은 세부정보는 위를 참조하세요.

공개 출력 <Float> 이득 ()

특정 노드에 대해 분할할 각 기능의 최고 이득을 나타내는 순위 1 텐서. 모양이나 크기와 같은 세부정보는 위를 참조하세요.

공개 출력 <Float> leftNodeContribs ()

상위 노드(출력 node_ids_list의 텐서 요소에 의해 제공됨)에서 각 기능에 대해 지정된 임계값만큼 왼쪽 방향으로 분기할 때 왼쪽 노드의 기여도를 나타내는 순위 2 텐서입니다. 이 값은 부모 노드 값에 더해 왼쪽 노드 값을 만드는 데 사용됩니다. 두 번째 차원 크기는 1차원 로짓의 경우 1이지만 다중 클래스 문제의 경우 더 커집니다. 모양이나 크기와 같은 세부정보는 위를 참조하세요.

공개 출력 <Integer> nodeIds ()

각 기능에 대해 가능한 분할 노드 ID를 나타내는 순위 1 텐서. 목록의 길이는 num_features이지만 각 기능은 서로 다른 가능한 노드를 제공하므로 각 텐서는 크기가 다릅니다. 모양이나 크기와 같은 세부정보는 위를 참조하세요.

공개 출력 <Float> rightNodeContribs ()

left_node_contribs_list와 동일한 모양/조건을 갖는 순위 2 텐서이지만 값은 오른쪽 노드에 대한 것입니다.

공개 정적 BoostedTreesCalculateBestFeatureSplit.Options 분할 유형 (문자열 분할 유형)

매개변수
분할 유형 이 작업이 불일치 분할을 수행해야 하는지 또는 동등 분할을 수행해야 하는지를 나타내는 문자열입니다.

공개 출력 <String> SplitWithDefaultDirections ()

데이터가 누락된 경우 이동할 방향을 나타내는 순위 1 텐서. 모양이나 크기와 같은 세부정보는 위를 참조하세요. 기본 왼쪽과의 부등식은 0을 반환하고, 기본 오른쪽과의 부등식은 1을 반환하며, 기본 오른쪽과의 동일성은 2를 반환합니다.

공개 출력 <Integer> 임계값 ()

각 노드의 분할을 위해 (임계값으로) 비교할 버킷 ID를 나타내는 순위 1 텐서. 모양이나 크기와 같은 세부정보는 위를 참조하세요.