Построение важности признаков при перестановке

Machine LearningMachine LearningBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В машинном обучении важность признаков - это ценный инструмент для понимания того, какие признаки оказывают наибольшее влияние на целевую переменную. В этом лабе мы сравним два метода вычисления важности признаков: важность признаков на основе нечистоты и важность перестановки. Мы будем использовать классификатор случайного леса на наборе данных Titanic, чтобы проиллюстрировать различия между двумя методами.

Советы по работе с ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills ml/sklearn -.-> lab-49245{{"Построение важности признаков при перестановке"}} end

Загрузка данных и инженерные решения по признакам

Мы будем использовать pandas для загрузки копии набора данных Titanic. Мы также добавим две случайные переменные, которые не коррелируют с целевой переменной. Мы предобработаем данные с использованием OrdinalEncoder и SimpleImputer.

Определение и обучение классификатора случайного леса

Мы определим классификатор случайного леса с использованием RandomForestClassifier и обучим его на предобработанных данных.

Оценка точности модели

Мы оценим точность классификатора случайного леса на тренировочном и тестовом наборах данных.

Важность признаков деревьев по среднему уменьшению нечистоты (MDI)

Мы вычислим важность признаков на основе нечистоты для классификатора случайного леса. Мы заметим, что этот метод может переоценивать важность числовых признаков.

Важность признаков при перестановке на тестовом наборе

Мы вычислим важность признаков при перестановке для классификатора случайного леса на отдельном тестовом наборе. Мы заметим, что этот метод не имеет предвзятости по отношению к признакам с высокой мощностью и является более точным показателем важности признаков.

Важность признаков при перестановке на тренировочном наборе

Мы вычислим важность признаков при перестановке для классификатора случайного леса на тренировочном наборе. Мы заметим, что важность случайных числовых и категориальных признаков уменьшается, когда ограничивается способность деревьев переобучаться.

Важность признаков при перестановке для модели с меньшей мощностью

Мы установим min_samples_leaf равным 20 и снова обучим классификатор случайного леса. Мы вычислим важность признаков при перестановке для классификатора случайного леса на тренировочном и тестовом наборах. Мы заметим, что важность не-предсказательных случайных числовых и категориальных признаков уменьшается еще больше.

Резюме

В этом практическом занятии мы сравнили важность признаков, основанную на нечистоте, с важностью признаков при перестановке на наборе данных Titanic с использованием классификатора случайного леса. Мы заметили, что важность признаков, основанная на нечистоте, может переоценивать важность числовых признаков и имеет предвзятость по отношению к признакам с высокой мощностью. Важность признаков при перестановке является более точным показателем важности признаков и не имеет предвзятости по отношению к признакам с высокой мощностью. Мы также наблюдали, что ограничение способности деревьев переобучаться может уменьшить важность не-предсказательных признаков.