Вырожденная (сингулярная) ковариационная матрица — это матрица, определитель которой равен нулю, и которая не имеет обратной матрицы. В статистике это сигнал о том, что между переменными (или случайными эффектами) существует линейная зависимость, и часть информации в матрице избыточна.


1. Что такое ковариационная матрица

Пусть есть вектор случайных величин . Ковариационная матрица:

Она симметрична и положительно полуопределена: для любого вектора выполнено . Это означает, что дисперсия любой линейной комбинации неотрицательна.


2. Что значит «вырождена»

Ковариационная матрица вырождена, если:

Эквивалентные формулировки:

  • Нет обратной матрицы .
  • Ранг меньше размерности: .
  • Есть линейная зависимость между компонентами: существует ненулевой вектор , такой что (с вероятностью 1).
  • Есть нулевое собственное значение: хотя бы одно .
  • Дисперсия некоторой линейной комбинации равна нулю: для некоторого .

3. Простой пример

Пусть — случайная величина, а . Тогда:

Определитель: . Матрица вырождена, потому что полностью определяется через — нет независимой информации.


4. Почему это проблема

В линейной алгебре

  • Нельзя решить систему .
  • Нельзя вычислить , которая нужна во многих формулах (например, в обобщённом МНК, многомерном нормальном распределении).

В статистике

  • Многомерное нормальное распределение не имеет плотности, если вырождена: распределение сосредоточено на подпространстве меньшей размерности.
  • Обобщённый МНК не работает.
  • Максимальное правдоподобие для многомерных моделей ломается.
  • Стандартные ошибки нельзя корректно оценить.

В смешанных моделях

Это особенно важно. В LMM/GLMM ковариационная матрица случайных эффектов может оказаться вырожденной. Это означает:

  • Singular fit — сообщение, которое выдаёт lme4 в R.
  • Дисперсия одного из случайных эффектов оценилась как ноль.
  • Или корреляция между случайными эффектами достигла .
  • Модель «перепараметризована»: случайных эффектов больше, чем данных может поддержать.

Пример: вы включили случайный перехват и случайный наклон по времени, но в данных у каждого субъекта всего 2 измерения. Тогда прямую можно провести идеально через две точки, и остаточная дисперсия вокруг индивидуальной линии равна нулю — матрица становится вырожденной.


5. Причины вырожденности

  1. Линейная зависимость переменных — одна переменная является линейной комбинацией других.
  2. Константа среди переменных — если включить константу и ещё одну константную переменную.
  3. Дублирование переменных — две одинаковые колонки.
  4. Мультиколлинеарность — почти линейная зависимость (близка к вырожденности).
  5. Мало наблюдений — число наблюдений меньше числа переменных.
  6. Слишком сложная структура случайных эффектов — больше случайных эффектов, чем группа может поддержать.
  7. Нулевая дисперсия — одна из переменных не меняется внутри групп.
  8. Идеальная корреляция случайных эффектов — перехват и наклон связаны детерминированно.

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: дисперсия случайного эффекта равна нулю или корреляция . Лечится упрощением структуры случайных эффектов, удалением лишних переменных, регуляризацией или байесовским подходом.