Суперклассы: CompactGeneralizedLinearModel
Обобщенный линейный класс модели регрессии
Объект, включающий обучающие данные, описание модели, диагностическую информацию и адаптированные коэффициенты для обобщенной линейной регрессии. Предскажите ответы модели с predict или feval методы.
или mdl =
fitglm(tbl) создает обобщенную линейную модель таблицы или массива набора данных mdl =
fitglm(X,y)tbl, или ответов y к матрице данных X. Для получения дополнительной информации смотрите fitglm.
или mdl = stepwiseglm(tbl) создает обобщенную линейную модель таблицы или массива набора данных mdl =
stepwiseglm(X,y)tbl, или ответов y к матрице данных X, с неважными исключенными предикторами. Для получения дополнительной информации смотрите stepwiseglm.
tbl — Входные данныеВходные данные включая переменные прогноза и переменные отклика, заданные как таблица или массив набора данных. Переменные предикторы и переменная отклика могут быть числовыми, логическими, категориальными, символ или строка. Переменная отклика может иметь тип данных кроме числового только если 'Distribution' 'binomial'.
По умолчанию, GeneralizedLinearModel берет последнюю переменную в качестве переменной отклика и других как переменные предикторы.
Чтобы установить различный столбец как переменную отклика, используйте ResponseVar аргумент пары "имя-значение".
Чтобы использовать подмножество столбцов как предикторы, используйте PredictorVars аргумент пары "имя-значение".
Чтобы задать спецификацию модели, установите modelspec аргумент с помощью формулы или матрицы условий. Матрица формулы или условий задает который столбцы использовать в качестве переменных предикторов или переменных отклика.
Имена переменных в таблице не должны быть допустимыми идентификаторами MATLAB®. Однако, если имена не допустимы, вы не можете использовать формулу, когда вы соответствуете или настраиваете модель; например:
Вы не можете задать modelspec использование формулы.
Вы не можете использовать формулу, чтобы задать условия, чтобы добавить или удалить, когда вы используете addTerms функционируйте или removeTerms функция, соответственно.
Вы не можете использовать формулу, чтобы задать нижние и верхние границы модели, когда вы используете step или stepwiseglm функция с аргументами пары "имя-значение" 'Lower' и 'Upper', соответственно.
Можно проверить имена переменных в tbl при помощи isvarname функция. Следующий код возвращает логический 1 TRUE) для каждой переменной, которая имеет допустимое имя переменной.
cellfun(@isvarname,tbl.Properties.VariableNames)
tbl не допустимы, затем преобразуют их при помощи matlab.lang.makeValidName функция.tbl.Properties.VariableNames = matlab.lang.makeValidName(tbl.Properties.VariableNames);
X — Переменные предикторыПеременные предикторы, заданные как n-by-p матрица, где n является количеством наблюдений и p, являются количеством переменных предикторов. Каждый столбец X представляет одну переменную, и каждая строка представляет одно наблюдение.
По умолчанию существует постоянный член в модели, если вы явным образом не удаляете его, не включайте столбец 1 с в X.
Типы данных: single | double
y — Переменная откликаПеременная отклика, заданная как вектор или матрица.
Если 'Distribution' не 'binomial', затем y должен быть n-by-1 вектор, где n является количеством наблюдений. Каждая запись в y ответ для соответствующей строки X. Тип данных должен быть одним или двойным.
Если 'Distribution' 'binomial', затем y может быть n-by-1 вектор или n-by-2 матрица с количествами в столбце 1 и BinomialSize в столбце 2.
Типы данных: single | double | logical | categorical
CoefficientCovariance — Ковариационная матрица содействующих оценокЭто свойство доступно только для чтения.
Ковариационная матрица содействующих оценок, заданных как p-by-p матрица числовых значений. p является количеством коэффициентов в подобранной модели.
Для получения дополнительной информации смотрите Содействующие Стандартные погрешности и Доверительные интервалы.
Типы данных: single | double
CoefficientNames — Содействующие именаЭто свойство доступно только для чтения.
Содействующие имена, заданные как массив ячеек из символьных векторов, каждый содержащий имя соответствующего термина.
Типы данных: cell
Coefficients — Содействующие значенияЭто свойство доступно только для чтения.
Содействующие значения, заданные как таблица. Coefficients содержит одну строку для каждого коэффициента и этих столбцов:
Estimate — Предполагаемое содействующее значение
SE — Стандартная погрешность оценки
tStat — t - статистическая величина для теста, что коэффициент является нулем
pValue — p - значение для t - статистическая величина
Используйте anova (только для модели линейной регрессии) или coefTest выполнять другие тесты на коэффициентах. Используйте coefCI найти доверительные интервалы содействующих оценок.
Чтобы получить любой из этих столбцов как вектор, индексируйте в свойство с помощью записи через точку. Например, получите предполагаемый вектор коэффициентов в модели mdl:
beta = mdl.Coefficients.Estimate
Типы данных: table
Deviance — Отклонение подгонкиЭто свойство доступно только для чтения.
Отклонение подгонки, заданной как числовое значение. Отклонение полезно для сравнения двух моделей, когда одна модель является особым случаем другой модели. Различие между отклонением этих двух моделей имеет распределение хи-квадрат со степенями свободы, равными различию в количестве предполагаемых параметров между этими двумя моделями. Для получения дополнительной информации об отклонении смотрите Отклонение.
Типы данных: single | double
DFE — Степени свободы для ошибкиЭто свойство доступно только для чтения.
Степени свободы для ошибки (остаточные значения), равняйтесь количеству наблюдений минус количество предполагаемых коэффициентов, заданных как положительное целое число.
Типы данных: double
Diagnostics — Диагностическая информацияЭто свойство доступно только для чтения.
Диагностическая информация для модели, заданной как таблица. Диагностика может помочь идентифицировать выбросы и влиятельные наблюдения. Diagnostics содержит следующие поля.
| Поле | Значение | Утилита |
|---|---|---|
Leverage | Диагональные элементы HatMatrix | Рычаги указывают, до какой степени ожидаемое значение для наблюдения определяется наблюдаемой величиной для того наблюдения. Значение близко к 1 указывает, что прогноз в основном определяется тем наблюдением с небольшим вкладом от других наблюдений. Значение близко к 0 указывает, что подгонка в основном определяется другими наблюдениями. Для модели с коэффициентами p и наблюдениями n, средним значением Leverage p/n. Наблюдение с Leverage больше, чем 2*p/n может быть выброс. |
CooksDistance | Мера повара масштабированного изменения в подходящих значениях | CooksDistance мера масштабированного изменения в подходящих значениях. Наблюдение с CooksDistance больше, чем три раза расстояние среднего Кука может быть выброс. |
HatMatrix | Матрица проекции, чтобы вычислить адаптированный из наблюдаемых ответов | HatMatrix n-by-n, матрицируют таким образом что Fitted = HatMatrix*Y, где Y вектор отклика и Fitted вектор подходящих значений ответа. |
Все эти количества вычисляются по шкале линейного предиктора. Например, в уравнении, которое задает матрицу шляпы:
Yfit = glm.Fitted.LinearPredictor Y = glm.Fitted.LinearPredictor + glm.Residuals.LinearPredictor
Типы данных: table
Dispersion — Масштабный коэффициент отклонения ответаЭто свойство доступно только для чтения.
Масштабный коэффициент отклонения ответа, заданного как числовое значение. Dispersion умножает функцию отклонения для распределения.
Например, функцией отклонения для биномиального распределения является p (1–p)/n, где p является параметром вероятности, и n является параметром объема выборки. Если Dispersion около 1, отклонение данных, кажется, соглашается с теоретическим отклонением биномиального распределения. Если Dispersion больше, чем 1, набор данных “сверхрассеивается” относительно биномиального распределения.
Типы данных: double
DispersionEstimated — Отметьте, чтобы указать на использование дисперсионного масштабного коэффициентаЭто свойство доступно только для чтения.
Отметьте, чтобы указать ли fitglm используемый Dispersion масштабный коэффициент, чтобы вычислить стандартные погрешности для коэффициентов в Coefficients.SE, заданный как логическое значение. Если DispersionEstimated false, fitglm используемый теоретическое значение отклонения.
DispersionEstimated может быть false только для 'binomial' или 'poisson' распределения.
Установите DispersionEstimated путем установки DispersionFlag пара "имя-значение" в fitglm.
Типы данных: логический
Distribution — Обобщенная информация о распределенииЭто свойство доступно только для чтения.
Обобщенная информация распределения, указанная как структура со следующими полями, относящимися к обобщенному распределению.
| Поле | Описание |
|---|---|
Name | Имя распределения, один из 'normal', 'binomial', 'poisson'\Gamma, или 'inverse gaussian'. |
DevianceFunction | Функция, которая вычисляет компоненты отклонения как функция подходящих значений параметров и значений ответа. |
VarianceFunction | Функция, которая вычисляет теоретическое отклонение для распределения как функция подходящих значений параметров. Когда DispersionEstimated true, Dispersion умножает функцию отклонения в расчете содействующих стандартных погрешностей. |
Типы данных: struct
Fitted — Подходящие значения ответа на основе входных данныхЭто свойство доступно только для чтения.
Адаптированные (предсказанные) значения на основе входных данных, заданных как таблица с одной строкой для каждого наблюдения и следующих столбцов.
| Поле | Описание |
|---|---|
Response | Ожидаемые значения по шкале ответа. |
LinearPredictor | Ожидаемые значения по шкале линейного предиктора. Они эквивалентны, функция ссылки применилась к Response подходящие значения. |
Probability | Подходящие вероятности (этот столбец включен только с биномиальным распределением). |
Чтобы получить любой из столбцов как вектор, индексируйте в свойство с помощью записи через точку. Например, в модели mdl, векторный f из подходящих значений на ответе шкала
f = mdl.Fitted.Response
Используйте predict вычислить прогнозы для других значений предиктора или вычислить доверительные границы на Fitted.
Типы данных: table
Formula — Информация моделиLinearFormula объектЭто свойство доступно только для чтения.
Информация модели, указанная как LinearFormula объект.
Отобразите формулу подобранной модели mdl использование записи через точку:
mdl.Formula
Link — Функция ссылкиЭто свойство доступно только для чтения.
Функция ссылки, заданная как структура со следующими полями.
| Поле | Описание |
|---|---|
Name | Имя функции ссылки или '' если вы задали ссылку как указатель на функцию, а не вектор символов. |
LinkFunction | Функция, которая задает f, указатель на функцию. |
DevianceFunction | Производная f, указателя на функцию. |
VarianceFunction | Инверсия f, указателя на функцию. |
Ссылкой является функциональный f, который соединяет параметр распределения μ с подходящей линейной комбинацией Xb предикторов:
f (μ) = Xb.
Типы данных: struct
LogLikelihood — Регистрируйте вероятностьЭто свойство доступно только для чтения.
Регистрируйте вероятность распределения модели в значениях ответа, заданных как числовое значение. Среднее значение адаптировано из модели, и другие параметры оцениваются как часть подгонки модели.
Типы данных: single | double
ModelCriterion — Критерий сравнения моделиЭто свойство доступно только для чтения.
Критерий сравнения модели, заданного как структура с этими полями:
AIC — Критерий информации о Akaike. 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 — Сопоставимый информационный критерий Akaike. CAIC = –2*logL + m*(log(n)+1).
Информационные критерии являются инструментами выбора модели, которые можно использовать, чтобы сравнить подгонку многоуровневых моделей к тем же данным. Эти критерии являются основанными на вероятности мерами подгонки модели, которые включают штраф за сложность (а именно, количество параметров). Различные информационные критерии отличает форма штрафа.
Когда вы сравниваете многоуровневые модели, модель с самым низким информационным значением критерия является моделью оптимальной подгонки. Модель оптимальной подгонки может варьироваться в зависимости от критерия, используемого в сравнении модели.
Чтобы получить любое из значений критерия как скаляр, индексируйте в свойство с помощью записи через точку. Например, получите значение AIC aic в модели mdl:
aic = mdl.ModelCriterion.AIC
Типы данных: struct
NumCoefficients — Количество коэффициентов моделиЭто свойство доступно только для чтения.
Количество коэффициентов модели, заданных как положительное целое число. NumCoefficients включает коэффициенты, которые обнуляются, когда условия модели имеют неполный ранг.
Типы данных: double
NumEstimatedCoefficients — Количество предполагаемых коэффициентовЭто свойство доступно только для чтения.
Количество предполагаемых коэффициентов в модели, заданной как положительное целое число. NumEstimatedCoefficients не включает коэффициенты, которые обнуляются, когда условия модели имеют неполный ранг. NumEstimatedCoefficients степени свободы для регрессии.
Типы данных: double
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Это свойство доступно только для чтения.
Возместите переменную, заданную как числовой вектор с той же длиной как количество строк в данных. Offset передается от fitglm или stepwiseglm в Offset пара "имя-значение". Подходящая функция использовала Offset как переменный предиктор, но с содействующим набором к точно 1. Другими словами, формула для подбора кривой была
μ ~ Offset + (terms involving real predictors)
с Offset предиктор, имеющий коэффициент 1.
Например, рассмотрите модель регрессии Пуассона. Предположим, что количество количеств известно по теоретическим причинам быть пропорциональным предиктору A. При помощи журнала соединяют функцию и путем определения log(A) как смещение, можно обеспечить модель, чтобы удовлетворить этому теоретическому ограничению.
Типы данных: double
PredictorNames — Имена предикторов раньше подбирали модельЭто свойство доступно только для чтения.
Имена предикторов раньше подбирали модель, заданную как массив ячеек из символьных векторов.
Типы данных: cell
Residuals — Остаточные значения для подобранной моделиЭто свойство доступно только для чтения.
Остаточные значения для подобранной модели, заданной как таблица с одной строкой для каждого наблюдения и следующих столбцов.
| Поле | Описание |
|---|---|
Raw | Наблюдаемый минус подходящие значения. |
LinearPredictor | Остаточные значения линейной шкалы предиктора, равняйтесь настроенному значению ответа минус подходящая линейная комбинация предикторов. |
Pearson | Необработанные остаточные значения, разделенные на предполагаемое стандартное отклонение ответа. |
Anscombe | Остаточные значения, заданные на преобразованных данных с преобразованием, выбранным, чтобы удалить скошенность. |
Deviance | Остаточные значения на основе вклада каждого наблюдения к отклонению. |
Чтобы получить любой из этих столбцов как вектор, индексируйте в свойство с помощью записи через точку. Например, в модели mdl, обычный необработанный вектор невязок r :
r = mdl.Residuals.Raw
Строки, не используемые в подгонке из-за отсутствующих значений (в ObservationInfo.Missing) содержите NaN значения.
Строки, не используемые в подгонке из-за исключенных значений (в ObservationInfo.Excluded) содержите NaN значения, за следующими исключениями:
raw содержит различие между наблюдаемыми и ожидаемыми значениями.
standardized невязка, стандартизированная обычным способом.
studentized совпадает со стандартизированными значениями, потому что эта невязка не используется в оценке остаточного стандартного отклонения.
Типы данных: table
ResponseName — Имя переменной откликаЭто свойство доступно только для чтения.
Имя переменной отклика, заданное как вектор символов.
Типы данных: char
Rsquared — Значение R-squared для моделиЭто свойство доступно только для чтения.
Значение R-squared для модели, заданной как структура с пятью полями:
Ordinary — Обычный (неприспособленный) R-squared
Adjusted — R-squared, настроенный для количества коэффициентов
LLR — Отношение логарифмической правдоподобности
Deviance — Отклонение
AdjGeneralized — Настроенный обобщил R-squared
Значение R-squared является пропорцией полной суммы квадратов, объясненных моделью. Обычное значение R-squared относится к SSR и SST свойства:
Rsquared = SSR/SST = 1 - SSE/SST.
Чтобы получить любое из этих значений как скаляр, индексируйте в свойство с помощью записи через точку. Например, настроенное значение R-squared в mdl
r2 = mdl.Rsquared.Adjusted
Типы данных: struct
SSE — Сумма квадратичных невязокЭто свойство доступно только для чтения.
Сумма квадратичных невязок (остаточные значения), заданные как числовое значение.
Теорема Пифагора подразумевает
SST = SSE + SSR,
где SST полная сумма квадратов, SSE сумма квадратичных невязок и SSR сумма квадратов регрессии.
Типы данных: single | double
SSR — Сумма квадратов регрессииЭто свойство доступно только для чтения.
Сумма квадратов регрессии, заданная как числовое значение. Сумма квадратов регрессии равна сумме отклонений в квадрате подходящих значений от их среднего значения.
Теорема Пифагора подразумевает
SST = SSE + SSR,
где SST полная сумма квадратов, SSE сумма квадратичных невязок и SSR сумма квадратов регрессии.
Типы данных: single | double
SST — Полная сумма квадратовЭто свойство доступно только для чтения.
Полная сумма квадратов, заданных как числовое значение. Полная сумма квадратов равна сумме отклонений в квадрате вектора отклика y от mean(y).
Теорема Пифагора подразумевает
SST = SSE + SSR,
где SST полная сумма квадратов, SSE сумма квадратичных невязок и SSR сумма квадратов регрессии.
Типы данных: 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
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
| addTerms | Добавьте условия в обобщенную линейную модель |
| компактный | Компактная обобщенная линейная модель регрессии |
| подгонка | (Не Рекомендуемый), Создают обобщенную линейную модель регрессии |
| plotDiagnostics | Постройте диагностику обобщенной линейной модели регрессии |
| plotResiduals | Постройте остаточные значения обобщенной линейной модели регрессии |
| removeTerms | Удалите условия из обобщенной линейной модели |
| шаг | Улучшите обобщенную линейную модель регрессии путем добавления или удаления условий |
| пошагово | (Не Рекомендуемый), Создают обобщенную линейную модель регрессии ступенчатой регрессией |
| coefCI | Доверительные интервалы содействующих оценок обобщенной линейной модели |
| coefTest | Линейный тест гипотезы на обобщенных линейных коэффициентах модели регрессии |
| devianceTest | Анализ отклонения |
| disp | Отобразите обобщенную линейную модель регрессии |
| feval | Оцените обобщенный линейный прогноз модели регрессии |
| plotSlice | График срезов через подходящую обобщенную линейную поверхность регрессии |
| предсказать | Предскажите ответ обобщенной линейной модели регрессии |
| случайный | Симулируйте ответы для обобщенной линейной модели регрессии |
Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).
Подбирайте модель логистической регрессии вероятности курения как функция возраста, веса и пола, с помощью двухсторонней модели взаимодействий.
Загрузите hospital массив набора данных.
load hospital ds = hospital; % just to use the ds name
Задайте модель с помощью формулы, которая позволяет до двухсторонних взаимодействий.
modelspec = 'Smoker ~ Age*Weight*Sex - Age:Weight:Sex';Создайте обобщенную линейную модель.
mdl = fitglm(ds,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
Большое - значение указывает, что сила модели не отличается статистически от константы.
Создайте данные об ответе, использующие всего три из 20 предикторов, и создайте обобщенную линейную модель пошагово, чтобы видеть, используют ли они только правильные предикторы.
Создайте данные с 20 предикторами и ответ Пуассона, использующий всего три из предикторов, плюс константа.
rng default % for reproducibility X = randn(100,20); mu = exp(X(:,[5 10 15])*[.4;.2;.3] + 1); y = poissrnd(mu);
Подбирайте обобщенную линейную модель с помощью распределения Пуассона.
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
Функцией ссылки по умолчанию для обобщенной линейной модели является canonical link function.
Канонические функции ссылки для обобщенных линейных моделей
| Распределение | Соедините имя функции | Функция ссылки | Средняя (обратная) функция |
|---|---|---|---|
'normal' | 'identity' | f (μ) = μ | μ = Xb |
'binomial' | 'logit' | f (μ) = журнал (μ / (1–μ)) | μ = exp (Xb) / (1 + exp (Xb)) |
'poisson' | 'log' | f (μ) = журнал (μ) | μ = exp (Xb) |
'gamma' | -1 | f (μ) = 1/μ | μ = 1 / (Xb) |
'inverse gaussian' | -2 | f (μ) = 1/μ2 | μ = (Xb) –1/2 |
H hat matrix задан в терминах матрицы данных X и диагональная матрица веса W:
H = X (XTWX) –1XTWT.
W имеет диагональные элементы wi:
где
g является функцией ссылки отображение yi к xib.
производная функции ссылки g.
V является функцией отклонения.
μi является i th среднее значение.
Диагональные элементы Hii удовлетворяют
где n является количеством наблюдений (строки X), и p является количеством коэффициентов в модели регрессии.
Рычаги наблюдения, i является значением i th диагональ, называют h ii матрицы шляпы H. Поскольку суммой значений рычагов является p (количество коэффициентов в модели регрессии), наблюдение, i может быть рассмотрен выбросом, если его рычаги существенно превышают p/n, где n является количеством наблюдений.
Расстояние Повара Di наблюдения i
где
дисперсионный параметр (оцененный или теоретический).
ei является линейной невязкой предиктора, , где
g является функцией ссылки.
yi является наблюдаемым ответом.
xi является наблюдением.
предполагаемый вектор коэффициентов.
p является количеством коэффициентов в модели регрессии.
hii является i th диагональный элемент Матрицы Шляпы H.
Отклонение модели M1 является дважды различием между логарифмической правдоподобностью той модели и влажной моделью, MS. Влажная модель является моделью с максимальным количеством параметров, которые могут быть оценены. Например, если существуют наблюдения n y i, i = 1, 2..., n, с потенциально различными значениями для X i Tβ, то можно задать влажную модель параметрами n. Позвольте L (b, y) обозначают максимальное значение функции правдоподобия для модели. Затем отклонение модели M1
где b 1 является предполагаемыми параметрами для модели M1 и b S, предполагаемые параметры для влажной модели. Отклонение имеет распределение хи-квадрат с n – степени свободы p, где n является количеством параметров во влажной модели, и p является количеством параметров в модели M1.
Если M1 и M2 являются двумя различными обобщенными линейными моделями, то припадок моделей может быть оценен путем сравнения отклонений D 1 и D 2 из этих моделей. Различие отклонений
Асимптотически, это различие имеет распределение хи-квадрат со степенями свободы v, равный количеству параметров, которые оцениваются в одной модели, но фиксируются (обычно в 0) в другом. Это равно различию в количестве параметров, оцененных в M1 и M2. Можно получить p - значение для этого теста с помощью 1 - chi2cdf(D,V), где D = D 2 – D 1.
Матрица условий T t (p + 1) матричные условия определения в модели, где t является количеством условий, p является количеством переменных предикторов и +1 счетом на переменную отклика. Значение T(i,j) экспонента переменной j в термине i.
Например, предположите, что вход включает три переменных предиктора AB, и C и переменная отклика Y в порядке ABC, и Y. Каждая строка T представляет один термин:
[0 0 0 0] — Постоянный термин или прерывание
[0 1 0 0] B; эквивалентно, A^0 * B^1 * C^0
[1 0 1 0] — A*C
[2 0 0 0] — A^2
[0 1 2 0] — B*(C^2)
0 в конце каждого термина представляет переменную отклика. В общем случае вектор-столбец из нулей в матрице условий представляет положение переменной отклика. Если у вас есть переменные прогноза и переменные отклика в матрице и вектор-столбце, то необходимо включать 0 для переменной отклика в последнем столбце каждой строки.
Указания и ограничения по применению:
Когда вы подбираете модель при помощи fitglm или stepwiseglm, следующие ограничения применяются.
Генерация кода не поддерживает категориальные предикторы. Вы не можете снабдить обучающими данными в таблице, которая содержит логический вектор, символьный массив, категориальный массив, массив строк или массив ячеек из символьных векторов. Кроме того, вы не можете использовать 'CategoricalVars' аргумент пары "имя-значение". Чтобы включать категориальные предикторы в модель, предварительно обработайте категориальные предикторы при помощи dummyvar прежде, чем подбирать модель.
Link, Derivative, и Inverse поля 'Link' аргументом пары "имя-значение" не могут быть анонимные функции. Таким образом, вы не можете сгенерировать код с помощью обобщенной линейной модели, которая была создана с помощью анонимных функций в ссылках. Вместо этого задайте функции для компонентов ссылки.
Для получения дополнительной информации смотрите Введение в Генерацию кода.
LinearModel | NonLinearModel | fitglm | plotPartialDependence | stepwiseglm
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.