Jupyter lab не полностью печатает все параметры модели sklearn - PullRequest
1 голос
/ 10 июля 2020

Я использую jupyter lab в течение нескольких месяцев, и каждый раз, когда я запускаю модель sklearn, результат выглядит следующим образом:

from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier(criterion="entropy", max_depth = 4)
clf 

Что в прошлом показало этот результат:

DecisionTreeClassifier(ccp_alpha=0.0, class_weight=None, criterion='entropy',
                      max_depth=4, max_features=None, max_leaf_nodes=None,
                      min_impurity_decrease=0.0, min_impurity_split=None,
                      min_samples_leaf=1, min_samples_split=2,
                      min_weight_fraction_leaf=0.0, presort='deprecated',
                      random_state=None, splitter='best')

Но теперь он показывает только те параметры, которые я действительно установил:

DecisionTreeClassifier(criterion='entropy', max_depth=4)

Кто-нибудь знает, как заставить Jupyter снова отображать полный список параметров?

Ответы [ 2 ]

0 голосов
/ 13 июля 2020

Это новая функция под названием print_only_changed в версии 0.21. Так что не скатывайтесь к предыдущей версии, просто установите для параметра print_only_changed значение False.

from sklearn import set_config
from sklearn.tree import DecisionTreeClassifier

clf = DecisionTreeClassifier(criterion="entropy", max_depth = 4)

set_config(print_changed_only=True)
clf 
# DecisionTreeClassifier(criterion='entropy', max_depth=4)

set_config(print_changed_only=False)
clf 
# DecisionTreeClassifier(ccp_alpha=0.0, class_weight=None, criterion='entropy',
#                        max_depth=4, max_features=None, max_leaf_nodes=None,
#                        min_impurity_decrease=0.0, min_impurity_split=None,
#                        min_samples_leaf=1, min_samples_split=2,
#                        min_weight_fraction_leaf=0.0, presort='deprecated',
#                        random_state=None, splitter='best')
0 голосов
/ 10 июля 2020

Помимо понижения версии sklearn или редактирования исходного кода, я бы сказал, вы можете просто использовать:

clf.get_params()
{'ccp_alpha': 0.0,
 'class_weight': None,
 'criterion': 'gini',
 'max_depth': None,
 'max_features': None,
 'max_leaf_nodes': None,
 'min_impurity_decrease': 0.0,
 'min_impurity_split': None,
 'min_samples_leaf': 1,
 'min_samples_split': 2,
 'min_weight_fraction_leaf': 0.0,
 'presort': 'deprecated',
 'random_state': 0,
 'splitter': 'best'}

См. Документацию .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...