Обобщенный класс линейной регрессионой модели
GeneralizedLinearModel является подобранной обобщённой линейной регрессионой моделью. Обобщенная линейная регрессионая модель является специальным классом нелинейных моделей, которые описывают нелинейную связь между откликом и предикторами. Обобщенная линейная регрессионая модель имеет обобщенные характеристики линейной регрессионой модели. Переменная отклика следует нормальному, биномиальному, Пуассону, гамма или обратному Гауссову распределению с параметрами, включая среднюю μ отклика. Функция < reservedrangesplaceholder1 > ссылки определяет отношение между μ и линейной комбинацией предикторов.
Используйте свойства 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 -value для t -statistic
Использовать 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-by- 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-квадрат |
|
Adjusted | R-квадрат скорректирован для количества коэффициентов |
N - количество наблюдений ( |
LLR | Логарифмическая правдоподобность |
L - логарифмическая правдоподобность подобранной модели ( |
Deviance | Отклонение R-квадрат |
D является отклонением подобранной модели ( |
AdjGeneralized | Скорректированный обобщенный R-квадрат |
R2AddGeneralized является корректировкой Нагелкерке [2] к формуле, предложенной Maddala [3], Коксом и Снеллом [4] и Magee [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 | Таблица, представляющая шаги, предпринятые в подгонке |
The 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 - Функция LinkЭто свойство доступно только для чтения.
Ссылка, заданная как структура с полями, описанными в этой таблице.
| Область | Описание |
|---|---|
Name | Имя функции ссылки, заданное как вектор символов. Если вы задаете функцию link с помощью указателя на функцию, то Name является ''. |
Link | Function f, который задает функцию link, заданную как указатель на функцию |
Derivative | Производная f, заданная как указатель на функцию |
Inverse | Обратная переменная f, заданная как указатель на функцию |
Функция link является f функций, которая связывает μ параметра распределения с подобранной линейной комбинацией Xb из предикторов:
f (<reservedrangesplaceholder1>) = Xb.
Типы данных: struct
NumObservations - Количество наблюденийЭто свойство доступно только для чтения.
Количество наблюдений функции аппроксимации, используемой в подборе кривой, заданное в виде положительного целого числа. NumObservations - количество наблюдений, представленных в исходной таблице, наборе данных или матрице, минус любые исключенные строки (заданные с 'Exclude' аргумент пары "имя-значение") или строки с отсутствующими значениями.
Типы данных: double
NumPredictors - Количество переменных предиктораЭто свойство доступно только для чтения.
Количество переменных предиктора, используемых для подгонки модели, заданное в виде положительного целого числа.
Типы данных: double
NumVariables - Количество переменныхЭто свойство доступно только для чтения.
Количество переменных во входных данных, заданное как положительное целое число. NumVariables - количество переменных в исходной таблице или наборе данных или общее количество столбцов в матрице предиктора и векторе отклика.
NumVariables также включает любые переменные, которые не используются для подгонки модели в качестве предикторов или в качестве отклика.
Типы данных: double
ObservationInfo - Информация о наблюденииЭто свойство доступно только для чтения.
Информация о наблюдении, заданная как n-на-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 (<reservedrangesplaceholder1>) ~ Offset + (terms involving real predictors)
где f - функция ссылки. The 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.
Функция ссылки по умолчанию для обобщенной линейной модели является canonical link function. Можно задать функцию ссылки, когда вы подбираете модель с fitglm или stepwiseglm при помощи 'Link' аргумент пары "имя-значение".
| Распределение | Канонические Ссылки Имени функции | Функция ссылки | Средняя (обратная) функция |
|---|---|---|---|
'normal' | 'identity' | f (<reservedrangesplaceholder1>) = μ | μ = Xb |
'binomial' | 'logit' | f (μ) = журнал (μ/( 1 - μ)) | μ = exp (Xb )/( 1 + exp (Xb)) |
'poisson' | 'log' | f (μ) = журнал (μ) | μ = exp (Xb) |
'gamma' | -1 | f (<reservedrangesplaceholder1>) = 1 / μ | μ = 1 / (<reservedrangesplaceholder0>) |
'inverse gaussian' | -2 | f (<reservedrangesplaceholder1>) = 1 / μ2 | μ = (<reservedrangesplaceholder0>)–1/2 |
Расстояние Кука является масштабированным изменением подобранных значений, которое полезно для идентификации выбросов в наблюдениях для переменных предиктора. Расстояние Кука показывает влияние каждого наблюдения на установленные значения отклика. Наблюдение за расстоянием Кука, превышающим в три раза среднее расстояние Кука, может оказаться выбросами.
Дистанционная Di i наблюдения Кука
где
- параметр дисперсии (оценочный или теоретический).
ei - линейный предиктор невязки, , где
g является функцией ссылки.
yi - наблюдаемая реакция.
xi - это наблюдение.
- вектор оцененного коэффициента.
p - количество коэффициентов в регрессионной модели.
hii - i-й диагональный элемент матричного H Hat.
Рычаг является мерой эффекта конкретного наблюдения на регрессионные предсказания из-за положения этого наблюдения в пространстве входов.
Рычаги наблюдения i являются значением <reservedrangesplaceholder7> <reservedrangesplaceholder6> термина диагонали <reservedrangesplaceholder8> th матрицы шляпы H. Поскольку сумма значений рычага p (количество коэффициентов в регрессионой модели), i наблюдения может рассматриваться как выбросы, если его рычаг существенно превышает p/ n, где n - количество наблюдений.
Матрица шляпы является проекционной матрицей, которая проецирует вектор наблюдений отклика на вектор предсказаний.
Матричная H шляпы задана в терминах матричной X данных и диагональной матрицы веса W:
H = X (XTWX)–1XTWT.
W имеет диагональные элементы wi:
где
g - ссылка отображения функций yi к xib.
является производной функции ссылки g.
V является функцией отклонения.
μi - i среднее значение.
Диагональные элементы Hii удовлетворять
где n - количество наблюдений (строки X), а p - количество коэффициентов в регрессионой модели.
Отклонение - обобщение остаточной суммы квадратов. Он измеряет качество подгонки по сравнению с насыщенной моделью.
Отклонение модели M 1 в два раза больше разницы между логарифмической правдоподобностью модели M 1 и насыщенной моделью M s. Насыщенная модель является моделью с максимальным количеством параметров, которые вы можете оценить.
Например, если у вас есть n наблюдения (y i, i = 1, 2,..., n) с потенциально различными значениями для X iTβ, тогда можно задать насыщенную модель с n параметрами. Пусть L (b, y) обозначают максимальное значение функции правдоподобия для модели с b параметрами. Тогда отклонение модели M 1 является
где b 1 и b s содержат предполагаемые параметры для модели M 1 и насыщенной модели, соответственно. Отклонение имеет распределение хи-квадрат с n - p степенями свободы, где n - количество параметров в насыщенной модели и p - количество параметров в модели M 1.
Предположим, что у вас есть две различные обобщенные линейные регрессионые модели M 1 и M 2, и M 1 имеет подмножество членов в M 2. Можно оценить подгонку моделей путем сравнения отклонений D 1 и D 2 двух моделей. Различие отклонений
Асимптотически, разностное D имеет хи-квадратное распределение со степенями свободы v равное разности в количестве параметров, оцененных в M 1 и M 2. Вы можете получить p -value для этого теста с помощью 1 – chi2cdf(D,v).
Обычно вы исследуете D с помощью модели M 2 с постоянным термином и без предикторов. Поэтому 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)
The 0 в конце каждого термина представляет переменную отклика. В целом векторе-столбце из нулей в матрице терминов представляет положение переменной отклика. Если у вас есть переменные предиктора и отклика в матрице и векторе-столбце, то вы должны включать 0 для переменной отклика в последнем столбце каждой строки.
[1] Макфадден, Дэниел. «Условный логит-анализ качественного поведения выбора». в Frontiers in Econometrics, под редакцией П. Zarembka,105-42. Нью-Йорк: Академическая пресса, 1974.
[2] Нагелкерке, Н. Дж. Д. «Примечание к общему определению коэффициента детерминации». Биометрика 78, № 3 (1991): 691-92.
[3] Maddala, Gangadharrao S. Ограниченно-зависимые и качественные переменные в эконометрике. Монографии эконометрического общества. Нью-Йорк, Нью-Йорк: Cambridge University Press, 1983.
[4] Кокс, Д. Р. и Э. Дж. Снелл. Анализ двоичных данных. 2-е изд. Монографии по статистике и прикладной вероятности 32. Лондон; Нью-Йорк: Чапман и Холл, 1989.
[5] Мэги, Лонни. «Меры R 2, основанные на тестах совместного значения коэффициента вероятности и Вальда». Американский статистик 44, № 3 (август 1990): 250-53.
Указания и ограничения по применению:
Когда вы подбираете модель при помощи fitglm или stepwiseglm, вы не можете задать Link, Derivative, и Inverse поля 'Link' аргумент пары "имя-значение" как анонимные функции. То есть вы не можете сгенерировать код с помощью обобщенной линейной модели, которая была создана с использованием анонимных функций для ссылок. Вместо этого задайте функции для компонентов ссылки.
Для получения дополнительной информации смотрите Введение в генерацию кода.
Указания и ограничения по применению:
Следующие функции объекта полностью поддерживают массивы GPU:
Следующие функции объекта поддерживают объекты модели, оснащенные входными параметрами массива GPU:
Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
CompactGeneralizedLinearModel | fitglm | LinearModel | NonLinearModel | stepwiseglm
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.