CompactLinearModel
간소 선형 회귀 모델
설명
CompactLinearModel
은 전체 선형 회귀 모델 객체 LinearModel
의 간소한 버전입니다. 간소 모델은 모델을 피팅하는 데 사용되는 입력 데이터나 피팅 과정과 관련된 정보를 저장하지 않기 때문에 CompactLinearModel
객체는 LinearModel
객체보다 메모리를 적게 사용합니다. 간소 모델에서도 여전히 새 입력 데이터를 사용해서 응답 변수를 예측할 수 있지만 일부 LinearModel
객체 함수는 간소 모델에서 작동하지 않습니다.
생성
훈련된 전체 모델 LinearModel
에 compact
를 사용하여 CompactLinearModel
모델을 만듭니다.
속성
계수 추정값
읽기 전용 속성입니다.
계수 추정값으로 구성된 공분산 행렬로, 숫자형 값으로 구성된 p×p 행렬로 표현됩니다. p는 피팅된 모델에 포함된 계수의 개수로, NumCoefficients
로 주어집니다.
자세한 내용은 계수 표준 오차 및 신뢰구간 항목을 참조하십시오.
데이터형: single
| double
읽기 전용 속성입니다.
계수 이름으로, 각각 대응되는 항의 이름을 포함하는 문자형 벡터로 구성된 셀형 배열로 표현됩니다.
데이터형: cell
읽기 전용 속성입니다.
계수 값으로, 테이블로 지정됩니다. Coefficients
는 각 계수에 대해 하나의 행과 다음과 같은 열을 포함합니다.
Estimate
— 추정된 계수 값SE
— 추정값의 표준 오차tStat
— 계수가 0인지를 확인하는 귀무가설을 사용하는 양측 검정에 대한 t-통계량pValue
— t-통계량에 대한 p-값
계수에 대해 다른 검정을 수행하려면 anova
(선형 회귀 모델만 해당) 또는 coefTest
를 사용하십시오. 계수 추정값의 신뢰구간을 구하려면 coefCI
를 사용하십시오.
이러한 열 중 하나를 벡터로 얻으려면 점 표기법을 사용하여 속성의 요소를 참조하십시오. 예를 들어, 다음과 같이 모델 mdl
에서 추정된 계수 벡터를 얻습니다.
beta = mdl.Coefficients.Estimate
데이터형: table
읽기 전용 속성입니다.
모델 계수의 개수로, 양의 정수로 표현됩니다. NumCoefficients
는 모델 항이 랭크 부족인 경우 0으로 설정되는 계수를 포함합니다.
데이터형: double
읽기 전용 속성입니다.
모델에서 추정된 계수의 개수로, 양의 정수로 지정됩니다. NumEstimatedCoefficients
는 모델 항이 랭크 부족인 경우 0으로 설정되는 계수를 포함하지 않습니다. NumEstimatedCoefficients
는 회귀에 대한 자유도입니다.
데이터형: double
요약 통계량
읽기 전용 속성입니다.
오차(잔차)에 대한 자유도로, 관측값 개수에서 추정된 계수의 개수를 뺀 값과 같으며 양의 정수로 표현됩니다.
데이터형: double
읽기 전용 속성입니다.
응답 변수 값의 로그 가능도로, 각 응답 변수 값이 정규분포를 따른다는 가정에 기반하여 숫자형 값으로 지정됩니다. 정규분포의 평균은 피팅된(예측된) 응답 변수 값이고, 분산은 MSE
입니다.
데이터형: single
| double
읽기 전용 속성입니다.
모델 비교 기준으로, 다음 필드를 가진 구조체로 표현됩니다.
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
데이터형: struct
읽기 전용 속성입니다.
평균제곱오차(잔차)로, 숫자형 값으로 지정됩니다.
MSE = SSE / DFE,
여기서 MSE는 평균제곱오차이고, SSE는 오차제곱합이며, DFE는 자유도입니다.
데이터형: single
| double
읽기 전용 속성입니다.
RMS 오차(잔차)로, 숫자형 값으로 지정됩니다.
RMSE = sqrt(MSE),
여기서 RMSE는 RMS 오차이고 MSE는 평균제곱오차입니다.
데이터형: single
| double
읽기 전용 속성입니다.
모델에 대한 결정계수 값으로, 다음 두 필드를 가지는 구조체로 지정됩니다.
Ordinary
— 일반(수정되지 않은) 결정계수Adjusted
— 계수 개수에 대해 수정된 결정계수
결정계수 값은 모델로 설명되는 총 제곱합의 비율입니다. 일반 결정계수 값은 SSR
속성 및 SST
속성과 관련이 있습니다.
Rsquared = SSR/SST
,
여기서 SST
는 총 제곱합이고, SSR
은 회귀제곱합입니다.
자세한 내용은 결정계수(R 제곱) 항목을 참조하십시오.
이러한 값 중 하나를 스칼라로 얻으려면 점 표기법을 사용하여 속성을 참조하십시오. 예를 들어, 다음과 같이 모델 mdl
에서 수정된 결정계수 값을 구합니다.
r2 = mdl.Rsquared.Adjusted
데이터형: struct
읽기 전용 속성입니다.
오차(잔차)의 제곱합으로, 숫자형 값으로 지정됩니다. 모델이 관측값 가중치로 훈련된 경우, SSE
계산에서 제곱합은 가중치를 적용한 제곱합입니다.
절편을 포함하는 선형 모델의 경우, 피타고라스 정리는 다음을 의미합니다.
SST = SSE + SSR
,
여기서 SST
는 총 제곱합이고, SSE
는 오차제곱합이고, SSR
은 회귀제곱합입니다.
로버스트 선형 모델의 SST
계산에 대한 자세한 내용은 SST
항목을 참조하십시오.
데이터형: single
| double
읽기 전용 속성입니다.
회귀제곱합으로, 숫자형 값으로 지정됩니다. SSR
은 피팅된 값과 응답 변수의 평균 간 편차제곱합과 같습니다. 모델이 관측값 가중치로 훈련된 경우, SSR
계산에서 제곱합은 가중치를 적용한 제곱합입니다.
절편을 포함하는 선형 모델의 경우, 피타고라스 정리는 다음을 의미합니다.
SST = SSE + SSR
,
여기서 SST
는 총 제곱합이고, SSE
는 오차제곱합이고, SSR
은 회귀제곱합입니다.
로버스트 선형 모델의 SST
계산에 대한 자세한 내용은 SST
항목을 참조하십시오.
데이터형: single
| double
읽기 전용 속성입니다.
총 제곱합으로, 숫자형 값으로 지정됩니다. SST
는 mean(y)
와 응답 변수 벡터 y
간의 편차제곱합과 같습니다. 모델이 관측값 가중치로 훈련된 경우, SST
계산에서 제곱합은 가중치를 적용한 제곱합입니다.
절편을 포함하는 선형 모델의 경우, 피타고라스 정리는 다음을 의미합니다.
SST = SSE + SSR
,
여기서 SST
는 총 제곱합이고, SSE
는 오차제곱합이고, SSR
은 회귀제곱합입니다.
로버스트 선형 모델의 경우, SST
는 mean(y)
와 응답 변수 벡터 y
간의 편차제곱합으로 계산되지 않습니다. 이 속성은 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 | 변수 범위로, 벡터로 구성된 셀형 배열로 지정됩니다.
|
InModel | 피팅된 모델에 어느 변수가 포함되었는지에 대한 표시자로, 논리형 벡터로 지정됩니다. 모델이 변수를 포함하는 경우 값은 true 입니다. |
IsCategorical | 범주형 변수에 대한 표시자로, 논리형 벡터로 지정됩니다. 변수가 범주형인 경우 값은 true 입니다. |
VariableInfo
는 예측 변수 또는 응답 변수로 모델을 피팅하는 데 사용되지 않은 변수도 포함합니다.
데이터형: table
이 속성은 객체 생성 후에는 읽기 전용입니다.
변수의 이름으로, 문자형 벡터로 구성된 셀형 배열로 반환됩니다.
피팅이 테이블을 기반으로 하는 경우 이 속성은 해당 테이블에 있는 변수의 이름을 포함합니다.
피팅이 예측 변수 행렬과 응답 변수 벡터를 기반으로 하는 경우 이 속성은 피팅 방법의
VarNames
이름-값 인수로 지정된 값을 포함합니다.VarNames
의 디폴트 값은{'x1','x2',...,'xn','y'}
입니다.
VariableNames
는 예측 변수 또는 응답 변수로 모델을 피팅하는 데 사용되지 않은 변수도 포함합니다.
데이터형: cell
객체 함수
anova | Analysis of variance for linear regression model |
coefCI | Confidence intervals of coefficient estimates of linear regression model |
coefTest | Linear hypothesis test on linear regression model coefficients |
partialDependence | Compute partial dependence |
plotEffects | Plot main effects of predictors in linear regression model |
plotInteraction | Plot interaction effects of two predictors in linear regression model |
plotPartialDependence | Create partial dependence plot (PDP) and individual conditional expectation (ICE) plots |
plotSlice | Plot of slices through fitted linear regression surface |
gather | Gather properties of Statistics and Machine Learning Toolbox object from GPU |
예제
선형 회귀 모델을 데이터에 피팅한 다음, 표본 데이터 및 피팅 과정과 관련된 일부 정보를 버려서 피팅된 전체 선형 회귀 모델의 크기를 줄입니다.
15,000개의 관측값과 45개의 예측 변수가 포함된 largedata4reg
데이터 세트를 불러옵니다.
load largedata4reg
데이터에 선형 회귀 모델을 피팅합니다.
mdl = fitlm(X,Y);
모델을 간소화합니다.
compactMdl = compact(mdl);
간소 모델은 원본 표본 데이터 및 피팅 과정과 관련된 일부 정보를 버립니다.
전체 모델 mdl
과 간소 모델 compactMdl
의 크기를 비교합니다.
vars = whos('compactMdl','mdl'); [vars(1).bytes,vars(2).bytes]
ans = 1×2
85228 11412705
간소 모델이 전체 모델보다 메모리를 적게 사용합니다.
확장 기능
사용법 관련 참고 및 제한 사항:
자세한 내용은 Introduction to Code Generation 항목을 참조하십시오.
사용법 관련 참고 및 제한 사항:
CompactLinearModel
모델의 객체 함수는 GPU 배열을 완전히 지원합니다.
자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2016a에 개발됨
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)