Регрессия является процессом того, чтобы подбирать модели к данным. Модели должны иметь числовые ответы. Для моделей с категориальными ответами смотрите Параметрическую Классификацию или Контролируемое Изучение Рабочего процесса и Алгоритмов. Процесс регрессии зависит от модели. Если модель является параметрической, регрессия оценивает параметры из данных. Если модель линейна в параметрах, оценка основана на методах от линейной алгебры, которые минимизируют норму вектора невязок. Если модель нелинейна в параметрах, оценка основана на методах поиска от оптимизации, которые минимизируют норму вектора невязок.
Эта таблица описывает который функция использовать в зависимости от типа проблемы регрессии.
| Компоненты модели | Результат регрессии | Функция, чтобы использовать |
|---|---|---|
| Непрерывные или категориальные предикторы, непрерывный ответ, линейная модель | Коэффициенты подобранной модели | 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)