У меня есть две группы субъектов, A и B, каждая из которых имеет размер около 400 и около 300 предикторов. Моя цель - построить модель прогнозирования для бинарной переменной ответа. Мой клиент хочет увидеть результат применения модели, построенной из A на B. (В своей книге «Стратегии регрессионного моделирования», @FrankHarrell упоминает, что лучше объединить два набора данных и построить модель на этом, так как это добавляет сила и точность - см. стр. 90, Внешняя проверка. Я склонен с ним согласиться, учитывая, что сбор данных, которые у меня есть, очень дорог и требует много времени. Но у меня нет выбора относительно того, что хочет клиент .) Многие из моих предикторов сильно коррелированы и также очень искажены. Я использую логистическую регрессию для построения своей прогнозной модели.
Мои предсказатели происходят в основном из механики. Например, общее время, в течение которого субъект находился в состоянии стресса, превышающем пороговое значение за период времени для различных значений и . Ясно, что только из их определений многие из этих полных времен алгебраически связаны друг с другом. Многие из предикторов, которые не связаны алгебраически, связаны по своей природе: субъекты, находящиеся в состоянии сильного стресса в течение периода времени как правило напряжение в течение периода времени , даже если, Чтобы уменьшить размерность данных, я объединил связанные предикторы (например, все общее время стресса) и использовал анализ основных компонентов для представления каждого кластера. Поскольку переменные были искажены, я попробовал два альтернативных пути:
- Перед выполнением PCA я использовал логарифмическое преобразование, чтобы уменьшить перекос в переменных.
- Я использовал алгоритм ROBPCA Миа Хьюберта, реализованный пакетом rrcov в R, (PcaHubert), чтобы найти надежные главные компоненты.
Я использую общую форму кривой ROC, форму кривой точного отзыва и площадь под кривой ROC (AUC) в качестве моих показателей эффективности, и я хотел бы получить аналогичные результаты для обоих наборов данных A и B Я ожидал получить гораздо лучший результат от использования надежных основных компонентов, но, к моему удивлению, первый метод оказался лучше: лучшее значение AUC для обоих наборов данных A и B, большее сходство между кривыми ROC и большее сходство точности-отзыва кривые.
Чем это объясняется? И как я могу использовать надежные основные компоненты вместо того, чтобы мои данные выглядели как нормальные? Существуют ли какие-либо конкретные надежные методы PCA, которые вы бы порекомендовали вместо ROBPCA?