Spec-Zone.ru › scikit-learn

Примечание

Перейти к концу для скачивания полного кода примера. Или запустить этот пример в вашем браузере через JupyterLite или Binder

Пошаговое устранение признаков

Этот пример демонстрирует, как Пошаговое устранение признаков (RFE) может использоваться для определения важности отдельных пикселей для классификации рукописных цифр. RFE рекурсивно удаляет наименее значимые признаки, присваивая им ранги на основе их важности, где более высокие ranking_ значения обозначают меньшую важность. Ранг визуализируется с помощью оттенков синего и аннотаций пикселей для большей наглядности. Как и ожидалось, пиксели, расположенные в центре изображения, как правило, более предсказуемы, чем пиксели у краев.

Примечание

См. также Пошаговое устранение признаков с перекрестной проверкой

Ranking of pixels with RFE (Logistic Regression)
# Authors: The scikit-learn developers
# SPDX-License-Identifier: BSD-3-Clause

import matplotlib.pyplot as plt

from sklearn.datasets import load_digits
from sklearn.feature_selection import RFE
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import MinMaxScaler

# Load the digits dataset
digits = load_digits()
X = digits.images.reshape((len(digits.images), -1))
y = digits.target

pipe = Pipeline(
    [
        ("scaler", MinMaxScaler()),
        ("rfe", RFE(estimator=LogisticRegression(), n_features_to_select=1, step=1)),
    ]
)

pipe.fit(X, y)
ranking = pipe.named_steps["rfe"].ranking_.reshape(digits.images[0].shape)

# Plot pixel ranking
plt.matshow(ranking, cmap=plt.cm.Blues)

# Add annotations for pixel numbers
for i in range(ranking.shape[0]):
    for j in range(ranking.shape[1]):
        plt.text(j, i, str(ranking[i, j]), ha="center", va="center", color="black")

plt.colorbar()
plt.title("Ranking of pixels with RFE\n(Logistic Regression)")
plt.show()

Общее время выполнения скрипта: (0 минут 2.976 секунды)

Launch binder
Launch JupyterLite

Download Jupyter notebook: plot_rfe_digits.ipynb

Download Python source code: plot_rfe_digits.py

Download zipped: plot_rfe_digits.zip

Связанные примеры

Распознавание рукописных цифр

Оценка плотности ядра

Объединение признаков

Метки цифр: Демонстрация производительности

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/auto_examples/feature_selection/plot_rfe_digits.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API