Найти в Дзене
Властелин машин

Простая визуализация значимости признаков

Только полное осознание своей значимости — поможет вам лучше осознать значимость других (Петр Квятковский).

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

Делить на выборки датасет не будем, так как для наших целей понадобится только один тренировочный набор. Обучим на нем решающее дерево:

-2

Теперь обратимся к свойству или методу (в разных библиотеках по-разному), отражающему значимость признаков для этой обученной модели. Кстати, если не помните точное название, воспользуйтесь методом исследования объектов, о котором я рассказывал ранее, ориентируйтесь на ключевое слово 'feature' или 'importance':

-3

Вот оно:

-4

В качестве бонуса нашел свойство, содержащее наименование входных признаков (обычно получал через обращение к атрибуту columns в матрице признаков):

-5

Теперь можно воспользоваться любым методом отображения столбчатой диаграммы (намеренно буду использовать разные):

-6

Обычно, особенно когда признаков много, их упорядочивают по значимости и выводят несколько ключевых:

-7

А так можно вывести n самых важных:

-8

Если категорий много удобнее выводить горизонтальную диаграмму. Покажем как это делать с Pandas:

-9

-10