Нелинейный класс модели регрессии
Объект, включающий данные тренировки, образцовое описание, диагностическую информацию и адаптированные коэффициенты для нелинейной регрессии. Предскажите образцовые ответы с методами feval
или predict
.
Создайте объект NonLinearModel
с помощью fitnlm
.
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
Диагностика
Диагностическая информацияЭто свойство доступно только для чтения.
Диагностическая информация для модели, заданной как таблица. Диагностика может помочь идентифицировать выбросы и влиятельные наблюдения. 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 , является вектором подходящих значений ответа. |
Типы данных: table
DFE
— Степени свободы для ошибкиЭто свойство доступно только для чтения.
Степени свободы для ошибки (невязки), равняйтесь количеству наблюдений минус количество предполагаемых коэффициентов, заданных как положительное целое число.
Типы данных: double
Fitted
— Подходящие значения ответа на основе входных данныхЭто свойство доступно только для чтения.
Адаптированные (предсказанные) значения на основе входных данных, заданных как числовой вектор. fitnlm
пытается сделать Fitted
максимально близко к данным об ответе.
Типы данных: single | double
Formula
— Информация моделиNonLinearFormula
Это свойство доступно только для чтения.
Информация модели, указанная как объект NonLinearFormula
.
Отобразите формулу подобранной модели mdl
при помощи записи через точку.
mdl.Formula
Iterative
— Информация о подходящем процессеЭто свойство доступно только для чтения.
Информация о подходящем процессе, заданном как структура со следующими полями:
InitialCoefs
— Начальные содействующие значения (вектор beta0
)
IterOpts
— Опции включены в аргумент пары "имя-значение" Options
для fitnlm
.
Типы данных: struct
LogLikelihood
— Регистрируйте вероятностьЭто свойство доступно только для чтения.
Регистрируйте вероятность образцового распределения в значениях ответа, заданных как числовое значение. Среднее значение адаптировано из модели, и другие параметры оцениваются как часть образцовой подгонки.
Типы данных: single | double
ModelCriterion
— Критерий образцового сравненияЭто свойство доступно только для чтения.
Критерий образцового сравнения, заданного как структура с этими полями:
AIC
— Критерий информации о Akaike. AIC = –2*logL + 2*m
, где logL
является loglikelihood и 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
MSE
— Среднеквадратическая ошибкаЭто свойство доступно только для чтения.
Среднеквадратическая ошибка, заданная как числовое значение. Среднеквадратическая ошибка является оценкой отклонения остаточного члена в модели.
Типы данных: single | double
NumCoefficients
— Количество коэффициентов моделиЭто свойство доступно только для чтения.
Количество коэффициентов в подобранной модели, заданной как положительное целое число. NumCoefficients
совпадает с NumEstimatedCoefficients
для объектов NonLinearModel
. NumEstimatedCoefficients
равен степеням свободы для регрессии.
Типы данных: double
NumEstimatedCoefficients
— Количество предполагаемых коэффициентовЭто свойство доступно только для чтения.
Количество предполагаемых коэффициентов в подобранной модели, заданной как положительное целое число. NumEstimatedCoefficients
совпадает с NumCoefficients
для объектов NonLinearModel
. NumEstimatedCoefficients
равен степеням свободы для регрессии.
Типы данных: 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
PredictorNames
— Имена предикторов раньше соответствовали моделиЭто свойство доступно только для чтения.
Имена предикторов раньше соответствовали модели, заданной как массив ячеек из символьных векторов.
Типы данных: cell
Residuals
— Невязки для подобранной моделиЭто свойство доступно только для чтения.
Невязки для подобранной модели, заданной как таблица, которая содержит одну строку для каждого наблюдения и столбцов, описанных в этой таблице.
Столбец | Описание |
---|---|
Raw | Наблюдаемый минус подходящие значения |
Pearson | Необработанные невязки, разделенные полностью среднеквадратическая ошибка (RMSE) |
Standardized | Необработанные невязки разделены на их предполагаемое стандартное отклонение |
Studentized | Необработанная невязка, разделенная на независимую оценку остаточного стандартного отклонения. Невязка для наблюдения i разделена на оценку ошибочного стандартного отклонения на основе всех наблюдений кроме наблюдения i. |
Используйте plotResiduals
, чтобы создать график невязок. Для получения дополнительной информации смотрите Невязки.
Строки, не используемые в подгонке из-за отсутствующих значений (в ObservationInfo.Missing
) или исключенные значения (в ObservationInfo.Excluded
), содержат значения NaN
.
Чтобы получить любой из этих столбцов как вектор, индексируйте в свойство с помощью записи через точку. Например, получите необработанный вектор невязок r
в модели mdl
:
r = mdl.Residuals.Raw
Типы данных: table
ResponseName
— Имя переменной откликаЭто свойство доступно только для чтения.
Имя переменной отклика, заданное как вектор символов.
Типы данных: char
RMSE
— Среднеквадратическая ошибкаЭто свойство доступно только для чтения.
Среднеквадратическая ошибка, заданная как числовое значение. Среднеквадратическая ошибка является оценкой стандартного отклонения остаточного члена в модели.
Типы данных: single | double
Robust
— Устойчивая подходящая информацияЭто свойство доступно только для чтения.
Устойчивая подходящая информация, указанная как структура со следующими полями:
Поле | Описание |
---|---|
WgtFun | Устойчивая функция взвешивания, такая как 'bisquare' (см. robustfit ), |
Tune | Значение задало для настройки параметра (может быть [] ), |
Weights | Вектор весов используется в итоговой итерации устойчивой подгонки |
Эта структура пуста, если fitnlm
не создал модель с помощью устойчивой регрессии.
Типы данных: struct
Rsquared
— Значение R-squared для моделиЭто свойство доступно только для чтения.
Значение R-squared для модели, заданной как структура с двумя полями:
Ordinary
— Обычный (неприспособленный) R-squared
Adjusted
— R-squared, настроенный для количества коэффициентов
Значение R-squared является пропорцией полной суммы квадратов, объясненных моделью. Обычное значение R-squared относится к свойствам SSR
и SST
:
Rsquared = SSR/SST = 1 – SSE/SST
,
где SST
является полной суммой квадратов, SSE
является суммой квадратичных невязок, и SSR
является суммой квадратов регрессии.
Для получения дополнительной информации смотрите Коэффициент детерминации (R-Squared).
Чтобы получить любое из этих значений как скаляр, индексируйте в свойство с помощью записи через точку. Например, получите настроенное значение 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
VariableInfo
— Информация о переменныхЭто свойство доступно только для чтения.
Информация о переменных, содержимых в Variables
, заданном как таблица с одной строкой для каждой переменной и столбцов, описана в этой таблице.
Столбец | Описание |
---|---|
Class | Переменный класс, заданный как массив ячеек из символьных векторов, такой как 'double' и 'categorical' |
Range | Переменный диапазон, заданный как массив ячеек векторов
|
InModel | Индикатор которого переменные находятся в подобранной модели, заданной как логический вектор. Значением является true , если модель включает переменную. |
IsCategorical | Индикатор категориальных переменных, заданных как логический вектор. Значением является true , если переменная является категориальной. |
VariableInfo
также включает любые переменные, которые не используются, чтобы соответствовать модели как предикторам или как ответ.
Типы данных: table
Имена переменных
Имена переменныхЭто свойство доступно только для чтения.
Имена переменных, заданных как массив ячеек из символьных векторов.
Если подгонка основана на таблице или наборе данных, это свойство обеспечивает имена переменных в таблице или наборе данных.
Если подгонка основана на матрице предиктора и векторе отклика, VariableNames
содержит значения, заданные аргументом пары "имя-значение" 'VarNames'
подходящего метода. Значением по умолчанию 'VarNames'
является {'x1','x2',...,'xn','y'}
.
VariableNames
также включает любые переменные, которые не используются, чтобы соответствовать модели как предикторам или как ответ.
Типы данных: cell
Переменные
Входные данныеЭто свойство доступно только для чтения.
Входные данные, заданные как таблица. Variables
содержит и предиктор и значения ответа. Если подгонка основана на таблице или массиве набора данных, Variables
содержит все данные из массива набора данных или таблицы. В противном случае Variables
является таблицей, составленной из матрицы входных данных X
и ответ векторный y
.
Variables
также включает любые переменные, которые не используются, чтобы соответствовать модели как предикторам или как ответ.
Типы данных: table
coefCI | Доверительные интервалы содействующих оценок нелинейной модели регрессии |
coefTest | Линейный тест гипотезы на нелинейных коэффициентах модели регрессии |
disp | Отобразите нелинейную модель регрессии |
feval | Оцените нелинейный прогноз модели регрессии |
подгонка | (Не Рекомендуемый) Подходящая нелинейная модель регрессии |
plotDiagnostics | Постройте диагностику нелинейной модели регрессии |
plotResiduals | Постройте невязки нелинейной модели регрессии |
plotSlice | График срезов через подходящую нелинейную поверхность регрессии |
предсказать | Предскажите ответ нелинейной модели регрессии |
случайный | Моделируйте ответы для нелинейной модели регрессии |
Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).
Соответствуйте нелинейной модели регрессии для автоматического пробега на основе данных carbig
. Предскажите пробег среднего автомобиля.
Загрузите выборочные данные. Создайте матричный X
, содержащий измерения для лошадиной силы (Horsepower
) и вес (Weight
) каждого автомобиля. Создайте векторный y
, содержащий значения ответа в милях на галлон (MPG
).
load carbig
X = [Horsepower,Weight];
y = MPG;
Соответствуйте нелинейной модели регрессии.
modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ...
b(4)*x(:,2).^b(5);
beta0 = [-50 500 -1 500 -1];
mdl = fitnlm(X,y,modelfun,beta0)
mdl = Nonlinear regression model: y ~ b1 + b2*x1^b3 + b4*x2^b5 Estimated Coefficients: Estimate SE tStat pValue ________ _______ ________ ________ b1 -49.383 119.97 -0.41164 0.68083 b2 376.43 567.05 0.66384 0.50719 b3 -0.78193 0.47168 -1.6578 0.098177 b4 422.37 776.02 0.54428 0.58656 b5 -0.24127 0.48325 -0.49926 0.61788 Number of observations: 392, Error degrees of freedom: 387 Root Mean Squared Error: 3.96 R-Squared: 0.745, Adjusted R-Squared 0.743 F-statistic vs. constant model: 283, p-value = 1.79e-113
Найдите предсказанный пробег среднего значения автоматическим. Поскольку выборочные данные содержат немного недостающие (NaN
) наблюдения, вычислите среднее значение с помощью nanmean
.
Xnew = nanmean(X)
Xnew = 1×2
103 ×
0.1051 2.9794
MPGnew = predict(mdl,Xnew)
MPGnew = 21.8073
H hat matrix задан с точки зрения матрицы данных X и якобиевский матричный J:
Здесь f является нелинейной образцовой функцией, и β является вектором коэффициентов модели.
Матрица Шляпы H
H = J (JTJ) –1JT.
Диагональные элементы Hii удовлетворяют
где n является количеством наблюдений (строки X), и p является количеством коэффициентов в модели регрессии.
Рычаги являются мерой эффекта конкретного наблюдения относительно прогнозов регрессии из-за положения того наблюдения в течение входных параметров.
Рычаги наблюдения, i является значением i th диагональ, называют h ii матрицы шляпы H. Матрица шляпы H задана с точки зрения матрицы данных X:
H = X (X T X) –1XT.
Матрица шляпы также известна как матрицу проекции, потому что это проектирует вектор наблюдений y на вектор прогнозов , таким образом помещая "шляпу" на y.
Поскольку суммой значений рычагов является p (количество коэффициентов в модели регрессии), наблюдение, i может быть рассмотрен выбросом, если его рычаги существенно превышают p/n, где n является количеством наблюдений.
Для получения дополнительной информации смотрите Матрицу Шляпы и Рычаги.
Расстояние Повара Di наблюдения i
где
j th адаптированное значение ответа.
j th адаптированное значение ответа, где подгонка не включает наблюдение i.
MSE является среднеквадратической ошибкой.
p является количеством коэффициентов в модели регрессии.
Расстояние повара алгебраически эквивалентно следующему выражению:
где ei является i th невязка.
GeneralizedLinearModel
| LinearModel
| fitnlm
| nlinfit
| plotPartialDependence
| predict
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.