BaggingClassifier неожиданный аргумент ключевого слова 'max_depth' - PullRequest
0 голосов
/ 25 апреля 2020

Я получаю сообщение об ошибке для BaggingClassifier в scikit-learn 0.22.2.post1. Я использую python 3.8.2.

from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import BaggingClassifier
bag_clf = BaggingClassifier(
                            DecisionTreeClassifier(
                                                    random_state=0,
                                                    criterion='entropy'
                                                    ),
                              n_estimators=100,
                              max_samples=100,
                              max_depth=2,
                              bootstrap=True,
                              random_state=0
                              )

TypeError: init () получил неожиданный аргумент ключевого слова 'max_depth'

Если я удаляю max_depth=2, из моего кода я могу создать объект. max_depth=2 - единственный аргумент, за который я получаю ошибку.

Кто-нибудь знает, что здесь происходит?

1 Ответ

1 голос
/ 25 апреля 2020

max_depth - это аргумент DecisionTreeClassifier ( документы ), а не BaggingClassifier ( документы ); Вы должны изменить определение на

bag_clf = BaggingClassifier(
                            DecisionTreeClassifier( max_depth=2,
                                                    random_state=0,
                                                    criterion='entropy'
                                                    ),
                              n_estimators=100,
                              max_samples=100,
                              bootstrap=True,
                              random_state=0
                              )
...