Устойчивая регрессия
b = robustfit(X,y)
b = robustfit(X,y,wfun,tune)
b = robustfit(X,y,wfun,tune,const)
[b,stats] = robustfit(...)
b = robustfit(X,y) возвращается (p + 1)-by-1 векторный b содействующих оценок для устойчивой полилинейной регрессии ответов в y на предикторах в X. X является n-by-p матрицей p предикторов при каждом из n наблюдений. y является n-1 вектором наблюдаемых ответов. По умолчанию алгоритм использует итеративно повторно взвешенные наименьшие квадраты с bisquare функцией взвешивания.
По умолчанию robustfit добавляет первый столбец 1 с к X, соответствуя постоянному члену в модели. Не вводите столбец 1 с непосредственно в X. Можно изменить поведение по умолчанию robustfit с помощью входа const, ниже.
robustfit обрабатывает NaN s в X или y как отсутствующие значения, и удаляет их.
b = robustfit(X,y, задает функцию взвешивания wfun,tune)wfun. tune является настройкой, постоянной, который разделен на вектор невязок перед вычислительными весами.
Функция взвешивания wfun является одним из значений, описанных в этой таблице. Значением по умолчанию является 'bisquare'.
| Функция веса | Описание | Значение по умолчанию, настраивающееся постоянный |
|---|---|---|
'andrews' | w = (abs(r)<pi) .* sin(r) ./ r | 1.339 |
'bisquare' | w = (abs(r)<1) .* (1 - r.^2).^2 (также названный biweight) | 4.685 |
'cauchy' | w = 1 ./ (1 + r.^2) | 2.385 |
'fair' | w = 1 ./ (1 + abs(r)) | 1.400 |
'huber' | w = 1 ./ max(1, abs(r)) | 1.345 |
'logistic' | w = tanh(r) ./ r | 1.205 |
'ols' | Обычные наименьшие квадраты (никакая функция взвешивания) | 'none' |
'talwar' | w = 1 * (abs(r)<1) | 2.795 |
'welsch' | w = exp(-(r.^2)) | 2.985 |
| указатель на функцию | Пользовательская функция веса, которая принимает векторный r масштабированных невязок и возвращает вектор весов тот же размер как r | 1 |
Если tune не задан, robustfit использует настраивающее значение значения по умолчанию, показанное в таблице. Настраивающие константы значения по умолчанию встроенных функций веса дают содействующие оценки, которые приблизительно на 95% более статистически эффективны, чем обычные оценки наименьших квадратов, если ответ имеет нормальное распределение без выбросов. Уменьшение настраивающихся постоянных увеличений подавление присвоенного к большим невязкам; увеличение настраивающихся постоянных уменьшений подавление присвоенного к большим невязкам.
Значение r в функциях веса
r = resid/(tune*s*sqrt(1-h))
откуда resid является вектором невязок предыдущей итерации, h является вектором значений рычагов от подгонки наименьших квадратов, и s является оценкой стандартного отклонения остаточного члена, данного
s = MAD/0.6745
Здесь MAD является средним абсолютным отклонением невязок от их медианы. Постоянные 0.6745 делают оценку несмещенной для нормального распределения. Если существуют p столбцы в X, самые маленькие p абсолютные отклонения исключены при вычислении медианы.
b = robustfit(X,y, средства управления, будет ли модель включать постоянный термин. wfun,tune,const)const является 'on', чтобы включать постоянный термин (значение по умолчанию), или 'off', чтобы не использовать его. Когда const является 'on', robustfit добавляет первый столбец 1 с к X, и b становится (p + 1)-by-1 вектор. Когда const является 'off', robustfit не изменяет X, затем b является p-by-1 вектор.
[b,stats] = robustfit(...) возвращает структуру stats, поля которого содержат диагностическую статистику от регрессии. Поля stats:
ols_s — Оценка сигмы (RMSE) от обычных наименьших квадратов
robust_s — Устойчивая оценка сигмы
mad_s — Оценка сигмы, вычисленной с помощью среднего абсолютного отклонения невязок от их медианы; используемый для масштабирования невязок во время итеративного подбора кривой
s Итоговая оценка сигмы, больший из robust_s и взвешенное среднее ols_s и robust_s
resid — Невязка
rstud — Невязка Studentized (см. regress для получения дополнительной информации),
se — Стандартная погрешность содействующих оценок
covb — Предполагаемая ковариационная матрица для содействующих оценок
coeffcorr — Предполагаемая корреляция содействующих оценок
t Отношение b к se
p p-значения для t
w Вектор весов для устойчивой подгонки
R R включают разложение QR X
dfe — Степени свободы для ошибки
h Вектор значений рычагов для подгонки наименьших квадратов
Функция robustfit оценивает ковариационную матрицу отклонения содействующих оценок с помощью inv(X'*X)*stats.s^2. Стандартные погрешности и корреляции выведены от этой оценки.
[1] DuMouchel, W. H. и Ф. Л. О'Брайен. “Интегрируя Устойчивую Опцию в Вычислительную среду Регрессии кратного”. Информатика и Статистика: Продолжения 21-го Симпозиума по Интерфейсу. Александрия, ВА: американская Статистическая Ассоциация, 1989.
[2] Голландия, P. W. и Р. Э. Велш. “Устойчивая Регрессия Используя Итеративно Перевзвешенные Наименьшие квадраты”. Коммуникации в Статистике: Теория и Методы, A6, 1977, стр 813–827.
[3] Хубер, P. J. Устойчивая статистика. Хобокен, NJ: John Wiley & Sons, Inc., 1981.
[4] Улица, J. O. Р. Дж. Кэрролл и Д. Рапперт. “Примечание по Вычислению Устойчивых Оценок Регрессии через Итеративно Перевзвешенные Наименьшие квадраты”. Американский Статистик. Издание 42, 1988, стр 152–154.