Расстояние Кука

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
м (Нахождение и удаление выбросов)
м (Ссылки)
 
Строка 46: Строка 46:
* Cook, R. Dennis (February 1977). [http://www.jstor.org/discover/10.2307/1268249?uid=3738032&uid=2&uid=4&sid=21103080796681 "Detection of Influential Observations in Linear Regression"].
* Cook, R. Dennis (February 1977). [http://www.jstor.org/discover/10.2307/1268249?uid=3738032&uid=2&uid=4&sid=21103080796681 "Detection of Influential Observations in Linear Regression"].
-
 
-
* Bollen, Kenneth A.; and Jackman, Robert W. (1990); Regression diagnostics: An expository treatment of outliers and influential cases , in Fox, John; and Long, J. Scott (eds.); Modern Methods of Data Analysis (pp. 257-91).
 
* [http://www.mathworks.com/help/stats/generalizedlinearmodelclass.html GeneralizedLinearModel class]. MATLAB R2013b Documentation.
* [http://www.mathworks.com/help/stats/generalizedlinearmodelclass.html GeneralizedLinearModel class]. MATLAB R2013b Documentation.

Текущая версия

Расстояние Кука (Cook's distance) является широко используемым методом оценки влияния соответствующего наблюдения (элемента выборки) на уравнение регрессии. Эта величина показывает разницу между вычисленными коэффициентами уравнения регрессии и значениями, которые получились бы при исключении соответствующего наблюдения. В адекватной модели все расстояния Кука должны быть примерно одинаковыми; если это не так, то имеются основания считать, что соответствующее наблюдение (или наблюдения) смещает оценки коэффициентов регрессии.

Метод назван в честь американского ученого Р. Денниса Кука , который ввел данное понятие в 1977 году.

Содержание

Определение

Расстояние Кука оценивает эффект от удаления одного (рассматриваемого) наблюдения и вычисляется по следующей формуле:


 D_i =  \frac{ \sum_{j=1}^n (\hat Y_j\ - \hat Y_{j(i)})^2 }{p \ \mathrm{MSE}},

где

\hat Y_j — предсказание регрессионной модели, построенной по всей выборке, получаемое для j-ого наблюдения,

\hat Y_{j(i)} — предсказание регрессионной модели, построенной по выборке без i-ого наблюдения, получаемое для j-ого наблюдения,

p — количество параметров модели,

 \mathrm{MSE} — среднеквадратичная ошибка модели.

Нахождение и удаление выбросов

Существуют различные подходы к определению выбросов с помощью расстояния Кука.

Самый простой способ нахождения это порог  D_i > 1 [1]

Наиболее распространенной эвристикой считается  D_i > 4/n , где n — количество наблюдений в выборке. [1]

Пример использования

Визуализация наблюдений с помощью расстояния Кука. Красным обозначен уровень 4/n, где n — количество наблюдений (n = 206).
Визуализация наблюдений с помощью расстояния Кука. Красным обозначен уровень 4/n, где n — количество наблюдений (n = 206).

Рассмотрим задачу по оценке эффективность тромболитической терапии. В данной задаче собраны данные по 206 пациентам второго кардиологического отделения московской городской клинической больницы №25. Имеются результаты 14 анализов, а также 8 дополнительных признаков, описывающих пациента (пол, возраст, курение, наличие диабета и т.д.). Построив уравнение регрессии и оценив расстояние Кука, мы можем визуализировать наблюдения и определить выбросы.

Реализации

Построив модель с помощью функции mdl = fitglm(X, y), можем оценить для всех наблюдений расстояние Кука с помощью функций класса: mdl.Diagnostics.CooksDistance.

  • R: в пакете stats реализован метод для оценки расстояния Кука для уже настроенной модели cooks.distance(model, ...).

Ссылки


Личные инструменты