Это звучит как подходящая проблема для лассо и друзей, которые делают усадку и выбор переменных. Элементы статистического обучения описывают лассо и эластичную сеть для регрессии и, что более важно для этой проблемы, логистическую регрессию.
Авторы книги сделали эффективную реализацию лассо и эластичной сетки доступной в виде R-пакета под названием glmnet . Ранее я использовал этот пакет для анализа двоичных данных с матрицами данных приблизительно из 250 000 строк, хотя несколько меньше столбцов, но фактически выполнял регрессии всех столбцов относительно всех других столбцов. Если матрица данных также является разреженной, реализация также может воспользоваться этим, и я полагаю, что метод может действительно работать для полного набора данных OPs. Вот несколько комментариев о лассо:
- ℓ1
- Выбор параметра настройки часто выполняется путем перекрестной проверки, но даже без этапа перекрестной проверки способ может дать хорошую последовательность выбранных переменных, проиндексированных параметром штрафов.
- Недостатком выбора переменных является то, что лассо может быть нестабильным при выборе переменных, в частности, если они несколько коррелированы. Для улучшения этой нестабильности был изобретен более общий эластичный штраф, но он не решает проблему полностью. Адаптивное лассо - еще одна идея для улучшения выбора переменных для лассо.
- Выбор стабильности - это общий метод, предложенный Майнсхаузеном и Бюльманом для достижения большей стабильности выбранных переменных с помощью методов, подобных лассо. Он требует нескольких подгонок к подвыборкам набора данных и, как таковой, требует гораздо больших вычислительных ресурсов.
- Разумный образ мышления лассо - это метод создания одномерного набора «хороших» моделей, начиная от модели с одной переменной и заканчивая более сложной моделью (не обязательно включающей все переменные), параметризованной параметром штрафов. Напротив, одномерные фильтры производят выбор или упорядочение только хороших моделей с одной переменной.
Для Python в scikit-learn есть реализация таких методов, как лассо и эластичная сеть.