EssayAI
Блог
Блог
Математика и алгоритмы

Тест Бройша-Пагана: проверка гетероскедастичности

17 июня 2026Время чтения: 8 минут
#гетероскедастичность#тест Бройша-Пагана#регрессия#остатки#эконометрика
Тест Бройша-Пагана: проверка гетероскедастичности

Линейная регрессия даёт несмещённые оценки коэффициентов даже при нарушении равенства дисперсий. Но стандартные ошибки тогда считаются неверно, и t-тесты, F-тест и доверительные интервалы перестают работать. Тест Бройша-Пагана - это быстрый способ выяснить, есть ли систематическая связь между дисперсией остатков и регрессорами, прежде чем делать выводы по МНК-модели.

Что такое гетероскедастичность

В классической регрессии y=Xβ+εy = X\beta + \varepsilon предполагается, что Var(εi)=σ2\mathrm{Var}(\varepsilon_i) = \sigma^2 для всех наблюдений - это гомоскедастичность. Если дисперсия зависит от ii, то есть Var(εi)=σi2\mathrm{Var}(\varepsilon_i) = \sigma_i^2, говорят о гетероскедастичности (от греч. «разный» + «разброс»).

Типичные примеры: в кросс-секционных данных доходов богатые домохозяйства демонстрируют больший разброс расходов, чем бедные; в финансовых временных рядах волатильность меняется во времени; в пространственных данных регионы-мегаполисы имеют иной разброс, чем малые территории.

При гетероскедастичности «веер» остатков расширяется с ростом x - дисперсия не постоянна

Идея теста Бройша-Пагана

Питер Бройш и Адриан Паган в 1979 году предложили формальный тест через вспомогательную регрессию. Логика простая: если дисперсия σi2\sigma_i^2 не зависит от регрессоров, квадраты остатков ε^i2\hat{\varepsilon}_i^2 не должны объясняться этими регрессорами лучше случайного шума.

Алгоритм в четырёх шагах:

  1. Оценить исходную регрессию y=Xβ+εy = X\beta + \varepsilon методом МНК, получить остатки ε^i\hat{\varepsilon}_i.
  2. Построить вспомогательную регрессию ε^i2=γ0+γ1zi1++γpzip+ui\hat{\varepsilon}_i^2 = \gamma_0 + \gamma_1 z_{i1} + \ldots + \gamma_p z_{ip} + u_i, где zijz_{ij} - переменные, от которых предположительно зависит дисперсия (чаще всего это те же регрессоры xjx_j или y^i\hat{y}_i).
  3. Вычислить Raux2R^2_{\text{aux}} вспомогательной регрессии.
  4. Статистика теста: LM=nRaux2LM = n \cdot R^2_{\text{aux}}.

При H0H_0 (гомоскедастичности) статистика LMLM имеет асимптотическое распределение χ2(p)\chi^2(p), где pp - число переменных во вспомогательной регрессии (число ограничений).

Формула и распределение

Нулевая и альтернативная гипотезы:

H0 ⁣:σi2=σ2(гомо)H_0\colon \sigma_i^2 = \sigma^2 \quad \text{(гомо)}

H1 ⁣:σi2=h(γ0+γ1zi1++γpzip)(гетеро)H_1\colon \sigma_i^2 = h(\gamma_0 + \gamma_1 z_{i1} + \ldots + \gamma_p z_{ip}) \quad \text{(гетеро)}

Статистика Лагранжа:

LM=nRaux2dχ2(p)при H0LM = n \cdot R^2_{\text{aux}} \xrightarrow{d} \chi^2(p) \quad \text{при } H_0

Если LM>χ1α2(p)LM > \chi^2_{1-\alpha}(p) (или p-значение<αp\text{-значение} < \alpha), нулевую гипотезу отвергают: признаки гетероскедастичности статистически значимы.

Хи-квадрат распределение (df=2) с маркером LM-статистики и p-значением в хвосте
Хи-квадрат распределение (df=2) с маркером LM-статистики и p-значением в хвосте

Варианты теста

Существует несколько версий с небольшими отличиями.

Классический Бройш-Паган (1979) предполагает нормальность остатков и использует отдельную процедуру оценки гетероскедастической функции. Статистика основана на оценке функции правдоподобия.

Тест Кукера-Уайтхеда (студентизированная версия) не требует нормальности: во вспомогательной регрессии используются ε^i2/s2\hat{\varepsilon}_i^2 / s^2 (нормированные на s2=SSR/ns^2 = \text{SSR}/n). Это наиболее распространённая современная реализация, которую выдаёт, например, bptest в R и het_breuschpagan в Python statsmodels.

Тест Уайта - более общий: во вспомогательную регрессию включают исходные регрессоры, их квадраты и все попарные произведения. Имеет больше степеней свободы и поймает любую форму гетероскедастичности, но теряет мощность при большом числе регрессоров.

Как интерпретировать результат

Малое p-значение (< 0,05) означает отклонение H0 о гомоскедастичности - в данных выявлены признаки гетероскедастичности.

Если тест отклонён, есть три стратегии:

1. Робастные стандартные ошибки (HC-коррекция) - оценки коэффициентов остаются те же, но стандартные ошибки пересчитываются по Уайту (HC0/HC1/HC3). Самый быстрый способ, не меняет спецификацию.

2. Взвешенный МНК (WLS) - наблюдениям с большей дисперсией присваивается меньший вес wi=1/σ^i2w_i = 1/\hat{\sigma}_i^2. Требует задать форму дисперсии; если форма угадана правильно - эффективнее HC-коррекции.

3. Преобразование переменных - логарифм зависимой переменной стабилизирует дисперсию в случаях мультипликативной гетероскедастичности (lny=Xβ+ε\ln y = X\beta + \varepsilon при Var(ε)const\mathrm{Var}(\varepsilon) \approx \text{const}).

Условия применимости теста

Тест Бройша-Пагана работает корректно при нескольких условиях.

Достаточный объём выборки - распределение χ2\chi^2 асимптотическое, при n<30n < 30 его точность снижается. При малых nn используют бутстреп-версию теста.

Правильная спецификация основной модели - тест проверяет остатки. Если главная регрессия пропускает важный регрессор, квадраты остатков будут объясняться не только из-за гетероскедастичности, но и из-за эффекта пропущенной переменной.

Нормальность (для классической версии) - студентизированная версия Кукера-Уайтхеда этого не требует и предпочтительнее в прикладных задачах.

Линейная форма гетероскедастичности - тест наиболее мощен, когда σi2=γ0+γ1zi\sigma_i^2 = \gamma_0 + \gamma_1 z_i. Нелинейные паттерны (логарифмические, квадратичные) он может пропустить - для них лучше тест Уайта.

Мощность теста и размер выборки

Тест Бройша-Пагана относится к асимптотическим тестам - его мощность зависит от объёма выборки. При малых nn (менее 30-40 наблюдений) распределение LM-статистики отклоняется от χ2\chi^2, и номинальный уровень значимости 5 % не соответствует фактическому.

На практике при n<50n < 50 рекомендуется использовать бутстреп-версию: генерировать распределение LM-статистики под H0H_0 многократным выбором с возвращением из центрированных остатков основной модели и сравнивать наблюдаемое LM с квантилем этого эмпирического распределения.

При большом nn (несколько сотен и более) тест становится очень мощным - он может обнаружить статистически значимую гетероскедастичность, которая в действительности не влияет на интерпретацию. Например, при n=1000n = 1000 даже Raux2=0.003R^2_{\text{aux}} = 0.003 даёт LM=3LM = 3, а при k=1k = 1 это значимо на уровне 10 %. Поэтому на больших данных имеет смысл смотреть не только на pp-значение, но и на размер эффекта Raux2R^2_{\text{aux}} - если он мал (например, 0.01-0.02), практическое значение гетероскедастичности может быть незначительным.

При очень большом n (n > 500) тест Бройша-Пагана почти всегда значим: смотрите не только на p-значение, но и на R2 вспомогательной регрессии как меру «силы» нарушения.

Связь с тестом Уайта

Тест Уайта (1980) - более общий подход. Во вспомогательную регрессию включаются не только линейные члены, но и квадраты регрессоров и все попарные произведения:

ε^i2=γ0+jγjxij+jδjxij2+j<kθjkxijxik+ui\hat{\varepsilon}_i^2 = \gamma_0 + \sum_j \gamma_j x_{ij} + \sum_j \delta_j x_{ij}^2 + \sum_{j < k} \theta_{jk} x_{ij} x_{ik} + u_i

Это позволяет поймать нелинейные паттерны гетероскедастичности. Ценой является число степеней свободы: при pp регрессорах тест Уайта имеет p+p+p(p1)/2p + p + p(p-1)/2 параметров, что при p=4p = 4 даёт уже 14 степеней свободы против 4 у Бройша-Пагана.

Практическое правило: если есть теоретические соображения о том, какой регрессор отвечает за неоднородность дисперсии, используйте тест Бройша-Пагана с этим конкретным регрессором. Если неизвестно - начните с теста Уайта как разведки, а после - уточните с Бройша-Паганом.

Реализация в статистических пакетах

В Python (statsmodels):

from statsmodels.stats.diagnostic import het_breuschpagan
import statsmodels.api as sm

model = sm.OLS(y, sm.add_constant(X)).fit()
lm_stat, lm_pval, f_stat, f_pval = het_breuschpagan(model.resid, model.model.exog)
print(f"LM = {lm_stat:.3f}, p-value = {lm_pval:.4f}")

В R:

library(lmtest)
model <- lm(y ~ x1 + x2, data = df)
bptest(model)  # возвращает BP-статистику и p-значение

Функции возвращают и LM-статистику, и F-версию теста. F-версия предпочтительна при малых nn, LM-версия - при большом nn (асимптотически эквивалентны).

Частые ошибки

  • Включать во вспомогательную регрессию те же переменные, что в основную - это нормально, но нужно убедиться, что список zjz_j осмыслен: если подозрение падает на конкретный регрессор, включать только его.
  • Не проверять нормальность остатков перед классической версией теста - при тяжёлых хвостах уровень значимости занижается; использовать студентизированную версию.
  • Путать тест Бройша-Пагана и тест Уайта - в некоторых пакетах «тест Бройша-Пагана» реализован по схеме Уайта (квадраты и кросс-произведения регрессоров); стоит сверить документацию.
  • Применять стандартные стандартные ошибки после обнаружения гетероскедастичности - даже если HC-коррекция увеличит pp-значения, честнее отразить реальную неопределённость.
  • Игнорировать размер выборки при интерпретации: на больших nn тест может отвергнуть H0H_0 из-за ничтожной гетероскедастичности, практически не влияющей на оценки.

FAQ

Что делать, если тест Бройша-Пагана не отвергает H0, а тест Уайта отвергает? Скорее всего, гетероскедастичность нелинейная или связана с кросс-произведениями регрессоров. Тест Уайта чувствителен к более широкому классу нарушений. Рекомендуется всё равно использовать HC-стандартные ошибки в качестве страховки.

Можно ли применять тест к временным рядам? Для временных рядов с условной гетероскедастичностью (волатильность меняется во времени) правильнее использовать тест Энгла (ARCH-тест), а для моделирования - GARCH. Тест Бройша-Пагана предназначен для кросс-секционных данных или панелей без временной зависимости дисперсии.

Как выбрать, какие переменные включать в вспомогательную регрессию? Включайте те переменные, которые вы теоретически подозреваете в связи с дисперсией: обычно это все регрессоры основной модели или только отдельные из них. Если нет теоретических соображений, включайте все - получится близко к тесту Уайта.

Коротко

Тест Бройша-Пагана проверяет гомоскедастичность через вспомогательную регрессию квадратов остатков на регрессоры. Статистика LM=nRaux2LM = n \cdot R^2_{\text{aux}} при H0H_0 имеет асимптотическое распределение χ2(p)\chi^2(p). Отклонение H0H_0 указывает на гетероскедастичность и требует либо HC-робастных стандартных ошибок, либо взвешенного МНК. Тест работает на больших выборках, чувствителен к линейной форме зависимости дисперсии и требует правильно специфицированной основной модели.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также