회귀분석/이론

회귀분석 이론 2

학위논문통계 2013. 3. 20. 01:33

 

이제는 가장 간단한 가상적인 데이터를 사용하여 지난번 이야기한 작업이 실제로 어떻게 이루어지는 구체적으로 보기로 하죠.

 

일단 설문대상자는 3명(그래서 3차원 공간에서 여러분이 직접 그림을 그려봐도 가능합니다), 그리고 종속변수는 이직의도인데 이건 7점 Liker형으로 하고, 그래서 값은 1에서 7까지 나올 수 있고, 독립변수는 학력, 그래서 취하는 값는 1, 2, 3 세 개만 있는 것으로 했습니다.

 

그래서 가상적 데이터를 표로 표시하면

 

id

Y:

이직의도

X:학력

표준화된

이직의도 Y

표준화된

이직의도 X

Yhat

잔차

(y-yhat)

1

2.00

1.00

-1.00

-1.00

3.00

-1

2

6.00

2.00

1.00

0.00

4.00

2

3

4.00

3.00

0.00

1.00

5.00

-1

 

 

 

 

 

위 표에서 앞의 두 개의 칸 Y와 X가 원래 데이터입니다. 그 옆에 표준화된 Y와 X는 표준화된 회귀분석을 돌리기 위해 SPSS 내부에서 새로 만든 데이터고요.

 

원래 Y의 평균은 4, 표준편차는 2, 원래 X의 평균은 2, 표준편차는 1입니다. 그래서 원래 Y와 X에서 평균을 빼고 표준편차로 나누면 그 옆에 있는 표준화된 Y와 표준화된 X 데이터를 구할 수 있습니다.

 

하여간 Y=b0+b1X라는 모형을 세우고 회귀분석을 하죠. 그 결과는 아래 표와 같습니다.

 

독립변수

비표준 회귀계수

비표준 표준오차

표준회귀계수

t 값

p 값

상수

2

3.742

.

0.535

0.687

학력

1

1.732

0.5

0.577

0.667

모형통계량

R

R2

수정 R2

F 값

p 값

0.5

0.25

-0.5

0.333

0.667

 

아래 모형 통계량에서 F 값에 해당하는 p 값은 t 값의 p 값과 동일하게 0.667로 나왔죠. 즉 하나의 독립변수가 들어가는 경우 이 t 검증이나 F 검증은 같습니다. 다시하면 확인해보면 t의 제곱은 F가 된다는 이야기를 기초통계학에서 봤지요. 그럼 확인해보죠. t 값은 0.577 그래서 0.577^2하면 0.333이 나옵니다.

 

또한 학력과 이직의도간의 상관분석을 하면 상관계수를 구하면 상관계수는 0.5로 표준화 회귀계수와 같고, 상관계수의 p 값도 0.667로 같게 나옵니다. 즉 독립변수가 하나가 들어가면 상관계수 분석이랑 결과가 똑 같습니다. (독립변수가 하나인 경우 상관계수값과 표준회귀계수가 같다는 것은 결국 설명력이나 표준회귀계수 크기나 궁극적으로 비슷한 의미인 것 같고요...)

 

 

알통크기가 보수적이라는 논문에서 위계적 회귀분석으로 조절변수을 검증하기 위해 교호항 알통크기*소득수준을 만들어 2 단계 블록을 설정하고 추가적 설명력에 대한 F 검증을 하였는데 이거 할 필요가 없다는 것이죠. 이 경우 교호항 하나만 넣었으니 그냥 처음부터 교호항을 독립변수로 집어넣고 돌린 t 검증 결과와 같습니다. 그러나 두 번째 블록에서 두 개 이상의 변수를 집어 넣으면 이때 나오는 F 값은 처음부터 독립변수에 집어서 나오는 t 값과 다릅니다. 잘 기억이 안나시는 분은 모형통계량의 F 검증의 의미를 다시 보시기 바랍니다.

 

 

 

우리의 모형은

 

이직의도=bo+b1*학력

 

이고 데이터를 적용시켜 b0와 b1을 알아봤더니

 

이직의도=2.0+1.0*학력

 

으로 나왔습니다.

 

학력이 한 단위, 즉 고졸에서 전문대졸, 전문대 졸에서 고졸로 학력이 한 단계 상승할 때 마다 Likert 7점 척도에서 평균적으로 이직의도가 1.0 증가하는 것으로 나왔습니다. 그러나 이 상승은 유의적이지 않는 것으로 나왔죠. 왜냐하면 p 값이 0.667이라서 0.05보다 크기 때문에 유의적인 상승이라 할 수 없습니다.

 

그리고 Y와 추정된 식 Y hat=2*1.0*학력 간의 상관계수는 0.5로 나왔고, 이 상관계수의 제곱인 결정계수는 0.5의 제곱인 0.25로 나왔습니다. 여기서 상관계수 0.5는 Y와 Y hat 두 개의 변수로 상관분석을 하여 나온 상관계수와 일치합니다. 왜냐하면 독립변수가 하나인 경우 결국 우리는 Y와 X의 선형관계의 보는 것이니까 상관분석의 상관계수랑 정의가 완전히 일치합니다.

 

 

하여간 이건 데이터 표에서 두 번째 칸인 원래 데이터 Y와 다섯 번째 칸인 Yhat 간의 상관계수를 구한 것입니다.

 

이 Yhat은 추정된 식에서 학력값을 일일이 집어 넣은 것입니다. 예를 들어 첫 번째 설문응답자의 경우 Y는 의직의도가 2.0이고 학력은 1 즉 고졸이하 학력자입니다. 그래서 고졸이하 학력자의 평균 이직의도를 구해보면 2.0+1.0*1을 하면 Y hat 값 3이 나옵니다. 이 이야기는 어떤 사람의 학력이 고졸이하이면 우리는 이 사람의 이직의도가 3 정도되겠구나 추측한다는 것이죠. 그러나 이 추측은 상당히 틀리죠. 이렇게 실제값과 추측한 값의 차이를 잔차라고 한다는 것이죠.

 

하여간 모형식에서 나온 값을 추정하여 넣은 값이 다섯 번째 칸의 값이고요. 그리고 이 사람과 고졸학력자의 평균적인 이직의도값의 차이 Y-Y hat이 바로 잔차(residual)가 됩니다. 이 잔차가 작아야 이 모형이 데이터에 잘 적합되었다고 할 수 있습니다.

 

결정계수는 0.25로 나왔는데 이건 이직의도의 전체 변동 중 학력이라는 독립변수가 설명하는 변동의 정도가 25%이고 아직 나머지 75%는 이 모형에서 전혀 설명하지 못하고 있다는 이야기입니다.

 

그럼 이 이야기는 뭘 이야기하는 것일까요?

 

먼저 차이 분석에서 분산분석의 F 검증을 한다고 했는데 평균을 차이를 보는 분석에서 왜분산분석이라는 이름을 붙였을까요?

 

이런 생각을 해보죠. 학생들의 점수를 생각해보죠, 왜 학생들이 점수는 하나의 값으로 나오지 않고 학생마다 각각 다른 값들이 나올까요?

 

이렇게 하나의 값으로 나오지 않는다는 것은 무얼 의미하는 것일까요? 여기에는 어떤 이유가 있다는 이야기죠. 즉 학생들이 점수의 퍼짐을 설명하는 요인, 즉 독립변수들이 존재한다는 것입니다. 거기에서는 과목에 따른 학생 개인의 능력이 있을 수 있고, 성별이 있을 수 있고, 또 집안의 소득, 교육열 등 다양하게 있을 수 있습니다. 이런 요인들 때문에 학생들이 성적이 일정한 하나의 값으로 나오지 않는다는 것이죠. 그럼 우리가 이런 점수들의 변동을 설명하는 독립변수를 넣으면 학생들이 성적 변동이 줄어 들겁니다. 만약 성별에 따른 학생의 수학 점수 차이가 뚜렷하다면

 

학생들 수학 점수의 변동=성별이 설명하는 변동+성별이 설명하지 못하는 변동

 

이렇게 나눠질 수 있다는 것이죠. 이 성별이 설명하는 변동은 기본적으로 남학생 집단의 평균 수학 점수와 여학생 집단의 평균 수학 점수간의 차이(정확하게는 제곱)입니다.

 

그럼 회귀분석에서 보죠, 이직의도 Y의 변동을 먼저 살펴보죠. 이 경우 이직의도의 평균을 빼서 생각하는 것이 좋습니다. 그러면 이직의도 Y 값은 평균 4를 빼면 -2, 2, 0이 됩니다.

 

이 생각은 자주 나옵니다. 우리가 2차원 공간이나 3차원 공간에서 타원이나 럭비공 같은 물체가 45% 각도로 삐딱하게 있다고 하면 일단 편하게 작업하기 위해 원점으로 가져오고, 그 다음 타원과 럭비공을 45% 내려서 x, y, x 축과 일치하게 만듭니다. 이런 생각은 수학에서 매우 중요하고 통계학 고급 이론을 이해하는 데 결정적인 요소 중 하나입니다. 행렬 공부하시면 알게 됩니다.

 

그래서 Y의 평균을 0이라고 하면

 

Y의 변동=Y의 분산=y(1)^2+y(2)^2+y(3)^2= (-2)^2+2^2+0^2=4

 

이게 Y의 변동입니다.

 

그럼 독립변수 학력이 설명하는 변동을 구해보면

 

0.5((-1)^2+0^2+1^2)=1

 

이 됩니다.

 

이건 표준화된 회귀계수 0.5를 사용하고 학력의 변수에는 학력의 평균 2을 뺀 값을 집어 넣은 것입니다. 즉 0+0.5*학력인데 학력에도 이직의도와 마찬가지로 평균을 빼서 집어 넣습니다. 자세한 과정은 알 필요가 없고요.

 

그럼

 

Y의 변동 4=학력이 설명하는 변동 1+학력이 설명하지 못하는 잔차 변동 3

 

 

으로 나눠집니다. 그래서 분산이 쪼개지는 형태로 분석한다고 해서 분산분석이라는 말을 합니다.

 

그럼 Y의 변동 y(1)^2+y(2)^2+y(3)^2을 보면 마치 3차원 공간에서 직선의 길이 공식과 같죠. 그리고 이 변동이 두 개의 변동의 합, 즉 Y 변동은 독립변수가 설명하는 변동+설명하지 못한 변동 이런 식으로 나눠지는데 이건 직각 삼각형의 피타고라스 정리와 비슷합니다.

 

즉,

 

빗변^2=밑변^2+높이^2

 

입니다.

 

이 빗변의 제곱이 Y의 변동, 즉 Y의 분산이고, 밑변의 제곱이 설명변수 학력이 설명하는 변동, 높이의 제곱이 설명변수 학력이 여전히 설명 못하는 변동, 즉 잔차의 변동이 됩니다.

 

이걸 통계학에서는

 

SST+SSR+SSE 

라고 표시하고 분산분석에서는 다른 용어들,

 

TSS=BSS+WSS (맞나? 확인하려니 좀 귀찮네요, 통계학 책에 한번 찾아 보세요.)

 

등으로도 표시합니다.

 

뭘로 표시하던 결국 아이디어는 같습니다. 관심있는 현상의 전체 변동을 여기에 영향을 미치는, 차이를 가져오게 하는 요인들의 변동 그리고 이걸로 설명이 안되는 변동으로 나눈다는 것이죠.

 

 

그리고 결정계수는

 

결정계수=밑변^2 / 빗변^2

 

로 되고 기본적으로 F 값은

 

F 값= 밑변^2 / 높이^2

 

이 됩니다. F에서 높이와 밑변을 사용하는 이유는 직각이 성립하게 때문입니다. 자세히는 알 필요가 없습니다.

 

 

앞에서 설명한 것을 그림으로 나타내면 다음과 같습니다. 이 경우 꼭지점이 Y의 값(y1, y2, y3)가 되고 밑의 직선은 학력=(1, 2, 3)의 연장선이라 보시면 됩니다. 그림에 있는 기호는 신경 끄세요. 적당한 그림을 못찻아서요. 회귀분석이나 아노바 책에서 자주보는 그림입니다.

 

 

 

 

 

 

 

 

  

 

이 그림을 보면 종속변수의 값 (y1, y2, y3)을 독립변수가 나타내는 직선상에 수직으로 떨어뜨립니다. 이걸 Projection 이라고 합니다. 거기서 b*독립변수의 b 값을 구해냅니다. 이게 회귀분석에서 구한 b의 값입니다. 이렇게 수직으로 떨어뜨림으로서 우리의 종속변수 (y1, y2, y3))와 설명변수간의 차이를 최소하 하려는 것입니다. 즉 종속변수와 설명변수간의 거리를 최소하 하는 것이죠. 그래서 최소제곱추정(LSE: Least Square estimate)라고 합니다.

 

수학적으로 조금 더 엄밀하게 말하면 Y를 독립변수 X들이 span 하는 공간에 projection 한다고 합니다. 그래서

 

Xb=Y hat=PY 여기서 P는 projection에 해당하는 행렬이 됩니다.

 

 

너무 어렵나요? 한번 우리의 데이터를 가지고 3차원 공간에서 한번 그리려고 노력해보세요. 그래서 이해가 되면 회귀분석에 대해 굉장한 자신감이 붙을 수 있습니다.

 

 

 

 

 

'회귀분석 > 이론' 카테고리의 다른 글

회귀분석이론 4  (0) 2013.03.26
회귀분석이론3  (0) 2013.03.21
회귀분석 이론을 좀더1  (0) 2013.03.19