Вырожденная (сингулярная) ковариационная матрица — это матрица, определитель которой равен нулю, и которая не имеет обратной матрицы. В статистике это сигнал о том, что между переменными (или случайными эффектами) существует линейная зависимость, и часть информации в матрице избыточна.
1. Что такое ковариационная матрица
Пусть есть вектор случайных величин . Ковариационная матрица:
Она симметрична и положительно полуопределена: для любого вектора выполнено . Это означает, что дисперсия любой линейной комбинации неотрицательна.
2. Что значит «вырождена»
Ковариационная матрица вырождена, если:
Эквивалентные формулировки:
- Нет обратной матрицы .
- Ранг меньше размерности: .
- Есть линейная зависимость между компонентами: существует ненулевой вектор , такой что (с вероятностью 1).
- Есть нулевое собственное значение: хотя бы одно .
- Дисперсия некоторой линейной комбинации равна нулю: для некоторого .
3. Простой пример
Пусть — случайная величина, а . Тогда:
Определитель: . Матрица вырождена, потому что полностью определяется через — нет независимой информации.
4. Почему это проблема
В линейной алгебре
- Нельзя решить систему .
- Нельзя вычислить , которая нужна во многих формулах (например, в обобщённом МНК, многомерном нормальном распределении).
В статистике
- Многомерное нормальное распределение не имеет плотности, если вырождена: распределение сосредоточено на подпространстве меньшей размерности.
- Обобщённый МНК не работает.
- Максимальное правдоподобие для многомерных моделей ломается.
- Стандартные ошибки нельзя корректно оценить.
В смешанных моделях
Это особенно важно. В LMM/GLMM ковариационная матрица случайных эффектов может оказаться вырожденной. Это означает:
- Singular fit — сообщение, которое выдаёт
lme4в R. - Дисперсия одного из случайных эффектов оценилась как ноль.
- Или корреляция между случайными эффектами достигла .
- Модель «перепараметризована»: случайных эффектов больше, чем данных может поддержать.
Пример: вы включили случайный перехват и случайный наклон по времени, но в данных у каждого субъекта всего 2 измерения. Тогда прямую можно провести идеально через две точки, и остаточная дисперсия вокруг индивидуальной линии равна нулю — матрица становится вырожденной.
5. Причины вырожденности
- Линейная зависимость переменных — одна переменная является линейной комбинацией других.
- Константа среди переменных — если включить константу и ещё одну константную переменную.
- Дублирование переменных — две одинаковые колонки.
- Мультиколлинеарность — почти линейная зависимость (близка к вырожденности).
- Мало наблюдений — число наблюдений меньше числа переменных.
- Слишком сложная структура случайных эффектов — больше случайных эффектов, чем группа может поддержать.
- Нулевая дисперсия — одна из переменных не меняется внутри групп.
- Идеальная корреляция случайных эффектов — перехват и наклон связаны детерминированно.
6. Как обнаружить
- Определитель близок к нулю или равен нулю.
- Собственные значения: хотя бы одно или отрицательное (из-за численных ошибок).
- Число обусловленности очень велико.
- В R:
isSingular(model)дляlme4,check_singularity = TRUE. - Корреляция случайных эффектов .
- Дисперсия случайного эффекта ровно 0.
- Предупреждение: «boundary (singular) fit».
7. Что делать
Если это матрица предикторов
- Удалить линейно зависимые переменные.
- Использовать регуляризацию (гребневая регрессия, LASSO).
- Применить псевдообратную матрицу (Мура–Пенроуза).
- Использовать разложение Холецкого с pivoting.
Если это ковариационная матрица случайных эффектов в LMM
- Упростить структуру случайных эффектов: убрать случайный наклон, оставить только перехват.
- Сделать случайные эффекты некоррелированными:
(1 | id) + (0 + time | id)вместо(1 + time | id). - Убрать случайный эффект, если он не нужен.
- Увеличить данные — больше наблюдений на группу.
- Перепараметризовать модель — центрировать предикторы, изменить масштаб.
- Использовать байесовский подход с априорными распределениями, которые штрафуют вырожденность (например,
brms,rstanarm). - Проверить, не является ли вырожденность граничной — иногда дисперсия действительно равна нулю, и это содержательный результат.
8. Вырожденность vs почти вырожденность
- Вырожденная — определитель ровно 0, обратной матрицы нет.
- Почти вырожденная (ill-conditioned) — определитель мал, но не ноль. Обратная матрица есть, но вычисления численно нестабильны: малые изменения данных сильно меняют результат.
На практике почти вырожденность часто так же опасна, как полная.
9. В контексте смешанных моделей: singular fit
lme4 выдаёт:
boundary (singular) fit: see help('isSingular')
Это значит:
- один или несколько параметров дисперсии оценены как 0;
- или корреляция случайных эффектов ;
- модель всё ещё можно интерпретировать, но случайные эффекты упростились;
- стандартные ошибки и тесты могут быть ненадёжны.
Решение: упростить random effects, использовать nlme или байесовские методы, проверить данные.
Кратко
Вырожденная ковариационная матрица — это матрица с нулевым определителем, без обратной матрицы. Она означает линейную зависимость между переменными или случайными эффектами. В статистике это ломает формулы, требующие обращения, и сигнализирует о перепараметризации модели. В смешанных моделях это проявляется как singular fit: дисперсия случайного эффекта равна нулю или корреляция . Лечится упрощением структуры случайных эффектов, удалением лишних переменных, регуляризацией или байесовским подходом.