본문 바로가기
데이터 분석/Analytics

[행동데이터분석] 조절효과 - 세분화, 상호작용, 비선형성

by 친절한 휘저씨 2024. 1. 17.

조절효과(moderation)의 (기술적) 정의는 매우 간단합니다. 두 예측 변수 사이의 곱셈 회귀 분석을 의미합니다. 조절효과를 통해 다음과 같은 행동학적 현상을 이해할 수 있습니다. 

 

- 세분화(segmentation)

- 상호작용(interaction)

- 비선형성(nonlinearity) (자기조절 self-moderation)



세분화

 

고객 세그먼트를 구축하는 것은 마케팅 분석, 더 넓게는 비즈니스 분석의 핵심 작업입니다. 예시로 ‘고객이 매장에 머무르는 시간’에 ‘놀이 공간’이 어떤 영향을 미쳤는지 알아봅시다. 인과관계 다이어그램을 기반으로 회귀분석을 수행하면 평균 인과 효과를 알 수 있습니다. 하지만 평균은 오해의 소지가 있으며 모집단의 세그먼트 사이에 존재하는 차이를 파악하지 못하게 합니다. 예를 들어 놀이 공간의 존재가 어린이를 동반하지 않은 고객보다 동반한 고객의 매장 이용 시간에 더 많은 영향을 미친다고 가정하는 것이 타당합니다. 

 

 

이것을 회귀로 설명한다면 단순히 위의 그림처럼 ‘어린이 동반 여부’를 ‘놀이 공간의 유무’와 같이 ‘매장에 머무른 시간’의 예측 변수로 포함하면 된다고 생각할 수도 있습니다. 이렇게 접근하면 회귀 분석을 수행할 때 각 변수를 독립적으로 검사합니다. 즉 ‘머무른 시간’에 대한 ‘놀이 공간 유무’의 계수는 수학적으로 어린이를 동반한 고객과 동반하지 않은 고객에 대한 효과의 가중 평균이 될 수밖에 없습니다. 따라서 분석에서 단순히 ‘어린이 동반 여부’를 변수로 추가하는 것만으로는 ‘어린이 동반 여부’와 ‘놀이 공간 유무’의 상호작용을 설명할 수 없습니다. 

 

바로 이럴 때 조절효과가 필요합니다. 아래 수식처럼 네 번째 계수를 추가하여 문제를 해결할 수 있습니다.

 

 

 

(C = 1, P= 1) 에 대한 방정식은 VisitDuration = βo + βp + βc + βi  가 되고 βi 를 조절하여 상호작용 효과를 설명할 수 있습니다. 

 

- C= 0 이면 놀이 공간을 만드는 영향은 (βo + βp) - (βo)) = βp 입니다.

- C = 1 이면 놀이 공간을 만드는 영향은 (βo + βc + βp + βi) - (βo + βc) = (βp + βi) 입니다. 

 

놀이 공간을 추가하면 어린이를 동반하지 않은 고객보다 어린이를 동반한 고객이 매장에 머무는 시간이 βi 분 더 길어집니다. 인과관계 다이어그램에서는 아래 그림처럼 표현되며, 여기서 ‘어린이 동반 여부’ 변수를 조절변수(moderator)라고 합니다. 

 

 

파이썬에서는 두 변수의 곱만 포함하면 개별 변수에 대한 계수도 계산이 됩니다.

 

 

 

결과는 해석은 다음과 같습니다.

 

- 놀이 공간 X 어린이 동반 X  매장 이용 시간은 20분(절편에 대한 계수, intercept) 입니다.

- 놀이 공간 O 어린이 동반 X  매장 이용 시간은 20 + 4 = 24분 입니다.

- 놀이 공간 X 어린이 동반 O  매장 이용 시간은 20 + 10 = 30분 입니다.

- 놀이 공간 O 어린이 동반 O  매장 이용 시간은 20 + 4 + 10 + 21 = 55분 입니다.  

 

놀이 공간의 유무는 어린이 동반 고객의 평균 매장 이용 시간에 큰 영향을 미치는 것을 알 수 있습니다. 



상호작용

 

앞에서 세분화를 나타낸 인과관계 다이어그램은 비대칭입니다. 그러나 회귀방정식은 완벽하게 대칭입니다. 즉 회귀방정식에서는 두 변수 중 어느 것이 조절변수고 어느 것이 조절’된’ 변수인지 나타나지 않습니다. 따라서 어떤 변수가 요인이고 어떤 변수가 조절변수인지 해석이나 관점에 따라 달라질 수 있습니다. 

 

 

개인의 특성, 비즈니스 또는 행동 변수가 있을 때 일반적으로 개인의 특성(예를 들어 자녀 유무)을 조절변수로 보고 그것을 기준으로 데이터를 세분화합니다. 반면에 2개의 개인 특성, 혹은 2개의 비즈니스 개입과 같은 동일한 유형의 두 변수 사이에 조절효과가 있다면 두 변수 사이에 비대칭성을 도입하는 것은 어렵습니다. 예를 들어 놀이 공간과 휴게 공간 여부가 모두 고객의 매장 이용 시간을 독립적으로 증가시킨다고 가정할 수 있지만 두 가지가 모두 있는 경우는 각 개별 효과를 합한 것보다 더 큰 효과가 있습니다. 이것을 상호작용(interaction)이라고 하며 위의 다이어그램처럼 표현할 수 있습니다. 상호작용은 ‘전체는 부분의 합보다 큰’ 상황을 나타냅니다.



비선형성

 

원인과 결과 사이의 관계가 선형적이지 않은 경우가 많습니다. 고객에게 이메일을 많이 보낼수록 제품 구매량은 증가할 수 있지만 그것이 꼭 비례해서 증가하지는 않을 수 있습니다. 이런 비선형의 관계는 제곱(2차항)이 취해진 설명변수를 추가함으로써 해결할 수 있습니다. 

 

 

 

 2차항을 추가하면 위의 그림처럼 회귀 정확도를 크게 향상시킬 수 있습니다. 설명변수로 추가한 2차항은 변수와 그 자체에 대한 상호작용을 의미합니다. 그래서 설명변수와 효과변수 사이의 비선형적 관계인과관계 다이어그램에서는 자기조절(self-moderation)로 재구성할 수 있습니다. 

 

 

파이썬에서는 Ⅰ() 함수를 사용하면 자기조절을 구현할 수 있습니다. 

 



조절효과 적용 시 고려할 점

 

조절효과 측정에 앞서, 먼저 조절되지 않은 평균 효과를 정확하게 측정하는데 집중하는 것이 좋습니다. 조절되지 않은 평균 효과가 충분히 크지 않다면 조절 효과를 측정해도 충분한 검정력을 갖기 쉽지 않을 수도 있기 때문입니다.

 

이후 조절효과를 측정하기 위해서는 하나의 변수에 조절효과를 가정하고 다른 변수를 포함하는 식으로 낚시 원정(fishing exdeition)을 해야 합니다. 예를 들어 범주형 변수가 숫자형 변수에 미치는 영향을 조절하고 싶다면 온전성 검사(sanity check)를 추천합니다. 온전성 검사는 관심 요인에 의해 정의된 집단 전체에서 관심 효과의 표준편차를 비교하는 것입니다. 표준편차가 실험군에서 유의미한 수준으로 높거나 또는 집단 사이에 표준편차가 서로 다를 경우에는 합리적인 확신을 갖고 낚시 원정을 진행할 수 있습니다. 표준편차가 집단 사이에 유사하면 조절효과가 없음을 의미합니다. 

 

 

조절효과를 구분/식별하는 요점은 규칙에 맞게 정확히 분류하는 것이 아니라 분석의 목표를 명확히 하는 것입니다. 데이터 분석가는 부지런하게 조절효과 분석을 하면서 더 깊이 문제를 파고들어야 합니다.

 

 

 

이 글은 <행동 데이터 분석> 책을 읽고 주요 내용과 제 생각을 정리한 글입니다.

Part 5 행동 데이터 분석을 위한 고급 도구

Chapter 11 조절효과 

 

 

반응형

댓글