У меня есть набор данных с в основном финансовыми переменными (120 функций, 4k примеров), которые в основном сильно коррелированы и очень шумные (например, технические индикаторы), поэтому я хотел бы выбрать около 20-30 максимум для последующего использования с обучением модели (бинарная классификация) - увеличение уменьшение).
Я думал об использовании случайных лесов для ранжирования объектов. Это хорошая идея использовать их рекурсивно? Например, скажем, в первом раунде я отбрасываю худшие 20%, второй тоже и так далее, пока не получу желаемое количество функций. Должен ли я использовать перекрестную проверку с RF? (Для меня интуитивно не использовать CV, потому что это почти то, что уже делает RF.)
Также, если я использую случайные леса, я должен использовать их в качестве классификаторов для двоичного файла или регрессора для фактического увеличения / уменьшения, чтобы получить значения функций?
Кстати, я хотел бы попробовать следующие модели после выбора признаков: SVM, нейронные сети, локально-взвешенные регрессии и случайный лес. Я в основном работаю в Python.
built-in
атрибут RandomForestClassifier в sklearn
вызываемой feature_importances_
....? Вы увидите это в ссылке.