Преобразование Бокса — Кокса
Преобразование Бокса — Кокса — это семейство параметрических преобразований, применяемых к данным в статистике и эконометрике для приведения их к нормальному распределению, стабилизации дисперсии и упрощения модели. Разработано в 1964 году британскими статистиками Джорджем Боксом и Дэвидом Коксом. Преобразование позволяет сделать данные более симметричными и уменьшить влияние выбросов, что улучшает качество линейных регрессионных моделей и других статистических методов, предполагающих нормальность остатков.
Определение и математическая формулировка
Преобразование Бокса — Кокса определяется для положительных значений переменной \( y \) (обычно \( y > 0 \)) и параметра \( \lambda \) (лямбда) следующим образом:
\[ y^{(\lambda)} = \begin{cases} \frac{y^\lambda - 1}{\lambda}, & \text{если } \lambda \neq 0, \\ \ln(y), & \text{если } \lambda = 0. \end{cases} \]
Здесь \( y^{(\lambda)} \) — преобразованное значение. При \( \lambda = 1 \) преобразование эквивалентно вычитанию единицы из исходного значения, что не меняет форму распределения, а лишь сдвигает его. При \( \lambda = 0 \) получается натуральный логарифм. Параметр \( \lambda \) подбирается эмпирически, обычно методом максимального правдоподобия, чтобы максимизировать корреляцию между преобразованными данными и нормальным распределением.
Вариант для отрицательных значений
Поскольку исходное преобразование требует положительных значений, для данных, содержащих нули или отрицательные числа, применяется модификация — преобразование Йео — Джонсона (2000 год). Оно работает для любых вещественных чисел и определяется более сложной кусочно-линейной функцией. Однако классическое преобразование Бокса — Кокса остаётся наиболее распространённым из-за простоты и интерпретируемости.
История
Джордж Бокс и Дэвид Кокс опубликовали статью «An Analysis of Transformations» в журнале Journal of the Royal Statistical Society в 1964 году. В ней они предложили семейство степенных преобразований, которое обобщало ранее известные частные случаи — логарифмическое (\( \lambda = 0 \)), квадратный корень (\( \lambda = 0.5 \)), обратное (\( \lambda = -1 \)) и другие. Идея заключалась в том, чтобы не выбирать преобразование априори, а оценивать оптимальный параметр \( \lambda \) по данным.
До этого в статистике использовались фиксированные преобразования, например, логарифмирование для данных с положительной асимметрией (распределения дохода, размера популяции). Бокс и Кокс формализовали этот процесс, сделав его автоматизированным и статистически обоснованным. Метод быстро стал стандартным инструментом в регрессионном анализе, особенно в эконометрике, биологии и инженерии.
Цели и применение
Преобразование Бокса — Кокса применяется для решения трёх основных задач:
- Приведение к нормальному распределению. Многие статистические тесты (t-критерий, ANOVA) и модели (линейная регрессия) чувствительны к отклонениям от нормальности. Преобразование делает распределение данных более симметричным, уменьшая асимметрию и эксцесс.
- Стабилизация дисперсии. В данных с гетероскедастичностью (непостоянной дисперсией), например, когда разброс значений растёт вместе со средним, преобразование Бокса — Кокса может сделать дисперсию однородной. Это важно для выполнения предпосылок регрессионного анализа.
- Упрощение модели. Взаимодействия между переменными могут стать более линейными после преобразования, что упрощает интерпретацию коэффициентов регрессии. Например, логарифмическое преобразование (\( \lambda = 0 \)) превращает мультипликативные зависимости в аддитивные.
Области применения
- Эконометрика: преобразование макроэкономических показателей (ВВП, инфляция, цены) для улучшения прогнозных моделей.
- Биология и медицина: анализ данных о концентрации веществ, дозировках лекарств, размерах организмов.
- Инженерия: обработка результатов экспериментов, где дисперсия ошибок зависит от уровня фактора.
- Экология: моделирование численности популяций, где данные часто имеют логнормальное распределение.
- Финансы: преобразование доходностей активов для снижения влияния выбросов.
Выбор параметра \( \lambda \)
Оптимальное значение \( \lambda \) подбирается по данным. Основной метод — максимизация функции правдоподобия для преобразованных данных в предположении, что они нормально распределены. Алгоритм:
- Для каждого возможного \( \lambda \) (обычно в диапазоне от -3 до 3 с шагом 0.1) вычисляется преобразованная переменная \( y^{(\lambda)} \).
- Строится регрессия \( y^{(\lambda)} \) на независимые переменные (если они есть) или просто оценивается среднее и дисперсия.
- Вычисляется логарифмическая функция правдоподобия, которая включает поправку на якобиан преобразования (чтобы сравнение было корректным).
- Выбирается \( \lambda \), дающее максимальное значение.
В программных пакетах (R, Python, Stata) эта процедура автоматизирована. Например, в Python библиотека scipy.stats.boxcox возвращает оптимальное \( \lambda \) и преобразованные данные.
Интерпретация типичных значений \( \lambda \)
| \( \lambda \) | Преобразование | Типичное применение |
|---|---|---|
| -1 | \( 1/y \) | Обратное — для данных с сильной положительной асимметрией |
| -0.5 | \( 1/\sqrt{y} \) | Промежуточное |
| 0 | \( \ln(y) \) | Логарифмическое — для данных с логнормальным распределением |
| 0.5 | \( \sqrt{y} \) | Квадратный корень — для счётных данных (Пуассоновское распределение) |
| 1 | \( y - 1 \) | Линейное — преобразование не меняет форму |
Ограничения и критика
- Требование положительности. Классическое преобразование не работает с нулевыми или отрицательными значениями. Для таких данных приходится либо добавлять константу (сдвиг), либо использовать преобразование Йео — Джонсона.
- Интерпретируемость. Преобразованные значения теряют исходный физический смысл. Например, логарифм ВВП — это не ВВП в денежных единицах. Коэффициенты регрессии после преобразования интерпретируются как эластичности (в случае логарифма) или требуют обратного преобразования для прогнозов.
- Чувствительность к выбросам. Само преобразование может быть искажено экстремальными значениями, если они не являются частью распределения.
- Неуниверсальность. Не все данные можно привести к нормальному распределению одним преобразованием. Для мультимодальных или сильно дискретных распределений метод может быть неэффективен.
- Статистические предположения. Метод максимального правдоподобия для выбора \( \lambda \) предполагает, что после преобразования данные будут нормально распределены, что не всегда выполняется на практике.
Варианты и обобщения
- Преобразование Йео — Джонсона (2000): работает с любыми вещественными числами, включая нули и отрицательные значения. Определяется как:
\[ y^{(\lambda)} = \begin{cases} \frac{(y+1)^\lambda - 1}{\lambda}, & y \geq 0, \lambda \neq 0, \\ \ln(y+1), & y \geq 0, \lambda = 0, \\ \frac{(-y+1)^{2-\lambda} - 1}{2-\lambda}, & y < 0, \lambda \neq 2, \\ -\ln(-y+1), & y < 0, \lambda = 2. \end{cases} \]
- Преобразование Бокса — Кокса с двумя параметрами: иногда добавляется второй параметр сдвига, чтобы обрабатывать данные с нулями.
- Обобщённое преобразование Бокса — Кокса: применяется к многомерным данным или к остаткам регрессии.
Реализация в программном обеспечении
- R: функция
boxcoxиз пакетаMASS(подбор \( \lambda \) по графику правдоподобия). - Python:
scipy.stats.boxcox(одномерный случай) иsklearn.preprocessing.PowerTransformer(с возможностью выбора между Боксом — Коксом и Йео — Джонсоном). - Stata: команда
boxcox. - MATLAB: функция
boxcox.
Пример
Рассмотрим данные о доходах домохозяйств (в тысячах рублей), которые имеют сильную положительную асимметрию (большинство значений сосредоточено в нижней части, а несколько очень высоких доходов растягивают хвост). Применение преобразования Бокса — Кокса с \( \lambda = 0.2 \) (близко к логарифму) делает распределение более симметричным, что позволяет использовать линейную регрессию для прогнозирования расходов. После преобразования остатки модели становятся приблизительно нормальными, и доверительные интервалы — корректными.
Источники
- Box, G. E. P., & Cox, D. R. (1964). An Analysis of Transformations. Journal of the Royal Statistical Society. Series B (Methodological), 26(2), 211–252.
- Yeo, I.-K., & Johnson, R. A. (2000). A New Family of Power Transformations to Improve Normality or Symmetry. Biometrika, 87(4), 954–959.
- Weisberg, S. (2005). Applied Linear Regression (3rd ed.). Wiley.
- Montgomery, D. C., & Runger, G. C. (2018). Applied Statistics and Probability for Engineers (7th ed.). Wiley.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →