/ / Stichprobengröße in Random Forest Regression - Python, maschinelles Lernen, Scikit-Lernen, Random-Forest

Größe der Stichprobe in der Random Forest Regression - Python, maschinelles Lernen, Scikit-Lernen, Random-Forest

Wenn richtig verstanden, wenn Random ForestSchätzer werden in der Regel berechnet, wobei Bootstrapping angewendet wird. Dies bedeutet, dass ein Baum (i) nur unter Verwendung von Daten aus Probe (i) erstellt wird, die mit Ersetzung ausgewählt wurden. Ich möchte wissen, wie groß die Stichprobe ist, die sklearn verwendet RandomForestRegressor Verwendet.

Das einzige, was ich sehe, ist nahe:

bootstrap : boolean, optional (default=True)
Whether bootstrap samples are used when building trees.

Es gibt jedoch weder die Möglichkeit, die Größe oder den Anteil der Stichprobengröße anzugeben, noch die Standard-Stichprobengröße.

Ich finde, es sollte eine Möglichkeit geben, zumindest zu wissen, was die Standard-Stichprobengröße ist, was fehlt mir?

Antworten:

3 für die Antwort № 1

Die Samplegröße für Bootstrap ist immer die Anzahl der Samples.

Sie vermissen nichts, die gleiche Frage wurde im Mailingliste zum RandomForestClassifier:

Die Größe des Bootstrap-Samples stimmt immer mit der Größe des eingegebenen Samples überein. Wenn Sie sich dazu bereit fühlen, wäre eine Pull-Anfrage zur Aktualisierung der Dokumentation wahrscheinlich sehr willkommen.


4 für die Antwort № 2

Ähh, ich stimme dir zu, es ist ziemlich seltsam, dass wir die Größe von Subsample / Bootstrap nicht angeben können RandomForestRegressor algo. Möglicherweise ist eine mögliche Problemumgehung zu verwenden BaggingRegressor stattdessen. http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.BaggingRegressor.html#sklearn.ensemble.BaggingRegressor

RandomForestRegressor ist nur ein spezieller Fall von BaggingRegressor (Verwenden Sie Bootstraps, um die Varianz eines Satzes von Schätzern mit niedriger Vorspannung und hoher Varianz zu reduzieren.) Im RandomForestRegressorwird der Basisschätzer gezwungen DeceisionTreewährend BaggingRegressorSie haben die Freiheit, das zu wählen base_estimator. Noch wichtiger ist, dass Sie beispielsweise Ihre individuelle Größe für das Subsample festlegen können max_samples=0.5 zeichnet zufällige Unterproben mit einer Größe, die der Hälfte des gesamten Trainingssatzes entspricht. Sie können auch nur einen Teil der Funktionen auswählen, indem Sie festlegen max_features und bootstrap_features.