CompactLinearModel

Компактная линейная регрессионая модель

Описание

CompactLinearModel является компактной версией объекта модели полной линейной регрессии LinearModel. Поскольку компактная модель не хранит входные данные, используемые для соответствия модели, или информацию, относящуюся к процессу аппроксимации, CompactLinearModel объект потребляет меньше памяти, чем LinearModel объект. Вы все еще можете использовать компактную модель для предсказания откликов с помощью новых входных данных, но некоторых LinearModel функции объекта не работают с компактной моделью.

Создание

Создайте CompactLinearModel модель из полного, обученного LinearModel моделировать при помощи compact.

Свойства

расширить все

Оценки коэффициентов

Это свойство доступно только для чтения.

Ковариационная матрица оценок коэффициентов, заданная в виде p -by - p матрицы числовых значений. p - количество коэффициентов в подобранной модели.

Для получения дополнительной информации см. «Стандартные ошибки коэффициентов и доверительные интервалы».

Типы данных: single | double

Это свойство доступно только для чтения.

Имена коэффициентов, заданные как массив ячеек из векторов символов, каждый из которых содержит имя соответствующего термина.

Типы данных: cell

Это свойство доступно только для чтения.

Значения коэффициентов, заданные как таблица. Coefficients содержит по одной строке для каждого коэффициента и следующих столбцов:

  • Estimate - Расчетное значение коэффициента

  • SE - Стандартная ошибка оценки

  • tStat - t -статистический для теста, что коэффициент равен нулю

  • pValue - p -value для t -statistic

Использовать anova (только для линейной регрессионой модели) или coefTest для выполнения других тестов коэффициентов. Использовать coefCI чтобы найти доверительные интервалы оценок коэффициентов.

Чтобы получить любой из этих столбцов в качестве вектора, индексируйте в свойство с помощью записи через точку. Для примера получите вектор оцененного коэффициента в модели mdl:

beta = mdl.Coefficients.Estimate

Типы данных: table

Это свойство доступно только для чтения.

Количество коэффициентов модели, заданное как положительное целое число. NumCoefficients включает коэффициенты, которые установлены в нуль, когда члены модели неполного ранга.

Типы данных: double

Это свойство доступно только для чтения.

Количество оцененных коэффициентов в модели, заданное в виде положительного целого числа. NumEstimatedCoefficients не включает коэффициенты, которые равны нулю, когда члены модели неполного ранга. NumEstimatedCoefficients - степени свободы для регрессии.

Типы данных: double

Итоговая статистика

Это свойство доступно только для чтения.

Степени свободы для ошибки (невязки), равные количеству наблюдений минус количество оцененных коэффициентов, заданное в виде положительного целого числа.

Типы данных: double

Это свойство доступно только для чтения.

Логарифмическая правдоподобность значений отклика, заданная в виде числового значения, основанная на предположении, что каждое значение отклика следует нормальному распределению. Среднее значение нормального распределения является установленным (предсказанным) значением отклика, и отклонение является MSE.

Типы данных: single | double

Это свойство доступно только для чтения.

Критерий сравнения моделей, заданный как структура с этими полями:

  • 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

Это свойство доступно только для чтения.

Средняя квадратичная невязка ( невязки), заданная в виде числового значения.

MSE = SSE / DFE,

где MSE - средняя квадратичная невязка, SSE - сумма квадратичных невязок, а DFE - степени свободы.

Типы данных: single | double

Это свойство доступно только для чтения.

Корневая средняя квадратичная невязка ( невязки), заданная в виде числового значения.

RMSE = sqrt (MSE),

где RMSE - корневая средняя квадратичная невязка, а MSE - средняя квадратичная невязка.

Типы данных: single | double

Это свойство доступно только для чтения.

R-квадрат значения для модели, заданный как структура с двумя полями:

  • Ordinary - Обыкновенный (нескорректированный) R-квадрат

  • Adjusted - R-квадрат скорректирован для количества коэффициентов

R-квадратное значение является пропорцией общей суммы квадратов, объясненной моделью. Обыкновенное значение R-квадрат относится к SSR и SST свойства:

Rsquared = SSR/SST,

где SST - общая сумма квадратов, и SSR - регрессионная сумма квадратов.

Для получения дополнительной информации смотрите Коэффициент детерминации (R-Квадрат).

Чтобы получить одно из этих значений в виде скаляра, индексируйте в свойство с помощью записи через точку. Для примера получите скорректированное значение R-квадрат в модели mdl:

r2 = mdl.Rsquared.Adjusted

Типы данных: struct

Это свойство доступно только для чтения.

Сумма квадратичных невязок (остатков), заданная в виде числового значения.

Теорема Пифагора подразумевает

SST = SSE + SSR,

где SST - общая сумма квадратов, SSE - сумма квадратичных невязок, и SSR - регрессионная сумма квадратов.

Типы данных: single | double

Это свойство доступно только для чтения.

Регрессионная сумма квадратов, заданная в виде числового значения. Регрессионная сумма квадратов равна сумме квадратов отклонений подобранных значений от их среднего.

Теорема Пифагора подразумевает

SST = SSE + SSR,

где SST - общая сумма квадратов, SSE - сумма квадратичных невязок, и SSR - регрессионная сумма квадратов.

Типы данных: single | double

Это свойство доступно только для чтения.

Общая сумма квадратов, заданная в виде числового значения. Общая сумма квадратов равна сумме квадратов отклонений вектора отклика y от mean(y).

Теорема Пифагора подразумевает

SST = SSE + SSR,

где SST - общая сумма квадратов, SSE - сумма квадратичных невязок, и SSR - регрессионная сумма квадратов.

Типы данных: single | double

Метод подбора кривой

Это свойство доступно только для чтения.

Информация о надежной подгонке, заданная как структура с полями, описанными в этой таблице.

ОбластьОписание
WgtFunУстойчивая функция взвешивания, такая как 'bisquare' (см. 'RobustOpts')
TuneПостоянная настройки. Это поле пустое ([]), если WgtFun является 'ols' или если WgtFun - указатель на функцию для пользовательской весовой функции с константой настройки по умолчанию 1.
WeightsВектор весов, используемых в конечной итерации устойчивой подгонки. Это поле пустое для CompactLinearModel объект.

Эта структура пуста, если вы не подбираете модель с помощью устойчивой регрессии.

Типы данных: struct

Входные данные

Это свойство доступно только для чтения.

Информация о модели, заданная как LinearFormula объект.

Отобразите формулу подобранной модели mdl использование записи через точку:

mdl.Formula

Это свойство доступно только для чтения.

Количество наблюдений функции аппроксимации, используемой в подборе кривой, заданное в виде положительного целого числа. NumObservations - количество наблюдений, представленных в исходной таблице, наборе данных или матрице, минус любые исключенные строки (заданные с 'Exclude' аргумент пары "имя-значение") или строки с отсутствующими значениями.

Типы данных: double

Это свойство доступно только для чтения.

Количество переменных предиктора, используемых для подгонки модели, заданное в виде положительного целого числа.

Типы данных: double

Это свойство доступно только для чтения.

Количество переменных во входных данных, заданное как положительное целое число. NumVariables - количество переменных в исходной таблице или наборе данных или общее количество столбцов в матрице предиктора и векторе отклика.

NumVariables также включает любые переменные, которые не используются для подгонки модели в качестве предикторов или в качестве отклика.

Типы данных: double

Это свойство доступно только для чтения.

Имена предикторов, используемых для подгонки модели, заданные как массив ячеек из векторов символов.

Типы данных: cell

Это свойство доступно только для чтения.

Имя переменной отклика, заданное как вектор символов.

Типы данных: char

Это свойство доступно только для чтения.

Информация о переменных, содержащихся в Variables, заданная как таблица с одной строкой для каждой переменной и столбцами, описанными в этой таблице.

СтолбецОписание
ClassКласс переменной, заданный как массив ячеек из векторов символов, таких как 'double' и 'categorical'
Range

Переменная область значений, заданная как массив ячеек из векторов

  • Непрерывная переменная - Двухэлементный вектор [min, max], минимальное и максимальное значения

  • Категориальная переменная - Вектор различных значений переменных

InModelИндикатор того, какие переменные находятся в подобранной модели, заданный как логический вектор. Значение true если модель включает переменную.
IsCategoricalИндикатор категориальных переменных, заданный как логический вектор. Значение true если переменная категориальна.

VariableInfo также включает любые переменные, которые не используются для подгонки модели в качестве предикторов или в качестве отклика.

Типы данных: table

Это свойство доступно только для чтения.

Имена переменных, заданные как массив ячеек из векторов символов.

  • Если подгонка основана на таблице или наборе данных, это свойство задает имена переменных в таблице или наборе данных.

  • Если подгонка основана на матрице предиктора и векторе отклика, VariableNames содержит значения, заданные в 'VarNames' Аргумент пары "имя-значение" способа аппроксимации. Значение по умолчанию 'VarNames' является {'x1','x2',...,'xn','y'}.

VariableNames также включает любые переменные, которые не используются для подгонки модели в качестве предикторов или в качестве отклика.

Типы данных: cell

Функции объекта

расширить все

fevalСпрогнозируйте отклики линейной регрессионой модели, используя один вход для каждого предиктора
predictПредсказать отклики линейной регрессионой модели
randomСимулируйте отклики со случайным шумом для линейной регрессионой модели
anovaАнализ отклонения для линейной регрессионой модели
coefCIДоверительные интервалы оценок коэффициентов линейной регрессионой модели
coefTestЛинейный тест гипотезы на коэффициентах линейной регрессионой модели
partialDependenceВычисление частичной зависимости
plotEffectsПостройте графики основных эффектов предикторов в линейной регрессионой модели
plotInteractionПостройте эффекты взаимодействия двух предикторов в линейной регрессионой модели
plotPartialDependenceСоздайте график частичной зависимости (PDP) и отдельные графики условного ожидания (ICE)
plotSliceГрафик срезов через установленную линейную регрессионую поверхность
gatherСбор свойств модели машинного обучения с графический процессор

Примеры

свернуть все

Подгонка линейной регрессионой модели к данным и уменьшение размера полной, подобранной линейной регрессионой модели путем отброса выборочных данных и некоторой информации, связанной с процессом подгонки.

Загрузите largedata4reg набор данных, который содержит 15 000 наблюдений и 45 переменные.

load largedata4reg

Подбор линейной регрессионной модели к данным.

mdl = fitlm(X,Y);

Компактность модели.

compactMdl = compact(mdl);

Компактная модель отбрасывает исходные выборочные данные и некоторую информацию, связанную с процессом подгонки.

Сравните размер полной модели mdl и компактную модель compactMdl.

vars = whos('compactMdl','mdl');
[vars(1).bytes,vars(2).bytes]
ans = 1×2

       81537    11408528

Компактная модель потребляет меньше памяти, чем полная модель.

Расширенные возможности

.
Введенный в R2016a