Класс модели обобщенной линейной регрессии
GeneralizedLinearModel является аппроксимированной обобщенной моделью линейной регрессии. Обобщенная модель линейной регрессии - это специальный класс нелинейных моделей, которые описывают нелинейную взаимосвязь между ответом и предикторами. Обобщенная модель линейной регрессии имеет обобщенные характеристики модели линейной регрессии. Переменная отклика следует нормальному, биномиальному, пуассоновскому, гамма или обратному гауссову распределению с параметрами, включающими средний отклик λ. Функция связи f определяет взаимосвязь между λ и линейной комбинацией предикторов.
Использовать свойства GeneralizedLinearModel объект для исследования подогнанной модели обобщенной линейной регрессии. Свойства объекта включают в себя информацию об оценках коэффициентов, сводную статистику, метод подгонки и входные данные. Функции объекта используются для прогнозирования откликов, а также для изменения, оценки и визуализации модели.
Создать GeneralizedLinearModel объект с помощью fitglm или stepwiseglm.
fitglm подгоняет обобщенную модель линейной регрессии к данным с использованием спецификации фиксированной модели. Использовать addTerms, removeTerms, или step для добавления или удаления терминов из модели. В качестве альтернативы можно использовать stepwiseglm для подгонки модели с использованием пошаговой обобщенной линейной регрессии.
CoefficientCovariance - Ковариационная матрица оценок коэффициентовЭто свойство доступно только для чтения.
Ковариационная матрица оценок коэффициентов, заданная как p-by-p матрица числовых значений. p - число коэффициентов в подгоняемой модели.
Дополнительные сведения см. в разделе Стандартные ошибки коэффициентов и доверительные интервалы.
Типы данных: single | double
CoefficientNames - Наименования коэффициентовЭто свойство доступно только для чтения.
Имена коэффициентов, определяемые как массив ячеек символьных векторов, каждый из которых содержит имя соответствующего члена.
Типы данных: cell
Coefficients - Значения коэффициентовЭто свойство доступно только для чтения.
Значения коэффициентов, указанные как таблица. Coefficients содержит одну строку для каждого коэффициента и следующие столбцы:
Estimate - Расчетное значение коэффициента
SE - Стандартная погрешность оценки
tStat - t-статистика для теста, что коэффициент равен нулю
pValue - p-значение для t-статистики
Использовать coefTest для выполнения тестов линейной гипотезы по коэффициентам. Использовать coefCI для нахождения доверительных интервалов оценок коэффициентов.
Чтобы получить любой из этих столбцов в виде вектора, выполните индексирование в свойство с помощью точечной нотации. Например, получить оцененный вектор коэффициентов в модели mdl:
beta = mdl.Coefficients.Estimate
Типы данных: table
NumCoefficients - Количество коэффициентов моделиЭто свойство доступно только для чтения.
Число коэффициентов модели, указанное как положительное целое число. NumCoefficients включает в себя коэффициенты, которые устанавливаются равными нулю, когда модельные члены имеют недостаток ранга.
Типы данных: double
NumEstimatedCoefficients - Количество расчетных коэффициентовЭто свойство доступно только для чтения.
Количество расчетных коэффициентов в модели, указанное как положительное целое число. NumEstimatedCoefficients не включает коэффициенты, которые установлены в нуль, когда модельные члены имеют недостаточный ранг. NumEstimatedCoefficients - степени свободы для регрессии.
Типы данных: double
Deviance - Отклонение подгонкиЭто свойство доступно только для чтения.
Отклонение аппроксимации, определяемое как числовое значение. Отклонение полезно для сравнения двух моделей, когда одна модель является частным случаем другой модели. Разница между отклонениями двух моделей имеет распределение хи-квадрат со степенями свободы, равными разнице в количестве оцениваемых параметров между двумя моделями. Дополнительные сведения см. в разделе Отклонение.
Типы данных: single | double
DFE - Степени свободы для ошибкиЭто свойство доступно только для чтения.
Степени свободы для ошибки (остатки), равные количеству наблюдений минус число оцененных коэффициентов, указанных как положительное целое число.
Типы данных: double
Diagnostics - Диагностика наблюденийЭто свойство доступно только для чтения.
Диагностика наблюдений, заданная как таблица, содержащая одну строку для каждого наблюдения и столбцы, описанные в этой таблице.
| Колонка | Значение | Описание |
|---|---|---|
Leverage | Диагональные элементы HatMatrix | Leverage для каждого наблюдения указывает, в какой степени соответствие определяется наблюдаемыми предикторными значениями. Значение, близкое к 1 указывает, что соответствие в значительной степени определяется этим наблюдением при незначительном вкладе других наблюдений. Значение, близкое к 0 указывает, что посадка в значительной степени определяется другими наблюдениями. Для модели с P коэффициенты и N наблюдения, среднее значение Leverage является P/N. A Leverage значение больше, чем 2*P/N указывает на высокий уровень левериджа. |
CooksDistance | Расстояние варки масштабированного изменения соответствующих значений | CooksDistance - мера масштабированного изменения подгоняемых значений. Наблюдение с помощью CooksDistance более чем втрое среднее расстояние Кука может быть больше. |
HatMatrix | Проекционная матрица для вычисления по наблюдаемым откликам | HatMatrix является Nоколо-N матрица такая, что Fitted = HatMatrix*Y, где Y - вектор ответа и Fitted - вектор аппроксимированных значений отклика. |
Программное обеспечение вычисляет эти значения по шкале линейной комбинации предикторов, хранящейся в LinearPredictor области Fitted и Residuals свойства. Например, программное обеспечение вычисляет диагностические значения, используя подогнанный ответ и скорректированные значения ответа из модели. mdl.
Yfit = mdl.Fitted.LinearPredictor Yadjusted = mdl.Fitted.LinearPredictor + mdl.Residuals.LinearPredictor
Diagnostics содержит информацию, которая полезна при поиске отклонений и влиятельных наблюдений. Дополнительные сведения см. в разделах Использование, Расстояние Кука и Матрица шляпы.
Использовать plotDiagnostics для построения графика диагностики наблюдений.
Строки, не используемые в подгонке из-за отсутствия значений (в ObservationInfo.Missing) или исключенные значения (в ObservationInfo.Excluded) содержат NaN значения в CooksDistance столбец и нули в Leverage и HatMatrix столбцы.
Чтобы получить любой из этих столбцов в виде массива, выполните индексирование в свойство с помощью точечной нотации. Например, получить матрицу шляпы в модели mdl:
HatMatrix = mdl.Diagnostics.HatMatrix;
Типы данных: table
Dispersion - Масштабный коэффициент дисперсии откликаЭто свойство доступно только для чтения.
Масштабный коэффициент дисперсии отклика, определяемый как числовой скаляр.
Если 'DispersionFlag' аргумент пары имя-значение fitglm или stepwiseglm является true, то функция оценивает Dispersion масштабный коэффициент при вычислении дисперсии отклика. Дисперсия отклика равна теоретической дисперсии, умноженной на масштабный коэффициент.
Например, функция дисперсии для биномиального распределения равна p (1-p )/n, где p - параметр вероятности, а n - параметр размера выборки. ЕслиDispersion находится рядом 1, дисперсия данных, по-видимому, согласуется с теоретической дисперсией биномиального распределения. Если Dispersion больше, чем 1набор данных «избыточно распределен» относительно биномиального распределения.
Типы данных: double
DispersionEstimated - Флаг для обозначения использования масштабного коэффициента дисперсииЭто свойство доступно только для чтения.
Флаг, указывающий, fitglm использовал Dispersion масштабный коэффициент для вычисления стандартных ошибок для коэффициентов в Coefficients.SE, указано как логическое значение. Если DispersionEstimated является false, fitglm использовал теоретическое значение дисперсии.
DispersionEstimated может быть false только для биномиального распределения и распределения Пуассона.
Набор DispersionEstimated путем установки 'DispersionFlag' аргумент пары имя-значение fitglm или stepwiseglm.
Типы данных: logical
Fitted - Установленные значения отклика на основе входных данныхЭто свойство доступно только для чтения.
Соответствующие (прогнозируемые) значения на основе входных данных, указанных как таблица, содержащая по одной строке для каждого наблюдения и столбцов, описанных в этой таблице.
| Колонка | Описание |
|---|---|
Response | Прогнозируемые значения по шкале отклика |
LinearPredictor | Прогнозируемые значения по шкале линейной комбинации предикторов (те же, что и функция связи, примененная к Response подогнанные значения) |
Probability | Подогнанные вероятности (включены только с биномиальным распределением) |
Чтобы получить любой из этих столбцов в виде вектора, выполните индексирование в свойство с помощью точечной нотации. Например, получить вектор f установленных значений по шкале отклика в модели mdl:
f = mdl.Fitted.Response
Использовать predict для вычисления прогнозов для других значений предиктора или для вычисления доверительных границ на Fitted.
Типы данных: table
LogLikelihood - Средства к существованиюЭто свойство доступно только для чтения.
Логарифмическое значение распределения модели при значениях ответа, указанных как числовое значение. Среднее значение подгоняется по модели, а другие параметры оцениваются как часть подгонки модели.
Типы данных: single | double
ModelCriterion - Критерий сравнения моделейЭто свойство доступно только для чтения.
Критерий сравнения моделей, указанный как структура со следующими полями:
AIC - информационный критерий Акаике. AIC = –2*logL + 2*m, где logL является источником средств к существованию и m - количество оцениваемых параметров.
AICc - информационный критерий Akaike с поправкой на размер выборки. AICc = AIC + (2*m*(m + 1))/(n – m – 1), где n - количество наблюдений.
BIC - байесовский информационный критерий. BIC = –2*logL + m*log(n).
CAIC - Согласованный информационный критерий Акаике. CAIC = –2*logL + m*(log(n) + 1).
Информационные критерии - это инструменты выбора моделей, которые можно использовать для сравнения нескольких моделей, соответствующих одним и тем же данным. Эти критерии являются основанными на правдоподобии показателями соответствия модели, которые включают штраф за сложность (в частности, количество параметров). По форме наказания различают различные информационные критерии.
При сравнении нескольких моделей модель с наименьшим значением информационного критерия является наиболее подходящей моделью. Наиболее подходящая модель может варьироваться в зависимости от критерия, используемого для сравнения модели.
Чтобы получить любое из значений критерия в виде скаляра, проиндексируйте свойство с помощью точечной нотации. Например, получить значение AIC aic в модели mdl:
aic = mdl.ModelCriterion.AIC
Типы данных: struct
Residuals - Остатки для установленной моделиЭто свойство доступно только для чтения.
Остатки для подогнанной модели, указанные как таблица, содержащая одну строку для каждого наблюдения и столбцы, описанные в этой таблице.
| Колонка | Описание |
|---|---|
Raw | Наблюдаемые минус установленные значения |
LinearPredictor | Остатки в линейной шкале предиктора, равные скорректированному значению отклика минус аппроксимированная линейная комбинация предикторов |
Pearson | Необработанные остатки, деленные на расчетное стандартное отклонение ответа |
Anscombe | Остатки, определенные в преобразованных данных с преобразованием, выбранным для удаления перекоса |
Deviance | Остатки, основанные на вкладе каждого наблюдения в отклонение |
Строки, не используемые в подгонке из-за отсутствия значений (в ObservationInfo.Missing) содержат NaN значения.
Чтобы получить любой из этих столбцов в виде вектора, выполните индексирование в свойство с помощью точечной нотации. Например, получить обычный необработанный остаточный вектор r в модели mdl:
r = mdl.Residuals.Raw
Типы данных: table
Rsquared - R-квадрат для моделиЭто свойство доступно только для чтения.
Значение R-квадрата для модели, указанное как структура с пятью полями.
| Область | Описание | Уравнение |
|---|---|---|
Ordinary | Обыкновенный (нескорректированный) R-квадрат |
SSESST
|
Adjusted | R-квадрат, скорректированный на количество коэффициентов |
N - количество наблюдений ( |
LLR | Соотношение средств к существованию |
L является логическим признаком подогнанной модели ( |
Deviance | Девианс R-квадрат |
D - отклонение подогнанной модели ( |
AdjGeneralized | Скорректированный обобщенный R-квадрат |
− exp (2L0N) R2AdjGeneralized - корректировка Нагелькерке [2] на формулу, предложенную Маддалой [3], Коксом и Снеллом [4], и Маги [5] для моделей логистической регрессии. |
Чтобы получить любое из этих значений в виде скаляра, проиндексируйте свойство с помощью точечной нотации. Например, для получения скорректированного значения R-квадрата в модели mdl, введите:
r2 = mdl.Rsquared.Adjusted
Типы данных: struct
SSE - Сумма квадратичных ошибокЭто свойство доступно только для чтения.
Сумма квадратичных ошибок (остатков), заданная как числовое значение.
Типы данных: single | double
SSR - Регрессионная сумма квадратовЭто свойство доступно только для чтения.
Регрессионная сумма квадратов, заданная как числовое значение. Сумма регрессии квадратов равна сумме квадратичных отклонений аппроксимируемых значений от их среднего значения.
Типы данных: single | double
SST - Общая сумма квадратовЭто свойство доступно только для чтения.
Общая сумма квадратов, заданная как числовое значение. Общая сумма квадратов равна сумме квадратичных отклонений вектора отклика y от mean(y).
Типы данных: single | double
Steps - Пошаговая информация о подгонкеЭто свойство доступно только для чтения.
Информация о ступенчатой подгонке, заданная как структура с полями, описанными в этой таблице.
| Область | Описание |
|---|---|
Start | Формула, представляющая начальную модель |
Lower | Формула, представляющая модель нижней границы. Термины в Lower должен оставаться в модели. |
Upper | Формула, представляющая модель верхней границы. Модель не может содержать больше терминов, чем Upper. |
Criterion | Критерий, используемый для пошагового алгоритма, например 'sse' |
PEnter | Порог для Criterion для добавления термина |
PRemove | Порог для Criterion чтобы удалить термин |
History | Таблица, представляющая шаги, предпринятые в соответствии |
History содержит одну строку для каждого шага, включая начальную аппроксимацию, и столбцы, описанные в этой таблице.
| Колонка | Описание |
|---|---|
Action | Меры, принятые на этапе:
|
TermName |
|
Terms | Спецификация модели в матрице терминов |
DF | Регрессионные степени свободы после шага |
delDF | Изменение степеней свободы регрессии по сравнению с предыдущим шагом (отрицательное значение для шагов, удаляющих член) |
Deviance | Отклонение (остаточная сумма квадратов) на шаге (только для обобщенной модели линейной регрессии) |
FStat | F-статистика, которая приводит к шагу |
PValue | p-значение F-статистики |
Структура пуста, если модель не соответствует ступенчатой регрессии.
Типы данных: struct
Distribution - Обобщенная информация о распределенииЭто свойство доступно только для чтения.
Обобщенная информация о распределении, указанная как структура с полями, описанными в этой таблице.
| Область | Описание |
|---|---|
Name | Название дистрибутива: 'normal', 'binomial', 'poisson', 'gamma', или 'inverse gaussian' |
DevianceFunction | Функция, которая вычисляет компоненты отклонения как функцию от заданных значений параметров и значений отклика |
VarianceFunction | Функция, которая вычисляет теоретическую дисперсию для распределения как функцию от аппроксимированных значений параметров. Когда DispersionEstimated является true, программное обеспечение умножает функцию дисперсии на Dispersion при вычислении стандартных ошибок коэффициентов. |
Типы данных: struct
Formula - Информация о моделиLinearFormula объектЭто свойство доступно только для чтения.
Информация о модели, указанная как LinearFormula объект.
Отображение формулы подогнанной модели mdl с использованием точечной нотации:
mdl.Formula
Link - Функция связиЭто свойство доступно только для чтения.
Функция связи, заданная как структура с полями, описанными в этой таблице.
| Область | Описание |
|---|---|
Name | Имя функции связи, указанное как символьный вектор. Если функция связи задается с помощью дескриптора функции, то Name является ''. |
Link | Функция f, определяющая функцию связи, заданную как дескриптор функции |
Derivative | Производная от f, указанная как дескриптор функции |
Inverse | Обратная f, заданная как дескриптор функции |
Функция линии связи представляет собой функцию f, которая связывает параметр β распределения с аппроксимированной линейной комбинацией Xb предикторов:
f (λ) = Xb.
Типы данных: struct
NumObservations - Количество наблюденийЭто свойство доступно только для чтения.
Число наблюдений функции фитинга, используемой в фитинге, указанное как положительное целое число. NumObservations - количество наблюдений, предоставленных в исходной таблице, наборе данных или матрице, за вычетом всех исключенных строк (задано с помощью 'Exclude' аргумент пары имя-значение) или строки с отсутствующими значениями.
Типы данных: double
NumPredictors - Количество переменных предиктораЭто свойство доступно только для чтения.
Число предикторных переменных, используемых для соответствия модели, указанное как положительное целое число.
Типы данных: double
NumVariables - Количество переменныхЭто свойство доступно только для чтения.
Число переменных во входных данных, указанное как положительное целое число. NumVariables - количество переменных в исходной таблице или наборе данных или общее число столбцов в матрице предиктора и векторе ответа.
NumVariables также включает любые переменные, которые не используются для соответствия модели в качестве предикторов или в качестве ответа.
Типы данных: double
ObservationInfo - Информация о наблюденияхЭто свойство доступно только для чтения.
Информация наблюдения, заданная как таблица n-by-4, где n равно количеству строк входных данных. ObservationInfo содержит столбцы, описанные в этой таблице.
| Колонка | Описание |
|---|---|
Weights | Веса наблюдения, заданные как числовое значение. Значение по умолчанию: 1. |
Excluded | Индикатор исключенных наблюдений, указанный как логическое значение. Значение: true при исключении наблюдения из посадки с помощью 'Exclude' аргумент пары имя-значение. |
Missing | Индикатор отсутствующих наблюдений, указанный как логическое значение. Значение: true если наблюдение отсутствует. |
Subset | Индикатор того, использует ли функция аппроксимации наблюдение, указанное как логическое значение. Значение: true если наблюдение не исключено или отсутствует, т.е. функция фитинга использует наблюдение. |
Чтобы получить любой из этих столбцов в виде вектора, выполните индексирование в свойство с помощью точечной нотации. Например, получить весовой вектор w модели mdl:
w = mdl.ObservationInfo.Weights
Типы данных: table
ObservationNames - Названия наблюденийЭто свойство доступно только для чтения.
Имена наблюдений, определяемые как массив ячеек символьных векторов, содержащих имена наблюдений, используемых при подгонке.
Если подгонка основана на таблице или наборе данных, содержащих имена наблюдений, ObservationNames использует эти имена.
В противном случае ObservationNames является пустым массивом ячеек.
Типы данных: cell
Offset - Переменная смещенияЭто свойство доступно только для чтения.
Переменная смещения, заданная как числовой вектор с той же длиной, что и число строк в данных. Offset передается из fitglm или stepwiseglm в 'Offset' аргумент пары имя-значение. Функции фитинга Offset в качестве дополнительной предикторной переменной со значением коэффициента, зафиксированным в 1. Другими словами, формула для подгонки
f (λ) ~ Offset + (terms involving real predictors)
где f - функция линии связи. Offset предиктор имеет коэффициент 1.
Например, рассмотрим регрессионную модель Пуассона. Предположим, что число счетчиков известно по теоретическим причинам, чтобы быть пропорциональным предиктору A. С помощью функции log link и путем указания log(A) в качестве смещения можно принудительно использовать модель для удовлетворения этого теоретического ограничения.
Типы данных: double
PredictorNames - Названия предикторов, используемых для подгонки моделиЭто свойство доступно только для чтения.
Имена предикторов, используемых для подгонки к модели, заданные как клеточный массив символьных векторов.
Типы данных: cell
ResponseName - Имя переменной ответаЭто свойство доступно только для чтения.
Имя ответной переменной, указанное как символьный вектор.
Типы данных: char
VariableInfo - Информация о переменныхЭто свойство доступно только для чтения.
Информация о переменных, содержащихся в Variables, задается как таблица с одной строкой для каждой переменной и столбцов, описанных в этой таблице.
| Колонка | Описание |
|---|---|
Class | Класс переменных, заданный как массив ячеек символьных векторов, например 'double' и 'categorical' |
Range | Диапазон переменных, заданный как массив ячеек векторов
|
InModel | Индикатор, переменные которого находятся в подогнанной модели, определяемый как логический вектор. Значение: true если модель включает переменную. |
IsCategorical | Индикатор категориальных переменных, указанный как логический вектор. Значение: true если переменная категорична. |
VariableInfo также включает любые переменные, которые не используются для соответствия модели в качестве предикторов или в качестве ответа.
Типы данных: table
VariableNames - имена переменных;Это свойство доступно только для чтения.
Имена переменных, определяемые как массив ячеек символьных векторов.
Если аппроксимация основана на таблице или наборе данных, это свойство предоставляет имена переменных в таблице или наборе данных.
Если подгонка основана на матрице предиктора и векторе отклика, VariableNames содержит значения, указанные 'VarNames' аргумент пары имя-значение метода фитинга. Значение по умолчанию 'VarNames' является {'x1','x2',...,'xn','y'}.
VariableNames также включает любые переменные, которые не используются для соответствия модели в качестве предикторов или в качестве ответа.
Типы данных: cell
Variables - Входные данныеЭто свойство доступно только для чтения.
Входные данные, указанные как таблица. Variables содержит как предикторные, так и ответные значения. Если аппроксимация основана на таблице или массиве наборов данных, Variables содержит все данные из таблицы или массива набора данных. В противном случае Variables - таблица, созданная на основе матрицы входных данных; X и вектор отклика y.
Variables также включает любые переменные, которые не используются для соответствия модели в качестве предикторов или в качестве ответа.
Типы данных: table
CompactGeneralizedLinearModelcompact | Компактная обобщенная модель линейной регрессии |
addTerms | Добавление членов в обобщенную модель линейной регрессии |
removeTerms | Удаление членов из обобщенной модели линейной регрессии |
step | Улучшение обобщенной модели линейной регрессии путем добавления или удаления членов |
coefCI | Доверительные интервалы оценок коэффициентов обобщенной модели линейной регрессии |
coefTest | Тест линейной гипотезы по обобщенным коэффициентам модели линейной регрессии |
devianceTest | Анализ отклонения для обобщенной модели линейной регрессии |
partialDependence | Вычислить частичную зависимость |
plotDiagnostics | Диагностика наблюдения за графиком обобщенной модели линейной регрессии |
plotPartialDependence | Создание графиков частичной зависимости (PDP) и индивидуального условного ожидания (ICE) |
plotResiduals | Остатки графика обобщенной модели линейной регрессии |
plotSlice | График срезов через подогнанную обобщенную линейную регрессионную поверхность |
gather | Сбор свойств модели машинного обучения из графического процессора |
Подгоните модель логистической регрессии вероятности курения как функцию возраста, веса и пола, используя модель двустороннего взаимодействия.
Загрузить hospital набор данных.
load hospitalПреобразование массива наборов данных в таблицу.
tbl = dataset2table(hospital);
Укажите модель с помощью формулы, включающей двухсторонние взаимодействия и элементы нижнего порядка.
modelspec = 'Smoker ~ Age*Weight*Sex - Age:Weight:Sex';Создайте обобщенную линейную модель.
mdl = fitglm(tbl,modelspec,'Distribution','binomial')
mdl =
Generalized linear regression model:
logit(Smoker) ~ 1 + Sex*Age + Sex*Weight + Age*Weight
Distribution = Binomial
Estimated Coefficients:
Estimate SE tStat pValue
___________ _________ ________ _______
(Intercept) -6.0492 19.749 -0.3063 0.75938
Sex_Male -2.2859 12.424 -0.18399 0.85402
Age 0.11691 0.50977 0.22934 0.81861
Weight 0.031109 0.15208 0.20455 0.83792
Sex_Male:Age 0.020734 0.20681 0.10025 0.92014
Sex_Male:Weight 0.01216 0.053168 0.22871 0.8191
Age:Weight -0.00071959 0.0038964 -0.18468 0.85348
100 observations, 93 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 5.07, p-value = 0.535
Большое значение p указывает на то, что модель не может статистически отличаться от константы.
Создайте данные ответа, используя три из 20 переменных предиктора, и создайте обобщенную линейную модель, используя пошаговую регрессию из постоянной модели, чтобы увидеть, stepwiseglm находит правильные предикторы.
Создайте выборку данных, которая имеет 20 переменных предиктора. Используйте три предиктора для генерации переменной отклика Пуассона.
rng default % for reproducibility X = randn(100,20); mu = exp(X(:,[5 10 15])*[.4;.2;.3] + 1); y = poissrnd(mu);
Подгонка обобщенной модели линейной регрессии с использованием распределения Пуассона. Укажите начальную модель как модель, содержащую только константу (пересечение). Кроме того, укажите модель с пересечением и линейным членом для каждого предиктора в качестве самой большой модели, которую следует рассматривать как подгонку с помощью 'Upper' аргумент пары имя-значение.
mdl = stepwiseglm(X,y,'constant','Upper','linear','Distribution','poisson')
1. Adding x5, Deviance = 134.439, Chi2Stat = 52.24814, PValue = 4.891229e-13 2. Adding x15, Deviance = 106.285, Chi2Stat = 28.15393, PValue = 1.1204e-07 3. Adding x10, Deviance = 95.0207, Chi2Stat = 11.2644, PValue = 0.000790094
mdl =
Generalized linear regression model:
log(y) ~ 1 + x5 + x10 + x15
Distribution = Poisson
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ __________
(Intercept) 1.0115 0.064275 15.737 8.4217e-56
x5 0.39508 0.066665 5.9263 3.0977e-09
x10 0.18863 0.05534 3.4085 0.0006532
x15 0.29295 0.053269 5.4995 3.8089e-08
100 observations, 96 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 91.7, p-value = 9.61e-20
stepwiseglm находит три правильных предиктора: x5, x10, и x15.
Функцией связи по умолчанию для обобщенной линейной модели является каноническая функция связи. Можно указать функцию связи, когда модель соответствует fitglm или stepwiseglm с помощью 'Link' аргумент пары имя-значение.
| Распределение | Имя канонической функции связи | Функция связи | Средняя (обратная) функция |
|---|---|---|---|
'normal' | 'identity' | f (λ) = λ | λ = Xb |
'binomial' | 'logit' | f (μ) = регистрация (μ/(1 - μ)) | λ = exp (Xb )/( 1 + exp (Xb)) |
'poisson' | 'log' | f (мкм) = log (мкм) | λ = exp (Xb) |
'gamma' | -1 | f (λ) = 1/λ | λ = 1/( Xb) |
'inverse gaussian' | -2 | f (мк2) = 1/мк2 | λ = (Xb) -1/2 |
Расстояние Кука - это масштабированное изменение подгоняемых значений, которое полезно для выявления отклонений в наблюдениях для переменных предиктора. Расстояние Кука показывает влияние каждого наблюдения на соответствующие значения отклика. Наблюдение с расстоянием Кука больше, чем в три раза среднее расстояние Кука может быть отклонением.
Расстояние Кука Di наблюдения i
hii) 2,
где
- параметр дисперсии (расчетный или теоретический).
ei - линейный предикторный остаток, xβ ^, где
g - функция линии связи.
yi - наблюдаемый ответ.
xi - это наблюдение.
^ - оценочный вектор коэффициентов.
p - число коэффициентов в регрессионной модели.
hii - i-й диагональный элемент Hat Matrix H.
Леверидж - это мера влияния конкретного наблюдения на регрессионные прогнозы из-за положения этого наблюдения в пространстве входных данных.
Леверидж наблюдения i является значением i-го диагонального члена hii матрицы hat H. Поскольку сумма значений левериджа равна p (число коэффициентов в регрессионной модели), наблюдение i можно считать отклонением, если его леверидж существенно превышает p/n, где n - число наблюдений.
Матрица hat - это проекционная матрица, которая проецирует вектор ответных наблюдений на вектор предсказаний.
Головная матрица H определяется в терминах матрицы X данных и диагональной весовой матрицы W:
H = X (XTWX) -1XTWT.
W имеет диагональные элементы wi:
(мкi),
где
g - отображение функции связи yi в xib.
′ - производная функции связи g.
V - функция дисперсии.
pcii - i-ое среднее значение.
Диагональные элементы Hii удовлетворяют
где n - количество наблюдений (строк X), а p - число коэффициентов в регрессионной модели.
Отклонение - это обобщение остаточной суммы квадратов. Он измеряет доброту посадки по сравнению с насыщенной моделью.
Отклонение M1 модели в два раза больше разницы между логикой модели M1 и насыщенной моделью Ms A насыщенная модель является моделью с максимальным количеством параметров, которое можно оценить.
Например, если есть n наблюдений (yi, i = 1, 2,..., n) с потенциально различными значениями для XiTβ, то можно определить насыщенную модель с n параметрами. Пусть L (b, y) обозначает максимальное значение функции правдоподобия для модели с параметрами b. Тогда отклонение модели M1
bS, y)),
где b1 и bs содержат оценочные параметры для модели M1 и насыщенной модели соответственно. Отклонение имеет хи-квадратное распределение с n - p степенями свободы, где n - число параметров в насыщенной модели и p - число параметров в M1 модели.
Предположим, что у вас есть две различные обобщенные модели линейной регрессии M1 и M2, и M1 имеет подмножество членов в M2. Можно оценить соответствие моделей, сравнив отклонения D1 и D2 двух моделей. Разница отклонений
logL (b2, y) − logL (b1, y)).
Асимптотически разность D имеет хи-квадратное распределение со степенями свободы v, равными разнице в количестве параметров, оцениваемых в M1 и M2. Значение p для этого теста можно получить с помощью 1 – chi2cdf(D,v).
Обычно вы исследуете D с помощью модели, M2 с постоянным термином и без предикторов. Поэтому D имеет распределение хи-квадрат с p - 1 степенями свободы. Если дисперсия оценивается, разница, деленная на расчетную дисперсию, имеет F-распределение с p-1 числительными степенями свободы и n-p знаменательными степенями свободы.
Матрица терминов T представляет собой матрицу t-by- ( p + 1), задающую члены в модели, где t - число членов, p - число переменных предиктора, и + 1 учитывает переменную отклика. Значение T(i,j) - экспонента переменной j в термине i.
Например, предположим, что входные данные включают три прогнозирующие переменные. x1, x2, и x3 и переменная ответа y в порядке x1, x2, x3, и y. Каждая строка T представляет собой один термин:
[0 0 0 0] - Постоянный термин или перехват
[0 1 0 0] — x2; эквивалентно, x1^0 * x2^1 * x3^0
[1 0 1 0] — x1*x3
[2 0 0 0] — x1^2
[0 1 2 0] — x2*(x3^2)
0 в конце каждого члена представляет переменную ответа. В общем случае вектор-столбец нулей в матрице членов представляет положение переменной отклика. Если в матрице и векторе столбца имеются переменные предиктора и отклика, то необходимо включить 0 для переменной ответа в последнем столбце каждой строки.
[1] Макфадден, Дэниел. «Условный логитовый анализ качественного поведения выбора». в Frontiers in Econometrics, под редакцией П. Zarembka,105-42. Нью-Йорк: Академическая пресса, 1974.
[2] Нагелькерке, Н. Дж. Д. «Примечание к общему определению коэффициента определения». Биометрика 78, № 3 (1991): 691-92.
[3] Маддала, Gangadharrao S. Ограниченные зависимые и качественные переменные в эконометрике. Монографии Эконометрического общества. Нью-Йорк, Нью-Йорк: Cambridge University Press, 1983.
[4] Кокс, D. R. и E. J. Поводок. Анализ двоичных данных. 2-я редакция Монографии по статистике и прикладной вероятности 32. Лондон; Нью-Йорк: Чепмен и Холл, 1989.
[5] Маги, Лонни. «Измерения R 2, основанные на совместных тестах значимости Wald и отношения правдоподобия». Американский статистик 44, № 3 (август 1990 года): 250-53.
Примечания и ограничения по использованию:
При подгонке модели с помощью fitglm или stepwiseglm, вы не можете указать Link, Derivative, и Inverse поля 'Link' аргумент пары имя-значение как анонимные функции. То есть нельзя создать код с помощью обобщенной линейной модели, созданной с помощью анонимных функций для ссылок. Вместо этого определите функции для компонентов связи.
Дополнительные сведения см. в разделе Введение в создание кода.
Примечания и ограничения по использованию:
Следующие функции объекта полностью поддерживают массивы GPU:
Следующие функции объектов поддерживают объекты модели, оснащенные входными аргументами массива GPU:
Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
CompactGeneralizedLinearModel | fitglm | LinearModel | NonLinearModel | stepwiseglm
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.