Je vois souvent des articles sur la précision des prédictions utilisant des forêts aléatoires, mais je n'ai trouvé aucun article sur la taille du modèle et le temps pendant l'entraînement et la prédiction, alors je les ai comparés. Cette fois, l'apprentissage / prédiction est effectué à l'aide des données boston (nombre d'enregistrements: 506, nombre de colonnes: 13) contenues dans scicit-learn. Les paramètres n_estimators (nombre d'arbres), max_depth (profondeur maximale de l'arbre) et le nombre d'enregistrements, qui sont souvent gérés par RandomForest, ont été modifiés et mesurés. Le nombre d'enregistrements a été augmenté du nombre d'origine à n = 506, 5060, 50600, mais lors du gonflement, chaque valeur est aléatoirement augmentée ou diminuée de 10% pour éviter autant que possible de créer des données en double.
On voit que le nombre d'arbres dans la forêt aléatoire et la taille du modèle sont simplement proportionnels. Il a été constaté que la profondeur maximale des arbres et la taille du modèle augmentaient d'environ 1,5 à 2 fois à chaque augmentation de la profondeur. Cela peut être attendu du fait que le nombre de nœuds double au maximum lorsque la profondeur maximale des dichotomies augmente de un, et que le nombre de branches augmente avec le nombre d'enregistrements.
Le temps de traitement pour la modélisation semble être proportionnel au nombre d'arbres, à la profondeur maximale et à la taille des données d'apprentissage.
Au moment de la prédiction, le modèle d'apprentissage créé avec n = 5060 a été utilisé et le temps nécessaire pour prédire les données a été mesuré à l'aide de la fonction de prédiction. On constate que le temps de traitement au moment de la prédiction est également proportionnel au nombre d'arbres et à la profondeur des arbres. D'un autre côté, étonnamment, le nombre d'enregistrements à prévoir n'a pas du tout augmenté et le temps de traitement n'a pas changé même si la prédiction était faite avec environ 100 millions de données à titre d'essai.
Je voulais vraiment changer le nombre de colonnes, mais je n'ai pas trouvé de bon moyen, alors j'ai traversé cette période. Bien sûr, ce résultat changera en fonction de la tendance des données, veuillez donc vous y référer.
Recommended Posts