各特徴のゲインを計算し、その特徴に対して可能な限り最適な分割情報を返します。
分割情報は、各特徴のノードごとの最適なしきい値 (バケット ID)、ゲイン、および左右のノードの寄与です。
すべてのノードを各フィーチャで分割できない可能性があります。したがって、可能なノードのリストはフィーチャ間で異なる場合があります。したがって、この機能を分割するために使用できるノードのリストを含む、各機能の「node_ids_list」を返します。
この方法では、出力は機能ごとおよびノードごとに最適な分割となるため、(可能なすべての機能の中で) 各ノードに最適な分割を生成するには、後で結合する必要があります。
出力形状は、すべてのテンソルの最初の次元が同じであり、各フィーチャの可能な分割ノードの数に等しいという点で互換性があります。
ネストされたクラス
クラス | BoostedTreesCalculateBestFeatureSplit.Options | BoostedTreesCalculateBestFeatureSplit のオプションの属性 |
パブリックメソッド
静的BoostedTreesCalculateBestFeatureSplit | |
出力<整数> | 機能寸法() 特徴が多次元である場合に、特定のノードに対して分割する各特徴の最適な特徴次元を示すランク 1 テンソル。 |
出力<浮動小数点数> | 利益() 特定のノードに分割する各特徴の最適なゲインを示すランク 1 テンソル。 |
出力<浮動小数点数> | leftNodeContribs () ランク 2 テンソルは、各特徴の指定されたしきい値によって親ノード (出力 node_ids_list のテンソル要素によって指定される) から左方向に分岐するときの左ノードの寄与を示します。 |
出力<整数> | ノードID () 各特徴の可能な分割ノード ID を示すランク 1 テンソル。 |
出力<浮動小数点数> | rightNodeContribs () left_node_contribs_list と同じ形状/条件を持つランク 2 テンソルですが、値が右側のノードのものであるだけです。 |
静的BoostedTreesCalculateBestFeatureSplit.Options | splitType (文字列分割タイプ) |
出力<文字列> | splitWithDefaultDirections () データが欠落している場合にどの方向に進むかを示すランク 1 テンソル。 |
出力<整数> | しきい値() 各ノードでの分割に関して (しきい値として) 比較するバケット ID を示すランク 1 テンソル。 |
継承されたメソッド
パブリックメソッド
public static BoostedTreesCalculateBestFeatureSplit create ( Scopeスコープ、オペランド<Integer> nodeIdRange、オペランド<Float> statssummary、オペランド<Float> l1、オペランド<Float> l2、オペランド<Float> TreeComplexity、オペランド<Float> minNodeWeight、Long logitsDimension、 Options.. .オプション)
新しい BoostedTreesCalculateBestFeatureSplit オペレーションをラップするクラスを作成するためのファクトリ メソッド。
パラメーター
範囲 | 現在のスコープ |
---|---|
ノードID範囲 | `stats_summary_list` 内で処理するノード ID の範囲 [first, last) を指定するランク 1 テンソル (shape=[2])。ノードは、「for node_id in range(node_id_range[0], node_id_range[1])」のように、テンソルで指定された 2 つのノード間で反復されます (最後のインデックス node_id_range[1] は排他的であることに注意してください)。 |
統計概要 | 各特徴のノードごと、ディメンションごと、バケットごとの累積統計概要 (勾配/ヘシアン) のランク 4 テンソル (#shape=[max_splits, feature_dims,bucket, stats_dims])。テンソルの最初の次元は分割の最大数であるため、そのすべての要素が使用されるわけではなく、node_ids で指定されたインデックスのみが使用されます。 |
l1 | リーフの重みに関する l1 正則化係数 (インスタンスごと)。 |
l2 | リーフの重みに関する l2 正則化係数 (インスタンスごと)。 |
ツリーの複雑さ | リーフごとのゲインの調整。 |
minNodeWeight | ノードが分割対象とみなされるために必要となる、ノード内のヘシアンの最小平均値。 |
ロジッツ寸法 | ロジットの次元、つまりクラスの数。 |
オプション | オプションの属性値を持ちます |
戻り値
- BoostedTreesCalculateBestFeatureSplit の新しいインスタンス
public Output <Integer> featureDimensions ()
特徴が多次元である場合に、特定のノードに対して分割する各特徴の最適な特徴次元を示すランク 1 テンソル。形状やサイズなどの詳細は上記をご参照ください。
public出力<Float> leftNodeContribs ()
ランク 2 テンソルは、各特徴の指定されたしきい値によって親ノード (出力 node_ids_list のテンソル要素によって指定される) から左方向に分岐するときの左ノードの寄与を示します。この値は、親ノードの値に加算して左ノードの値を作成するために使用されます。 2 次元のサイズは 1 次元ロジットの場合は 1 ですが、複数クラスの問題の場合はさらに大きくなります。形状やサイズなどの詳細は上記をご参照ください。
public Output <Integer>ノード ID ()
各特徴の可能な分割ノード ID を示すランク 1 テンソル。リストの長さは num_features ですが、各特徴が異なる可能なノードを提供するため、各テンソルのサイズは異なります。形状やサイズなどの詳細は上記をご参照ください。
public出力<Float> rightNodeContribs ()
left_node_contribs_list と同じ形状/条件を持つランク 2 テンソルですが、値が右側のノードのものであるだけです。
public static BoostedTreesCalculateBestFeatureSplit.Options SplitType (String SplitType)
パラメーター
分割タイプ | この Op が不等分割または等価分割を実行するかどうかを示す文字列。 |
---|
public Output <String> splitWithDefaultDirections ()
データが欠落している場合にどの方向に進むかを示すランク 1 テンソル。形状やサイズなどの詳細は上記をご参照ください。デフォルトの左との不等号は 0 を返し、デフォルトの右との不等号は 1 を返し、デフォルトの右との等号は 2 を返します。