Aracılığıyla paylaş


RegressionTreeBase Sınıf

Tanım

'nin ve Microsoft.ML.Trainers.FastTree.InternalQuantileRegressionTreeözniteliklerinin kullanıcılara açıklanması Microsoft.ML.Trainers.FastTree.InternalRegressionTreeiçin kapsayıcı temel sınıfı. Bu sınıf değiştirilebilir olmamalıdır, bu nedenle çok sayıda salt okunur üye içerir.

public abstract class RegressionTreeBase
type RegressionTreeBase = class
Public MustInherit Class RegressionTreeBase
Devralma
RegressionTreeBase
Türetilmiş

Özellikler

CategoricalSplitFlags

Bölme işlevinin türlerini belirleyin. [i] doğruysa CategoricalSplitFlags, i. düğümde kategorik bölme işlevi kullanılır. Aksi takdirde, geleneksel sayısal bölme kullanılır.

LeafValues

LeafValues[i] i. yaprakta öğrenilen değerdir.

LeftChild

LeftChild[i], (1) [i] tarafından NumericalSplitFeatureIndexesdizinlenen sayısal özellik [i] eşiğinden NumericalSplitThresholdsküçük veya eşit olduğunda veya (2) 'nin nodeIndex=i ile döndürülen değeriyle GetCategoricalCategoricalSplitFeatureRangeAt(Int32)dizine alınan kategorik özellikler nodeIndex=i ile alt kümesi DEĞİlse kullanılan i. düğümün GetCategoricalSplitFeaturesAt(Int32) alt dizinidir. Durumun (1) yalnızca [i] yanlış olduğunda CategoricalSplitFlagsve aksi durumda (2) oluştuğunda gerçekleştiğini unutmayın. Negatif olmayan döndürülen değer bir düğüm (yaprak değil) anlamına gelir; örneğin, 2, temel alınan Microsoft.ML.Trainers.FastTree.RegressionTreeBase._treeiçindeki 3. düğüm anlamına gelir. Negatif döndürülen değer yaprak anlamına gelir; örneğin, -1, temel alınan ~Microsoft.ML.Trainers.FastTree.RegressionTreeBase._treeiçindeki (-1)-. yaprağın kısaltmasıdır. C# dilinde bit düzeyinde tamamlayıcı işleci olduğunu ~ unutmayın; ayrıntılar için bkz https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/bitwise-complement-operator. .

NumberOfLeaves

Ağaçtaki yaprak sayısı. NumberOfLeaves Yaprak olmayan düğümleri dikkate almadığını unutmayın.

NumberOfNodes

Ağaçtaki düğüm sayısı. Bu yaprak içermez. Örneğin node0-node1, node0-leaf3>, node1-leaf1>, node1-leaf2 NumberOfNodes>>içeren bir NumberOfLeaves ağaç sırasıyla 2 ve 3 olmalıdır.

NumericalSplitFeatureIndexes

NumericalSplitFeatureIndexes[i] i. düğümün bölme işlevini kullanan özellik dizinidir. Bu değer yalnızca [i] yanlış olduğunda CategoricalSplitFlagsgeçerlidir.

NumericalSplitThresholds

NumericalSplitThresholds[i], [i] tarafından NumericalSplitFeatureIndexesdizinlenen özellik üzerindeki eşiktir; burada i i. düğümün dizinidir (örneğin, içindeki 2. düğüm için i 1'dir Microsoft.ML.Trainers.FastTree.RegressionTreeBase._tree).

RightChild

RightChild[i], belgesinde LeftChildaçıklanan iki koşul (1) ve (2) doğru olmadığında kullanılan i-th düğüm alt dizinidir. Dönüş değeri, içinde LeftChildkullanılan biçimi izler.

SplitGains

Düğümlerdeki verileri bölerek elde edilen kazançlar. i. değeri, i. düğümdeki bölmeye kadar hesaplanır.

Yöntemler

GetCategoricalCategoricalSplitFeatureRangeAt(Int32)

nodeIndex tarafından dizinlenmiş düğümde kullanılan kategorik eşiklerin aralığını döndürür. nodeIndex tarafından dizine alınan düğümde kategorik bölme, aynı anda birden çok ardışık giriş özelliğini dikkate alabilir; aralığı tarafından GetCategoricalCategoricalSplitFeatureRangeAt(Int32)belirtilir. Döndürülen değer her zaman 2 öğeli bir dizidir; 1. öğesi başlangıç dizini, 2. öğesi ise bir özellik segmentinin yemek dizinidir. Döndürülen değer yalnızca [nodeIndex] true olduğunda CategoricalSplitFlagsgeçerlidir.

GetCategoricalSplitFeaturesAt(Int32)

nodeIndex tarafından dizinlenmiş düğümde kullanılan kategorik eşikleri döndürür. Dikkate alınan giriş özelliği tarafından GetCategoricalSplitFeaturesAt(Int32)döndürülen değerlerden herhangi biriyle EŞLEŞMİYORsa, buna eşikten küçük bir olay diyoruz ve bu nedenle LeftChild[nodeIndex] girişin sonraki aşamaya geçilmesi gereken alt düğümdür. Döndürülen değer yalnızca [nodeIndex] true olduğunda CategoricalSplitFlagsgeçerlidir.

Şunlara uygulanır