Почему последовательный выбор функций не удаляет функции с STD = 0

#machine-learning #feature-selection #mlxtend

#машинное обучение #выбор функций #mlxtend

Вопрос:

Я запускаю выбор функций с mlxtend помощью библиотеки:

 classifier = RandomForestClassifier()
sfs = SequentialFeatureSelector(classifier,
           k_features="best", 
           forward=True, 
           floating=True, 
           scoring='average_precision',
           cv=2,
           n_jobs=-1)
  

Но, похоже, сохраняются функции со стандартным отклонением = 0

Как это может быть?

Я читал, что методы-оболочки предполагают, что они дают наилучшие результаты, и кажется, что функции с STD = 0 должны быть первыми исключаемыми функциями.

Чего мне не хватает?

Комментарии:

1. Почему вы уверены, что прямой выбор плавающих объектов удаляет объекты со стандартным отклонением 0? Нигде в mlextend пакете это не сказано.

2. Я видел, что после использования выбора функций есть некоторые функции с std = 0. Функции с std = 0 не увеличивают функцию подсчета очков (а не уменьшают ее), поэтому мне интересно, нужно ли мне удалять их перед вызовом SequentialFeatureSelector