exponenta event banner

CompactLinearModel

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

Описание

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

Создание

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

Свойства

развернуть все

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

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

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

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

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

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

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

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

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

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

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

  • SE - Стандартная погрешность оценки

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

  • pValue - p-значение для t-статистики

Использовать 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