DecisionBoundaryDisplay#
- класс sklearn.inspection.DecisionBoundaryDisplay(*, xx0, xx1, ответ, multiclass_colors=None, подпись оси X=None, ylabel=None)[источник]#
Визуализация границ решений.
Рекомендуется использовать
from_estimatorдля созданияDecisionBoundaryDisplay. Все параметры хранятся как атрибуты.Подробнее в Руководство пользователя.
Для подробного примера сравнения границ решений мультиномиальной и one-vs-rest логистической регрессии см. Границы решений мультиномиальной и логистической регрессии One-vs-Rest.
Добавлено в версии 1.1.
- Параметры:
- xx0ndarray формы (grid_resolution, grid_resolution)
Первый вывод
meshgrid.- xx1ndarray формы (grid_resolution, grid_resolution)
Второй выход
meshgrid.- ответndarray формы (grid_resolution, grid_resolution) или (grid_resolution, grid_resolution, n_classes)
Значения функции отклика.
- multiclass_colorsсписок str или str, по умолчанию=None
Определяет, как раскрашивать каждый класс при построении всех классов многоклассовой задачи. Игнорируется для бинарных задач и многоклассовых задач при построении одного предсказанного значения на точку. Возможные входные данные:
список: список Matplotlib цвет строки длиной
n_classesstr: имя
matplotlib.colors.ColormapNone: для сэмплирования цветов используется цветовая карта 'viridis'
Одноцветные цветовые карты будут сгенерированы из цветов в списке или цветов, взятых из цветовой карты и переданных в
cmapпараметрplot_method.Добавлено в версии 1.7.
- подпись оси Xstr, default=None
. Здесь вычисление достигается благодаря алгоритму рандомизированного SVD Мартинссона, реализованному в scikit-learn.
- ylabelstr, default=None
Метка по умолчанию для оси y.
- Атрибуты:
- surface_matplotlib
QuadContourSetилиQuadMeshили список таких объектов Если
plot_methodравно 'contour' или 'contourf',surface_являетсяQuadContourSet. Еслиplot_methodэто ‘pcolormesh’,surface_являетсяQuadMesh.- multiclass_colors_массив формы (n_classes, 4)
Цвета, используемые для построения каждого класса в многоклассовых задачах. Определены только когда
color_of_interestравно None.Добавлено в версии 1.7.
- ax_matplotlib Axes
Оси с границей принятия решений.
- figure_фигура matplotlib
Рисунок, содержащий границу решения.
- surface_matplotlib
Смотрите также
DecisionBoundaryDisplay.from_estimatorПостроить границу решений для заданного оценщика.
Примеры
>>> import matplotlib.pyplot as plt >>> import numpy as np >>> from sklearn.datasets import load_iris >>> from sklearn.inspection import DecisionBoundaryDisplay >>> from sklearn.tree import DecisionTreeClassifier >>> iris = load_iris() >>> feature_1, feature_2 = np.meshgrid( ... np.linspace(iris.data[:, 0].min(), iris.data[:, 0].max()), ... np.linspace(iris.data[:, 1].min(), iris.data[:, 1].max()) ... ) >>> grid = np.vstack([feature_1.ravel(), feature_2.ravel()]).T >>> tree = DecisionTreeClassifier().fit(iris.data[:, :2], iris.target) >>> y_pred = np.reshape(tree.predict(grid), feature_1.shape) >>> display = DecisionBoundaryDisplay( ... xx0=feature_1, xx1=feature_2, response=y_pred ... ) >>> display.plot() <...> >>> display.ax_.scatter( ... iris.data[:, 0], iris.data[:, 1], c=iris.target, edgecolor="black" ... ) <...> >>> plt.show()
- метод класса from_estimator(estimator, X, *, grid_resolution=100, eps=1.0, plot_method='contourf', response_method='auto', class_of_interest=None, multiclass_colors=None, подпись оси X=None, ylabel=None, ax=None, **kwargs)[источник]#
Построить границу решений для заданного оценщика.
Подробнее в Руководство пользователя.
- Параметры:
- estimatorobject
Обученный оценщик, используемый для построения границы принятия решений.
- X{array-like, sparse matrix, dataframe} формы (n_samples, 2)
Входные данные должны быть только двумерными.
- grid_resolutionint, по умолчанию=100
Количество точек сетки для построения границы решения. Более высокие значения сделают график красивее, но отрисовка будет медленнее.
- epsfloat, по умолчанию=1.0
Расширяет минимальные и максимальные значения X для оценки функции отклика.
- plot_method{‘contourf’, ‘contour’, ‘pcolormesh’}, по умолчанию ‘contourf’
Метод построения графиков для вызова при отображении отклика. Подробности смотрите в документации matplotlib:
contourf,contour,pcolormesh.- response_method{‘auto’, ‘decision_function’, ‘predict_proba’, ‘predict’}, по умолчанию=’auto’
Указывает, использовать ли decision_function, predict_proba или predict в качестве целевого отклика. Если установлено в 'auto', метод отклика пробуется в порядке, перечисленном выше.
Изменено в версии 1.6: Для многоклассовых задач 'auto' больше не по умолчанию 'predict'.
- class_of_interestint, float, bool или str, по умолчанию=None
Класс для построения графика, когда
response_methodэто 'predict_proba' или 'decision_function'. Если None,estimator.classes_[1]считается положительным классом для бинарных классификаторов. Для многоклассовых классификаторов, если None, все классы будут представлены на графике границы решений; класс с наибольшим значением отклика в каждой точке отображается. Цвет каждого класса можно задать черезmulticlass_colors.Добавлено в версии 1.4.
- multiclass_colorsсписок str, или str, по умолчанию=None
Определяет, как раскрашивать каждый класс при построении многоклассового 'predict_proba' или 'decision_function' и
class_of_interestявляется None. Игнорируется во всех остальных случаях.Возможные входные данные:
список: список Matplotlib цвет строки длиной
n_classesstr: имя
matplotlib.colors.Colormap- None: цветовая карта 'tab10' используется для выборки цветов, если количество
классов меньше или равно 10, иначе цветовая карта ‘gist_rainbow’.
Одноцветные цветовые карты будут сгенерированы из цветов в списке или цветов, взятых из цветовой карты, и переданы в
cmapпараметрplot_method.Добавлено в версии 1.7.
- подпись оси Xstr, default=None
Метка, используемая для оси x. Если
None, предпринимается попытка извлечь метку изXесли это dataframe, в противном случае используется пустая строка.- ylabelstr, default=None
Метка, используемая для оси Y. Если
None, предпринимается попытка извлечь метку изXесли это dataframe, в противном случае используется пустая строка.- axОси Matplotlib, по умолчанию=None
Объект Axes для построения графика. Если
None, создаётся новая фигура и оси.- **kwargsdict
Дополнительные ключевые аргументы для передачи в
plot_method.
- Возвращает:
- отображение
DecisionBoundaryDisplay Объект, хранящий результат.
- отображение
Смотрите также
DecisionBoundaryDisplayВизуализация границы решений.
sklearn.metrics.ConfusionMatrixDisplay.from_estimatorПостроить матрицу ошибок для заданного оценщика, данных и метки.
sklearn.metrics.ConfusionMatrixDisplay.from_predictionsПостройте матрицу ошибок по истинным и предсказанным меткам.
Примеры
>>> import matplotlib.pyplot as plt >>> from sklearn.datasets import load_iris >>> from sklearn.linear_model import LogisticRegression >>> from sklearn.inspection import DecisionBoundaryDisplay >>> iris = load_iris() >>> X = iris.data[:, :2] >>> classifier = LogisticRegression().fit(X, iris.target) >>> disp = DecisionBoundaryDisplay.from_estimator( ... classifier, X, response_method="predict", ... xlabel=iris.feature_names[0], ylabel=iris.feature_names[1], ... alpha=0.5, ... ) >>> disp.ax_.scatter(X[:, 0], X[:, 1], c=iris.target, edgecolor="k") <...> >>> plt.show()
- plot(plot_method='contourf', ax=None, подпись оси X=None, ylabel=None, **kwargs)[источник]#
Визуализация графика.
- Параметры:
- plot_method{‘contourf’, ‘contour’, ‘pcolormesh’}, по умолчанию ‘contourf’
Метод построения графиков для вызова при отображении отклика. Подробности смотрите в документации matplotlib:
contourf,contour,pcolormesh.- axОси Matplotlib, по умолчанию=None
Объект Axes для построения графика. Если
None, создаётся новая фигура и оси.- подпись оси Xstr, default=None
Перезаписать метку оси x.
- ylabelstr, default=None
Перезаписать метку оси Y.
- **kwargsdict
Дополнительные ключевые аргументы для передачи в
plot_method.
- Возвращает:
- отображение:
DecisionBoundaryDisplay Объект, который хранит вычисленные значения.
- отображение:
Примеры галереи#
Линейный и квадратичный дискриминантный анализ с эллипсоидом ковариации
Визуализация вероятностных предсказаний VotingClassifier
Границы решений мультиномиальной и логистической регрессии One-vs-Rest
Построение многоклассового SGD на наборе данных iris
One-Class SVM против One-Class SVM с использованием стохастического градиентного спуска
Сравнение ближайших соседей с анализом компонент соседства и без него
Граница решения полуконтролируемых классификаторов против SVM на наборе данных Iris
Построение различных классификаторов SVM на наборе данных iris
SVM: Разделяющая гиперплоскость с максимальным зазором
SVM: Разделяющая гиперплоскость для несбалансированных классов
Построение границ классификации с различными ядрами SVM
Построить поверхность решений деревьев решений, обученных на наборе данных ирисов