Извлечение наиболее важных функций (для каждого класса) с использованием mut_info_classif - PullRequest
0 голосов
/ 12 ноября 2018

Я использую mutual_info_classif, чтобы определить наиболее важные слова для задачи классификации двоичного текста следующим образом:

mi_score = mutual_info_classif(X, y)

, но приведенное выше дает массив характеристик без ссылки на соответствующие классы

Есть ли способ получить наиболее важные функции на класс с помощью MI?

Ps, я уже пробовал Chi2, но он дает одинаковый рейтинг функций для обоих классов

1 Ответ

0 голосов
/ 13 ноября 2018

Взаимная информация - это мера зависимости между 2 переменными. В вашем случае между каждой из переменных атрибута и переменной «Class». Взаимная информация даст более высокий балл, когда переменная атрибута создает лучшее разделение целевой переменной. Это означает, что вы получаете только один балл, который описывает силу между атрибутом и классом. Наиболее важной особенностью является та, которая лучше всего различает все классы.

Если у вас есть класс с несколькими метками (не бинарный класс), вы можете создать новую переменную класса для каждой метки, используя фиктивные переменные. Например, предположим, что ваше имя класса - CLASS, и оно содержит 3 разных метки: «Красный», «Зеленый» и «Синий». Создайте 3 новые целевые переменные, первая будет называться «Is_Red», и она будет содержать «Да», если CLASS == «Красный» или «Нет» в противном случае. Таким образом, вы можете увидеть, какой атрибут лучше всего различает каждый конкретный экземпляр класса. Вам нужно будет запустить взаимную информацию для каждой новой переменной класса.

...