Матрица шляп обеспечивает меру рычага. Это полезно для исследования того, находятся ли одно или несколько наблюдений за пределами их X значений, и, следовательно, может чрезмерно влиять на результаты регрессии.
Матрица шляпы также известна как проекционная матрица, потому что она проецирует вектор наблюдений, y, на вектор предсказаний, , таким образом надев «шляпу» на y. Матричная H шляпы задана в терминах матрицы данных X:
H = X (XTX)–1XT
и определяет установленные или предсказанные значения с
Диагональные элементы H, h ii, называются рычагами и удовлетворяют
где p - количество коэффициентов, а n - количество наблюдений (строки X) в регрессионой модели. HatMatrix
- матрица n -by n в Diagnostics
таблица.
После получения подобранной модели, скажем mdl
, использование fitlm
или stepwiselm
, можно:
Отобразите HatMatrix
путем индексации в свойство с помощью записи через точку
mdl.Diagnostics.HatMatrix
HatMatrix
может быть дорогим в вычислительном отношении. В этих случаях можно получить диагональные значения непосредственно, используя mdl.Diagnostics.Leverage
Рычаг является мерой эффекта конкретного наблюдения на регрессионные предсказания из-за положения этого наблюдения в пространстве входов. В целом, чем дальше точка находится от центра входного пространства, тем больше рычагов у него. Поскольку сумма значений рычага p, i наблюдения может рассматриваться как выбросы, если его рычаг существенно превышает среднее значение рычага, p/ n, для примера, значение, больше 2 * p/ n.
Рычагом i наблюдений является значение i-го диагональю члена, h ii, матрицы шляпы H, где
H = X (XTX)–1XT.
где p - количество коэффициентов в регрессионной модели, а n - количество наблюдений. Минимальное значение h ii составляет 1/ n для модели с постоянным членом. Если подобранная модель проходит через источник, то минимальное значение рычага составляет 0 для наблюдения при x = 0.
Можно выразить подобранные значения, , по наблюдаемым значениям, y, с
Следовательно, h ii выражает, на сколько yi наблюдения влияния . Большое значение h ii указывает, что i-й случай удален от центра всех значений X для всех случаев n и имеет больше рычагов. Leverage
- вектор-столбец n -by-1 в Diagnostics
таблица.
После получения подобранной модели, скажем mdl
, использование fitlm
или stepwiselm
, можно:
Отобразите Leverage
вектор путем индексации в свойство с помощью записи через точку
mdl.Diagnostics.Leverage
Постройте график рычага для значений, подобранных вашей моделью, используя
plotDiagnostics(mdl)
plotDiagnostics
метод LinearModel
класс для получения дополнительной информации.
В этом примере показано, как вычислить Leverage
значения и оценка наблюдений с высоким потенциалом. Загрузите выборочные данные и задайте ответ и независимые переменные.
load hospital
y = hospital.BloodPressure(:,1);
X = double(hospital(:,2:5));
Подбор линейной регрессионой модели.
mdl = fitlm(X,y);
Постройте график значений рычага.
plotDiagnostics(mdl)
В данном примере рекомендуемое порогу значение является 2 * 5/100 = 0,1. Нет никаких признаков высоких наблюдений рычагов.
fitlm
| LinearModel
| plotDiagnostics
| stepwiselm