Регрессия является процессом того, чтобы подбирать модели к данным. Модели должны иметь числовые ответы. Для моделей с категориальными ответами смотрите Параметрическую Классификацию или Контролируемое Изучение Рабочего процесса и Алгоритмов. Процесс регрессии зависит от модели. Если модель является параметрической, регрессия оценивает параметры из данных. Если модель линейна в параметрах, оценка основана на методах от линейной алгебры, которые минимизируют норму вектора невязок. Если модель нелинейна в параметрах, оценка основана на методах поиска от оптимизации, которые минимизируют норму вектора невязок.
Эта таблица описывает который функция использовать в зависимости от типа проблемы регрессии.
Компоненты модели | Результат регрессии | Функция, чтобы использовать |
---|---|---|
Непрерывные или категориальные предикторы, непрерывный ответ, линейная модель | Коэффициенты подобранной модели | fitlm . Смотрите линейную регрессию. |
Непрерывные или категориальные предикторы, непрерывный ответ, линейная модель неизвестной сложности | Подобранная модель и адаптированные коэффициенты | stepwiselm . Смотрите ступенчатую регрессию. |
Непрерывные или категориальные предикторы, ответ возможно с ограничениями, такими как неотрицательная или обобщенная линейная модель с целочисленным знаком | Подходящие обобщенные линейные коэффициенты модели | fitglm или stepwiseglm . См. обобщенные линейные модели. |
Непрерывные предикторы с непрерывным нелинейным ответом, параметризованной нелинейной моделью | Подходящие нелинейные коэффициенты модели | fitnlm . Смотрите нелинейную регрессию. |
Непрерывные предикторы, непрерывный ответ, линейная модель | Набор моделей от гребня, лассо или эластичной сетевой регрессии | lasso или ridge . Смотрите лассо и эластичную сетевую или гребенчатую регрессию. |
Коррелированые непрерывные предикторы, непрерывный ответ, линейная модель | Подобранная модель и адаптированные коэффициенты | plsregress . Смотрите частичные наименьшие квадраты. |
Непрерывные или категориальные предикторы, непрерывный ответ, неизвестная модель | Непараметрическая модель | fitrtree или fitrensemble . |
Категориальные предикторы только | ДИСПЕРСИОННЫЙ АНАЛИЗ | anova , anova1 , anova2 , anovan . |
Непрерывные предикторы, многомерный ответ, линейная модель | Подходящие многомерные коэффициенты модели регрессии | mvregress |
Непрерывные предикторы, непрерывный ответ, модель смешанных эффектов | Подходящие коэффициенты модели смешанных эффектов | nlmefit или nlmefitsa . См. модели Смешанных Эффектов. |
Существует несколько функций Statistics and Machine Learning Toolbox™ для выполнения регрессии. Следующие разделы описывают, как заменить вызовы более старых функций к новым версиям:
regress
в fitlm
Предыдущий синтаксис:
[b,bint,r,rint,stats] = regress(y,X)
где X
содержит столбец из единиц.
Текущий синтаксис:
mdl = fitlm(X,y)
где вы не добавляете столбец из единиц к X
.
Эквивалентные стоимости предыдущих выходных параметров:
b
— mdl.Coefficients.Estimate
bint
— coefCI
(mdl)
r
— mdl.Residuals.Raw
rint
— Нет никакого точного эквивалента. Попытайтесь исследовать mdl.Residuals.Studentized
найти выбросы.
stats
— mdl
содержит различные свойства, которые заменяют компоненты stats
.
regstats
в fitlm
Предыдущий синтаксис:
stats = regstats(y,X,model,whichstats)
Текущий синтаксис:
mdl = fitlm(X,y,model)
Получите статистику из свойств и методов mdl
. Например, смотрите mdl.Diagnostics
и mdl.Residuals
свойства.
robustfit
в fitlm
Предыдущий синтаксис:
[b,stats] = robustfit(X,y,wfun,tune,const)
Текущий синтаксис:
mdl = fitlm(X,y,'robust','on') % bisquare
Или использовать wfun
вес и tune
настройка параметра:
opt.RobustWgtFun = 'wfun'; opt.Tune = tune; % optional mdl = fitlm(X,y,'robust',opt)
Получите статистику из свойств и методов mdl
. Например, смотрите mdl.Diagnostics
и mdl.Residuals
свойства.
stepwisefit
в stepwiselm
Предыдущий синтаксис:
[b,se,pval,inmodel,stats,nextstep,history] = stepwisefit(X,y,Name,Value)
Текущий синтаксис:
mdl = stepwiselm(ds,modelspec,Name,Value)
или
mdl = stepwiselm(X,y,modelspec,Name,Value)
Получите статистику из свойств и методов mdl
. Например, смотрите mdl.Diagnostics
и mdl.Residuals
свойства.
glmfit
в fitglm
Предыдущий синтаксис:
[b,dev,stats] = glmfit(X,y,distr,param1,val1,...)
Текущий синтаксис:
mdl = fitglm(X,y,distr,...)
Получите статистику из свойств и методов mdl
. Например, отклонением является mdl.Deviance
, и сравнить mdl
против постоянной модели используйте devianceTest
(mdl)
.
nlinfit
в fitnlm
Предыдущий синтаксис:
[beta,r,J,COVB,mse] = nlinfit(X,y,fun,beta0,options)
Текущий синтаксис:
mdl = fitnlm(X,y,fun,beta0,'Options',options)
Эквивалентные стоимости предыдущих выходных параметров:
beta
— mdl.Coefficients.Estimate
r
— mdl.Residuals.Raw
covb
— mdl.CoefficientCovariance
mse
— mdl.mse
mdl
не обеспечивает якобиан (J
вывод . Основная цель J
должен был передать его в nlparci
или nlpredci
получить доверительные интервалы для предполагаемых коэффициентов (параметры) или прогнозы. Получите те доверительные интервалы как:
parci = coefCI(mdl) [pred,predci] = predict(mdl)