이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

LinearModel 클래스

슈퍼클래스: CompactLinearModel

선형 회귀 모델 클래스

설명

선형 회귀에 대한 훈련 데이터, 모델 설명, 진단 정보, 피팅된 계수로 구성된 객체입니다. predict 메서드 또는 feval 메서드를 사용하여 모델 응답 변수를 예측할 수 있습니다.

생성

mdl = fitlm(tbl) 또는 mdl = fitlm(X,y)는 각각 table형 배열 또는 dataset형 배열 tbl의 선형 모델을 생성하거나 데이터 행렬 X에 대한 응답 변수 y의 선형 모델을 생성합니다. 자세한 내용은 fitlm을 참조하십시오.

mdl = stepwiselm(tbl) 또는 mdl = stepwiselm(X,y)는 중요하지 않은 예측 변수를 제외한 채로 각각 table형 배열 또는 dataset형 배열 tbl의 선형 모델을 생성하거나 데이터 행렬 X에 대한 응답 변수 y의 선형 모델을 생성합니다. 자세한 내용은 stepwiselm을 참조하십시오.

입력 인수

모두 확장

입력 데이터로, 테이블 또는 dataset형 배열로 지정됩니다. modelspecformula인 경우, 이는 예측 변수와 응답 변수로 사용되는 변수를 지정합니다. 그렇지 않고 예측 변수와 응답 변수를 지정하지 않으면 기본적으로 마지막 변수가 응답 변수이고, 나머지 변수는 예측 변수가 됩니다.

예측 변수는 숫자형이거나 그룹화 변수 유형(예: 논리형 또는 categorical형) 중 하나일 수 있습니다(Grouping Variables 항목 참조). 응답 변수는 숫자형이거나 논리형이어야 합니다.

다른 열을 응답 변수로 설정하려면 ResponseVar 이름-값 쌍의 인수를 사용하십시오. 열 중 일부를 예측 변수로 사용하려면 PredictorVars 이름-값 쌍의 인수를 사용하십시오.

예측 변수로, nxp 행렬로 지정됩니다. 여기서 n은 관측값 개수이고 p는 예측 변수 개수입니다. X의 각 열은 하나의 변수를 나타내고, 각 행은 하나의 관측값을 나타냅니다.

기본적으로, 명시적으로 제거하지 않는 한 모델에 상수항이 있으므로 X에 1로 구성된 열을 포함시키지 마십시오.

데이터형: single | double | logical

응답 변수로, nx1 벡터로 지정됩니다. 여기서 n은 관측값 개수입니다. y의 각 요소는 X의 대응 행에 대한 응답 변수입니다.

데이터형: single | double | logical

속성

모두 확장

계수 추정값으로 구성된 공분산 행렬로, 숫자형 값으로 구성된 pxp 행렬로 지정됩니다. p는 피팅된 모델에 포함된 계수의 개수입니다.

계수 이름으로, 각 계수의 레이블을 포함하는 문자형 벡터로 구성된 셀형 배열로 지정됩니다.

계수 값으로, 테이블로 지정됩니다. Coefficients는 각 계수에 대해 하나의 행과 다음 열을 가집니다.

  • Estimate — 추정된 계수 값

  • SE — 추정값의 표준 오차

  • tStat — 계수가 0인지를 확인하는 검정에 대한 t 통계량

  • pValue — t 통계량에 대한 p-값

이러한 열 중 하나를 벡터로 얻으려면 점 표기법을 사용하여 속성의 요소를 참조하십시오. 예를 들어, mdl에 있는 추정된 계수 벡터는 다음과 같습니다.

beta = mdl.Coefficients.Estimate

coefTest를 사용하여 계수에 대한 다른 검정을 수행할 수 있습니다.

오차(잔차)에 대한 자유도로, 관측값 개수에서 추정된 계수 개수를 뺀 값과 같으며, 양의 정수 값으로 지정됩니다.

진단 값으로, 입력 데이터(tbl 또는 X)와 같은 개수의 행을 갖는 테이블로 지정됩니다. Diagnostics는 이상값 및 영향 관측값을 구하는 데 도움이 되는 진단 정보를 포함합니다. 많은 진단 정보는 단일 관측값을 삭제할 경우 피팅에 미치는 영향을 설명합니다. Diagnostics에는 다음 필드가 포함됩니다.

필드의미용도
LeverageHatMatrix의 대각선 요소Leverage는 관측값에 대해 예측된 값이 해당 관측값에 대해 관측된 값과 어느 정도 관계가 있는지를 나타냅니다. 값이 1에 가까우면 예측값이 다른 관측값의 영향을 거의 받지 않고 주로 해당 관측값에 의해 결정됨을 나타냅니다. 값이 0에 가까우면 피팅이 주로 다른 관측값에 의해 결정됨을 나타냅니다. P개의 계수와 N개의 관측값이 있는 모델의 경우, Leverage의 평균값은 P/N입니다. Leverage2*P/N보다 큰 관측값은 높은 지렛대값을 갖는 것으로 간주될 수 있습니다.
CooksDistance피팅된 값의 스케일링된 변화량에 대한 쿡의 측도(Cook's Measure)CooksDistance는 피팅된 값의 스케일링된 변화량에 대한 측정값입니다. CooksDistance가 평균 쿡의 거리(Cook's Distance)의 세 배보다 큰 관측값은 이상값일 수 있습니다.
Dffits관측값 개수에 대한 피팅된 값의 Delete-1 스케일링된 차분Dffits는 각 관측값에 대해 피팅된 값의 스케일링된 변화량으로, 피팅에서 해당 관측값을 제외시키면 얻게 됩니다. 절댓값이 2*sqrt(P/N)보다 큰 값은 영향점으로 간주될 수 있습니다.
S2_i관측값 개수에 대한 Delete-1 분산S2_i는 각 관측값을 차례로 삭제하여 구한 잔차 분산 추정값 집합입니다. 이러한 값을 MSE 속성의 값과 비교할 수 있습니다.
CovRatio관측값 개수에 대한 공분산 행렬식의 Delete-1 비율CovRatio는 전체 모델에 대한 공분산 행렬의 행렬식에 대해 각 관측값을 차례로 삭제한 계수 공분산 행렬의 행렬식 비율입니다. 1+3*P/N보다 크거나 1-3*P/N보다 작은 값은 영향점을 나타냅니다.
Dfbetas관측값 개수에 대한 공분산 추정값의 Delete-1 스케일링된 차분Dfbetas는 계수 추정값의 스케일링된 변화량으로 구성된 NxP 행렬로, 각 관측값을 차례로 제외시켜 얻을 수 있습니다. 절댓값이 3/sqrt(N)보다 큰 값은 관측값이 해당 계수에 미치는 영향이 크다는 것을 나타냅니다.
HatMatrix관측된 응답 변수에서 피팅된 응답 변수 값을 계산하기 위한 투영 행렬HatMatrixFitted = HatMatrix*Y를 충족하는 NxN 행렬이며, 여기서 Y는 응답 변수 벡터이고 Fitted는 피팅된 응답 변수 값으로 구성된 벡터입니다.

결측값(ObservationInfo.Missing에 있음)으로 인해 피팅에 사용되지 않은 행에는 NaN 값이 포함됩니다.

제외된 값(ObservationInfo.Excluded에 있음)으로 인해 피팅에 사용되지 않은 행에는 NaN 값이 포함되며, 다음과 같은 예외가 있습니다. Delete-1 진단 정보는 해당 관측값(행)이 피팅에 포함된 경우와 포함되지 않은 경우의 통계량을 의미합니다. 이러한 진단 정보는 중요한 관측값을 식별하는 데 도움이 됩니다.

입력 데이터를 기준으로 피팅된(예측된) 응답 변수 값으로, 숫자형 값으로 구성된 nx1 벡터로 지정됩니다. n은 입력 데이터에 포함된 관측값 개수입니다. predict를 사용하여 다른 예측 변수 값에 대한 예측값을 계산하거나 Fitted에 대한 신뢰한계를 계산할 수 있습니다.

모델 정보로, LinearFormula 객체 또는 NonLinearFormula 객체로 지정됩니다. 선형 또는 일반화 선형 회귀 모델을 피팅하는 경우 FormulaLinearFormula 객체입니다. 비선형 회귀 모델을 피팅하는 경우 FormulaNonLinearFormula 객체입니다.

응답 변수 값의 모델 분포에 대한 로그 가능도로, 숫자형 값으로 지정됩니다. 평균은 모델에서 피팅되고 다른 모수는 모델 피팅의 일부로 추정됩니다.

모델 비교 기준으로, 다음 필드를 가진 구조체로 지정됩니다.

  • AIC — 아카이케 정보 기준(AIC: Akaike's Information Criterion)으로 AIC = –2*logL + 2*m입니다. 여기서 logL은 로그 가능도이며 m은 추정된 모수의 개수입니다.

  • AICc — 표본 크기에 대해 수정된 아카이케 정보 기준으로 AICc = AIC + (2*m*(m+1))/(n–m–1)입니다. 여기서 n은 관측값 개수입니다.

  • BIC — 베이즈 정보 기준(BIC: Bayesian Information Criterion)으로 BIC = –2*logL + m*log(n)입니다.

  • CAIC — 일관된 아카이케 정보 기준으로 CAIC = –2*logL + m*(log(n)+1)입니다.

정보 기준은 동일한 데이터에 대한 여러 모델 피팅을 비교하는 데 사용할 수 있는 모델 선택 도구입니다. 이 기준은 복잡도(특히 모수 개수)에 대한 벌점을 포함하는 모델 피팅에 대한 가능도 기반 측정값입니다. 각기 다른 정보 기준은 벌점 형식으로 구분됩니다.

여러 모델을 비교할 때는 정보 기준 값이 가장 낮은 모델이 가장 적합한 피팅 모델입니다. 최적의 피팅 모델은 모델 비교에 사용된 기준에 따라 다를 수 있습니다.

기준 값 중 하나를 스칼라로 구하려면 점 표기법을 사용하여 속성을 참조하십시오. 예를 들어, 모델 mdl에서 AIC 값 aic는 다음과 같습니다.

aic = mdl.ModelCriterion.AIC

평균 제곱 오차(잔차)로, 숫자형 값으로 지정됩니다. 평균 제곱 오차는 MSE = SSE / DFE로 계산됩니다. 여기서 MSE는 평균 제곱 오차이고, SSE는 제곱 오차의 합이며, DFE는 자유도입니다.

모델 계수의 개수로, 양의 정수로 지정됩니다. NumCoefficients는 모델 항이 랭크 부족인 경우 0으로 설정되는 계수를 포함합니다.

모델에서 추정된 계수의 개수로, 양의 정수로 지정됩니다. NumEstimatedCoefficients는 모델 항이 랭크 부족인 경우 0으로 설정되는 계수를 포함하지 않습니다. NumEstimatedCoefficients는 회귀에 대한 자유도입니다.

피팅 함수가 피팅에 사용하는 관측값 개수로, 양의 정수로 지정됩니다. 이는 원래 테이블, 데이터셋 또는 행렬에 제공된 관측값 개수에서 제외된 행(Exclude 이름-값 쌍으로 설정됨) 또는 결측값이 있는 행을 뺀 값입니다.

모델을 피팅하는 데 사용되는 예측 변수의 개수로, 양의 정수로 지정됩니다.

입력 데이터에 포함되는 변수의 개수로, 양의 정수로 지정됩니다. NumVariables는 원래 테이블 또는 데이터셋에 포함된 변수의 개수이거나 피팅이 예측 변수 행렬 및 응답 변수 벡터를 기반으로 하는 경우 이러한 배열에 포함된 열의 총 개수입니다. 예측 변수 또는 응답 변수로 사용되지 않는 변수가 있는 경우 그러한 변수도 포함됩니다.

관측값 정보로, nx4 테이블로 지정됩니다. 여기서 n은 입력 데이터의 행 개수와 같습니다. ObservationInfo의 네 개 열에는 다음이 포함됩니다.

필드설명
Weights관측값 가중치. 디폴트 값은 모두 1입니다.
Excluded논리값으로, 1Exclude 이름-값 쌍을 사용하여 피팅에서 제외시키는 관측값을 나타냅니다.
Missing논리값으로, 1은 입력값에 있는 결측값을 나타냅니다. 결측값은 피팅에 사용되지 않습니다.
Subset논리값으로, 1은 해당 관측값이 제외되거나 누락되지 않으며, 따라서 피팅에 사용됨을 나타냅니다.

관측값 이름으로, 피팅에 사용되는 관측값의 이름을 포함하는 문자형 벡터로 구성된 셀형 배열로 지정됩니다.

  • 피팅이 관측값 이름을 포함하는 테이블 또는 데이터셋을 기반으로 하는 경우 ObservationNames는 이 이름을 사용합니다.

  • 그렇지 않은 경우 ObservationNames는 빈 셀형 배열입니다.

모델을 피팅하는 데 사용되는 예측 변수의 이름으로, 문자형 벡터로 구성된 셀형 배열로 지정됩니다.

피팅된 모델의 잔차로, 각 관측값에 대해 하나의 행과 다음 열을 포함하는 테이블로 지정됩니다.

필드설명
Raw관측값에서 피팅값을 뺀 값입니다.
Pearson원시 잔차를 RMSE로 나눈 값입니다.
Standardized원시 잔차를 잔차의 추정된 표준편차로 나눈 값입니다.
Studentized잔차를 잔차 표준편차에 대한 독립적인 추정값으로 나눈 값입니다. 관측값 i에 대한 잔차를 관측값 i를 제외한 모든 관측값을 기반으로 하는 오차 표준편차의 추정값으로 나누어 얻습니다.

이러한 열 중 하나를 벡터로 얻으려면 점 표기법을 사용하여 속성의 요소를 참조하십시오. 예를 들어, 모델 mdl에서 보통의 원시 잔차 벡터 r은 다음과 같습니다.

r = mdl.Residuals.Raw

결측값(ObservationInfo.Missing에 있음)으로 인해 피팅에 사용되지 않은 행에는 NaN 값이 포함됩니다.

제외된 값(ObservationInfo.Excluded에 있음)으로 인해 피팅에 사용되지 않은 행에는 NaN 값이 포함되며, 다음과 같은 예외 사항을 포함합니다.

  • raw는 관측값과 예측값 간의 차분을 포함합니다.

  • standardized는 일반적인 방식으로 표준화된 잔차입니다.

  • studentized는 표준화된 값과 일치합니다. 그 이유는 이 잔차가 잔차 표준편차의 추정값에 사용되지 않기 때문입니다.

응답 변수 이름으로, 문자형 벡터로 지정됩니다.

평균 제곱 오차(잔차)의 제곱근으로, 숫자형 값으로 지정됩니다. 평균 제곱 오차의 제곱근(RMSE)은 RMSE = sqrt(MSE)와 같습니다. 여기서 MSE는 평균 제곱 오차입니다.

로버스트 피팅 정보로, 다음 필드를 가지는 구조체로 지정됩니다.

필드설명
WgtFun로버스트 가중치 함수(예: 'bisquare')(robustfit 참조)
Tune모수 조정 시 지정되는 값([]일 수 있음)
Weights로버스트 피팅의 최종 반복에 사용되는 가중치로 구성된 벡터. 간소화된 CompactLinearModel 모델의 경우 이 필드는 비어 있습니다.

fitlm이 로버스트 회귀를 사용하여 모델을 생성하지 않으면 이 구조체는 비어 있습니다.

모델에 대한 결정계수 값으로, 구조체로 지정됩니다.

선형 모델 또는 비선형 모델의 경우, Rsquared는 다음과 같은 두 개의 필드를 갖는 구조체입니다.

  • Ordinary — 일반(수정되지 않은) 결정계수

  • Adjusted — 계수 개수에 대해 수정된 결정계수

일반화 선형 모델의 경우, Rsquared는 다음과 같은 다섯 개의 필드를 갖는 구조체입니다.

  • Ordinary — 일반(수정되지 않은) 결정계수

  • Adjusted — 계수 개수에 대해 수정된 결정계수

  • LLR — 로그 가능도 비율

  • Deviance — 이탈도

  • AdjGeneralized — 수정된 일반화 결정계수

결정계수 값은 모델로 설명되는 총 제곱합의 비율입니다. 일반 결정계수 값은 SSR 속성 및 SST 속성과 관련이 있습니다.

Rsquared = SSR/SST = 1 - SSE/SST.

이러한 값 중 하나를 스칼라로 얻으려면 점 표기법을 사용하여 속성을 참조하십시오. 예를 들어, mdl의 수정된 결정계수 값은 다음과 같습니다.

r2 = mdl.Rsquared.Adjusted

제곱 오차(잔차)의 합으로, 숫자형 값으로 지정됩니다.

피타고라스 정리는 다음을 의미합니다.

SST = SSE + SSR.

제곱의 회귀 합으로, 숫자형 값으로 지정됩니다. 제곱의 회귀 합은 평균과 피팅된 값 간의 편차에 대한 제곱합과 같습니다.

피타고라스 정리는 다음을 의미합니다.

SST = SSE + SSR.

총 제곱합으로, 숫자형 값으로 지정됩니다. 총 제곱합은 mean(y)과 응답 변수 벡터 y 간의 편차에 대한 제곱합과 같습니다.

피타고라스 정리는 다음을 의미합니다.

SST = SSE + SSR.

단계적 피팅 정보로, 다음 필드를 갖는 구조체로 지정됩니다.

필드설명
Start시작 모델을 나타내는 식
Lower하한 모델을 나타내는 식으로, 이 식의 항들은 모델에서 유지되어야 합니다.
Upper상한 모델을 나타내는 식. 모델은 Upper보다 더 많은 항을 포함할 수 없습니다.
Criterion단계별 알고리즘에 사용되는 기준(예: 'sse')
PEnter모수 값(예: 0.05)
PRemove모수 값(예: 0.10)
History피팅에서 수행하는 단계를 나타내는 테이블

History 테이블은 초기 피팅을 포함하여 각 단계에 대해 하나의 행과 다음 변수(열)를 가집니다.

필드설명
Action

이 단계 중에 수행되는 동작으로, 다음 중 하나입니다.

  • 'Start' — 첫 번째 단계

  • 'Add' — 항이 추가됨

  • 'Remove' — 항이 제거됨

TermName
  • 'Start' 단계: 시작 모델 사양

  • 'Add' 단계 또는 'Remove' 단계: 해당 단계로 이동된 항

Terms항 행렬(fitlmmodelspec 참조)
DF이 단계 이후의 회귀 자유도
delDF이전 단계에 비해 달라진 회귀 자유도의 변화량(항을 제거하는 단계의 경우 음수임)
Deviance해당 단계에서의 이탈도(잔차 제곱합)
FStat이 단계까지의 F 통계량
PValueF 통계량의 p-값

모델을 피팅하는 데 stepwiselm 또는 stepwiseglm을 사용하지 않으면 구조체는 비어 있습니다.

Variables에 포함된 입력 변수에 대한 정보로, 각 모델 항에 대해 하나의 행과 다음 열을 갖는 테이블로 지정됩니다.

필드설명
Class변수 클래스를 제공하는 문자형 벡터(예: 'double')
Range

변수 범위를 제공하는 셀형 배열:

  • 연속형 변수 — 최솟값과 최댓값으로 구성된, 요소를 2개 가진 벡터 [min,max]

  • 범주형 변수 — 고유한 변수 값으로 구성된 셀형 배열

InModel논리형 벡터. 여기서 true는 모델에 변수가 있음을 나타냅니다.
IsCategorical논리형 벡터. 여기서 true는 범주형 변수를 나타냅니다.

피팅에 사용되는 변수 이름으로, 문자형 벡터로 구성된 셀형 배열로 지정됩니다.

  • 피팅이 테이블 또는 데이터셋을 기반으로 하는 경우 이 속성은 해당 테이블 또는 데이터셋의 변수의 이름을 제공합니다.

  • 피팅이 예측 변수 행렬과 응답 변수 벡터를 기반으로 하는 경우 VariableNames는 피팅 방법의 VarNames 이름-값 쌍에 포함된 값입니다.

  • 그렇지 않은 경우 변수는 디폴트 피팅 이름을 갖습니다.

모델을 피팅하는 데 사용되는 데이터로, 테이블로 지정됩니다. Variables는 관측값과 응답 변수 값을 모두 포함합니다. 피팅이 table형 배열 또는 dataset형 배열을 기반으로 하는 경우 Variables는 해당 table형 배열 또는 dataset형 배열의 모든 데이터를 포함합니다. 그렇지 않은 경우 Variables는 입력 데이터 행렬 X와 응답 변수 벡터 y에서 생성되는 테이블입니다.

메서드

addTermsAdd terms to linear regression model
compactCompact linear regression model
dwtestDurbin-Watson test with linear regression model object
fit선형 회귀 모델 생성
plotScatter plot or added variable plot of linear regression model
plotAddedAdded variable plot of linear regression model
plotAdjustedResponseAdjusted response plot of linear regression model
plotDiagnosticsPlot observation diagnostics of linear regression model
plotResidualsPlot residuals of linear regression model
removeTermsRemove terms from linear regression model
stepImprove linear regression model by adding or removing terms
stepwise(Not Recommended) Create linear regression model by stepwise regression

상속된 메서드

anovaAnalysis of variance for linear regression model
coefCIConfidence intervals of coefficient estimates of linear regression model
coefTestLinear hypothesis test on linear regression model coefficients
fevalPredict responses of linear regression model using one input for each predictor
plotEffectsPlot main effects of predictors in linear regression model
plotInteractionPlot interaction effects of two predictors in linear regression model
plotSlicePlot of slices through fitted linear regression surface
predictPredict responses of linear regression model
randomSimulate responses with random noise for linear regression model

복사 의미 체계

값. 값 클래스가 복사 작업에 미치는 영향에 대한 내용은 객체 복사 (MATLAB) 항목을 참조하십시오.

예제

모두 축소

Hald 데이터의 선형 모델을 피팅합니다.

데이터를 불러옵니다.

load hald
X = ingredients; % Predictor variables
y = heat; % Response

데이터에 디폴트 선형 모델을 피팅합니다.

mdl = fitlm(X,y)
mdl = 
Linear regression model:
    y ~ 1 + x1 + x2 + x3 + x4

Estimated Coefficients:
                   Estimate      SE        tStat       pValue 
                   ________    _______    ________    ________

    (Intercept)      62.405     70.071      0.8906     0.39913
    x1               1.5511    0.74477      2.0827    0.070822
    x2              0.51017    0.72379     0.70486      0.5009
    x3              0.10191    0.75471     0.13503     0.89592
    x4             -0.14406    0.70905    -0.20317     0.84407


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 2.45
R-squared: 0.982,  Adjusted R-Squared 0.974
F-statistic vs. constant model: 111, p-value = 4.76e-07

범주형 예측 변수를 포함하는 테이블의 모델을 피팅합니다.

carsmall 데이터를 불러옵니다.

load carsmall

연속형 예측 변수 Weight, 범주형 예측 변수 Year, 응답 변수 MPG를 포함하는 테이블을 생성합니다.

tbl = table(MPG,Weight);
tbl.Year = categorical(Model_Year);

MPG의 피팅된 모델을 Year, Weight, Weight^2의 함수로 생성합니다. WeightWeight^2에 대한 낮은 차수 항이기 때문에 식에 명시적으로 포함시킬 필요가 없습니다. fitlm 함수는 Weight를 자동으로 포함시킵니다.

mdl = fitlm(tbl,'MPG ~ Year + Weight^2')
mdl = 
Linear regression model:
    MPG ~ 1 + Weight + Year + Weight^2

Estimated Coefficients:
                    Estimate         SE         tStat       pValue  
                   __________    __________    _______    __________

    (Intercept)        54.206        4.7117     11.505    2.6648e-19
    Weight          -0.016404     0.0031249    -5.2493    1.0283e-06
    Year_76            2.0887       0.71491     2.9215     0.0044137
    Year_82            8.1864       0.81531     10.041    2.6364e-16
    Weight^2       1.5573e-06    4.9454e-07      3.149     0.0022303


Number of observations: 94, Error degrees of freedom: 89
Root Mean Squared Error: 2.78
R-squared: 0.885,  Adjusted R-Squared 0.88
F-statistic vs. constant model: 172, p-value = 5.52e-41

fitlm은 범주형 변량 Year에 대해 두 개의 가변수(표시자)를 생성합니다. 가변수 Year_76은 모델 연도가 1976인 경우 값 1을 받고, 그렇지 않은 경우 값 0을 받습니다. 가변수 Year_82는 모델 연도가 1982인 경우 값 1을 받고, 그렇지 않은 경우 값 0을 받습니다. 연도 1970이 기준 연도입니다. 대응하는 모델은 다음과 같습니다.

로버스트 피팅 방법을 사용하여 선형 회귀 모델을 피팅합니다.

표본 데이터를 불러옵니다.

load hald

hald 데이터는 시멘트 조성물이 해당 시멘트의 경화 열에 미치는 영향을 측정합니다. 행렬 ingredients는 시멘트에 존재하는 네 가지 화학 성분의 조성 비율을 포함합니다. 배열 heat는 각 시멘트 표본에 대해 180일이 지난 후의 경화 열 값을 포함합니다.

데이터에 로버스트 선형 모델을 피팅합니다.

mdl = fitlm(ingredients,heat,'linear','RobustOpts','on')
mdl = 
Linear regression model (robust fit):
    y ~ 1 + x1 + x2 + x3 + x4

Estimated Coefficients:
                   Estimate      SE        tStat       pValue 
                   ________    _______    ________    ________

    (Intercept)       60.09     75.818     0.79256      0.4509
    x1               1.5753    0.80585      1.9548    0.086346
    x2               0.5322    0.78315     0.67957     0.51596
    x3              0.13346     0.8166     0.16343     0.87424
    x4             -0.12052     0.7672    -0.15709     0.87906


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 2.65
R-squared: 0.979,  Adjusted R-Squared 0.969
F-statistic vs. constant model: 94.6, p-value = 9.03e-07

세부 정보

모두 확장

알고리즘

주요 피팅 알고리즘은 QR 분해입니다. 로버스트 피팅의 경우, 알고리즘은 robustfit입니다.

대안

라소(Lasso) 또는 신축망(Elastic Net)을 사용하여 선형 회귀에서 중복된 예측 변수를 제거하려면 lasso 함수를 사용하십시오.

상관관계를 갖는 항이 있는 회귀를 능형 회귀(Ridge Regression)를 사용하여 정규화하려면 ridge 함수 또는 lasso 함수를 사용하십시오.

상관관계를 갖는 항이 있는 회귀를 부분 최소제곱을 사용하여 정규화하려면 plsregress 함수를 사용하십시오.

확장 기능

R2012a에 개발됨