*class_weight='balanced'*#
- sklearn.inspection.*class_weight='balanced'*(estimator, X, features, *, sample_weight=None, categorical_features=None, feature_names=None, response_method='auto', процентили=(0.05, 0.95), grid_resolution=100, custom_values=None, метод='auto', kind='average')[источник]#
Частная зависимость
features.Частная зависимость признака (или набора признаков) соответствует среднему отклику оценщика для каждого возможного значения признака.
Подробнее в Графики частичной зависимости и индивидуального условного ожидания и Руководство пользователя.
Предупреждение
Для
GradientBoostingClassifierиGradientBoostingRegressor,'recursion'метод (используемый по умолчанию) не будет учитыватьinitпредиктор процесса бустинга. На практике это даст те же значения, что и'brute'с точностью до постоянного смещения в целевой переменной, при условии чтоinitявляется константным оценщиком (что по умолчанию). Однако, еслиinitне является постоянным оценщиком, значения частичной зависимости некорректны для'recursion'потому что смещение будет зависеть от выборки. Предпочтительнее использовать'brute'методу. Обратите внимание, что это применимо только кGradientBoostingClassifierиGradientBoostingRegressor, а неHistGradientBoostingClassifierиHistGradientBoostingRegressor.- Параметры:
- estimatorBaseEstimator
Обученный объект оценщика, реализующий predict, predict_proba, или decision_functionКлассификаторы с множественным выводом и многоклассовой классификацией не поддерживаются.
- X{array-like, sparse matrix or dataframe} формы (n_samples, n_features)
Xиспользуется для генерации сетки значений для целиfeatures(где будет вычисляться частичная зависимость), а также для генерации значений комплементарных признаков, когдаmethodявляется ‘brute’.- featuresarray-like из {int, str, bool} или int или str
Признак (например,
[0]) или пары взаимодействующих признаков (например,[(0, 1)]), для которых должна быть вычислена частичная зависимость.- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса выборки используются для расчета взвешенных средних при усреднении выхода модели. Если
None, тогда примеры имеют равные веса. Еслиsample_weightне являетсяNone, затемmethodбудет установлено в'brute'. Обратите внимание, чтоsample_weightигнорируется дляkind='individual'.Добавлено в версии 1.3.
- categorical_featuresмассивоподобный объект формы (n_features,) или формы (n_categorical_features,), dtype={bool, int, str}, по умолчанию=None
Указывает категориальные признаки.
None: ни один признак не будет считаться категориальным;- логический массив: логическая маска формы
(n_features,) указывающий, какие признаки являются категориальными. Таким образом, этот массив имеет ту же форму, что и
X.shape[1];
- логический массив: логическая маска формы
- целочисленный или строковый массивоподобный: целочисленные индексы или строки
указывающий категориальные признаки.
Добавлено в версии 1.2.
- feature_namesarray-like формы (n_features,), dtype=str, default=None
Имя каждого признака;
feature_names[i]содержит имя признака с индексомi. По умолчанию, имя признака соответствует его числовому индексу для массивов NumPy и имени столбца для датафреймов pandas.Добавлено в версии 1.2.
- response_method{‘auto’, ‘predict_proba’, ‘decision_function’}, default=’auto’
Указывает, использовать ли predict_proba или decision_function в качестве целевого отклика. Для регрессоров этот параметр игнорируется, и отклик всегда является выходом predict. По умолчанию, predict_proba сначала пробуется, и мы возвращаемся к decision_function если он не существует. Если
methodравен ‘recursion’, ответ всегда является выводом decision_function.- процентиликортеж float, по умолчанию=(0.05, 0.95)
Нижний и верхний процентили, используемые для создания экстремальных значений для сетки. Должны быть в [0, 1]. Этот параметр переопределяется
custom_valuesесли этот параметр установлен.- grid_resolutionint, по умолчанию=100
Количество равноотстоящих точек на сетке для каждого целевого признака. Этот параметр переопределяется
custom_valuesесли этот параметр установлен.- custom_valuesdict
Словарь, сопоставляющий индекс элемента
featuresв массив значений, для которых должна быть рассчитана частичная зависимость для этого признака. Установка диапазона значений для признака переопределяетgrid_resolutionиpercentiles.См. как использовать partial_dependence для примера того, как этот параметр может быть использован.
Добавлено в версии 1.7.
- метод{'auto', 'recursion', 'brute'}, по умолчанию='auto'
Метод, используемый для расчета усредненных предсказаний:
'recursion'поддерживается только для некоторых оценщиков на основе деревьев (а именноGradientBoostingClassifier,GradientBoostingRegressor,HistGradientBoostingClassifier,HistGradientBoostingRegressor,DecisionTreeRegressor,RandomForestRegressor,) когдаkind='average'. Это более эффективно с точки зрения скорости. При этом методе целевой отклик классификатора всегда является решающей функцией, а не предсказанными вероятностями. Поскольку'recursion'метод неявно вычисляет среднее значение индивидуального условного ожидания (ICE) по конструкции, он несовместим с ICE и поэтомуkindдолжен быть'average'.'brute'поддерживается для любого оценщика, но является более вычислительно затратным.'auto':'recursion'используется для оценщиков, которые поддерживают его, и'brute'используется в противном случае. Еслиsample_weightне являетсяNone, затем'brute'используется независимо от оценщика.
Пожалуйста, смотрите это примечание для различий между
'brute'и'recursion'метод.- kind{‘average’, ‘individual’, ‘both’}, по умолчанию ‘average’
Возвращать ли частичную зависимость, усредненную по всем образцам в наборе данных, или одно значение на образец, или и то, и другое. См. раздел Returns ниже.
Обратите внимание, что быстрый
method='recursion'опция доступна только дляkind='average'иsample_weights=None. Вычисление отдельных зависимостей и взвешенных средних требует использования более медленногоmethod='brute'.Добавлено в версии 0.24.
- Возвращает:
- предсказания
Bunch Объект, подобный словарю, со следующими атрибутами.
- отдельныйndarray формы (n_outputs, n_instances, len(values[0]), len(values[1]), …)
Прогнозы для всех точек сетки для всех образцов в X. Это также известно как Индивидуальное Условное Ожидание (ICE). Доступно только когда
kind='individual'илиkind='both'.- среднееndarray формы (n_outputs, len(values[0]), len(values[1]), …)
Прогнозы для всех точек сетки, усреднённые по всем образцам в X (или по обучающим данным, если
methodявляется 'recursion'). Доступно только когдаkind='average'илиkind='both'.- grid_valuesпоследовательность одномерных ndarrays
Значения, с которыми была создана сетка. Сгенерированная сетка — это декартово произведение массивов в
grid_valuesгдеlen(grid_values) == len(features). Размер каждого массиваgrid_values[j]является либоgrid_resolution, или количество уникальных значений вX[:, j], в зависимости от того, что меньше.Добавлено в версии 1.3.
n_outputsсоответствует количеству классов в многоклассовой настройке или количеству задач для многозадачной регрессии. Для классической регрессии и бинарной классификацииn_outputs==1.n_values_feature_jсоответствует размеруgrid_values[j].
- предсказания
Смотрите также
PartialDependenceDisplay.from_estimatorПостроение частичной зависимости.
PartialDependenceDisplayВизуализация частичной зависимости.
Примеры
>>> X = [[0, 0, 2], [1, 0, 0]] >>> y = [0, 1] >>> from sklearn.ensemble import GradientBoostingClassifier >>> gb = GradientBoostingClassifier(random_state=0).fit(X, y) >>> partial_dependence(gb, features=[0], X=X, percentiles=(0, 1), ... grid_resolution=2) (array([[-4.52, 4.52]]), [array([ 0., 1.])])
Примеры галереи#
Графики частичной зависимости и индивидуального условного ожидания