소셜로그인 중단 안내

계정으로 로그인 기능이 2023년 11월 16일 중단되었습니다.

아이보스 계정이 사라지는 것은 절대 아니며, 계정의 이메일 주소를 이용해 로그인 하실 수 있습니다.

▶️ 자세한 공지사항 확인

(우뇌) 뭐? 숫자 몇개만으로 예측이 가능하다고? : 마케터의 시선으로 데이터 분석하기 - 회귀분석

2023.11.10 17:09

우뇌

조회수 3,966

댓글 4



프롤로그 보러가기 : 프롤로그

1편 보러가기 : 상관관계 분석


안녕하세요, 우뇌 입니다.


오늘은 지난 시간에 이어 회귀분석에 대해 떠들어보겠습니다.


회귀분석은 정말 제가 애용하는 분석법입니다.


오늘도 식까지는 필요없고 개념이해와 GPT한테 던졌을 때 어떻게 나오는지 뭐 그런 것들을 가지고 놀아보겠습니다.


실습자체는 별도로 할 게 없죠?


raw 가지고 던지면 되는거니까요.


우리는 개념을 이해하고 어떤 경우에 어떻게 쓸지를 정해서 던지기만 하면 되는 겁니다.


아 물론 오류를 줄이기 위해서 전처리를 어느정도 할 줄은 아셔야 되는데, 이 부분은 뭐 기본적으로 엑셀은 잘들 하실거니까 깔꼼하게 정리하시면 될 겁니다.


자, 그럼 회귀분석에 대한 리뷰 지금부터 시작하겠습니다.


1. 개념


앞선 글을 읽어보셨다면 어느정도 가늠은 하시고 계실 것 같습니다.


회귀분석은 상관관계분석과는 조금 다른 분석법이라는 것을요.


저는 그냥 단언컨데, 회귀분석이 ‘데이터분석의 꽃’ 이라고 생각합니다.


물론, 만능이 아니지만, 글쎄요, 개념을 읽히고 업무에 이 부분을 투영해서 머릿속에 콱 박아두시면 적어도 적어도 데이터를 읽는 것에 대해서 틀릴 일은 거의 없다는 것 입니다.


그럼 먼저, 정의부터 알아보도록 하죠.


통계학에서 사용하는 자료 분석 방법 중 하나로, 여러 변수간의 관계성을 수학적으로 추정, 설명한다.


여기서 우리가 주목해야 될 부분은 무엇이냐면, 변수간 관계성을 “추정” 한다는 것 입니다.


네, 이것이 된다면, “예측” 이 가능해지는 것 입니다.


진짜 간단한 예를 들면, 지난 3년간의 일별 데이터를 가지고 광고비를 얼마를 부었을 때 예상되는 매출액, 그리고 프로모션을 N일간 진행했을 때 목표 매출의 필요 광고비를 추정해낼 수 있습니다.


방금 말씀드린 이거 뭔가 짜릿하지 않나요? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ


다시 말씀드리지만 앞서 말씀드린 예시는 “간단한” 예시 입니다.


우리의 상사, 경영진들은 이런 걸 미리 알고 기안하거나 제안서를 쓰라고 하잖아요?


그럴 때 쓸 수 있는 아주 간단한 방법이 바로 회귀분석 입니다.


제가 이걸 마스터한게 대략 2016년경이니까 아직까지도 현역으로 쏠쏠하게 쓰고 있습니다.


지금은 R이나 Python 이 아니라 GPT한테 던져서 시간이 더 남는 중이구요.


재밌죠?!


그러니까 해야겠어요? 안해야겠어요?!(험악)


자, 그러면 마저 개념을 심어드리도록 하겠습니다.


이전 글에서 말씀드렸던 것 처럼 그렇다면 인과관계를 증명해낼 수 있는가?!


네, 엄밀히 말해서는 인과관계를 명확히 증명해낼 수 없습니다.


이것은 어디까지나 모델 입니다, 그리고 인과관계가 이미 확실히 결정된 상태여야 가장 쓸모가 있습니다.


그렇다고 아예 쓸모가 없는 것은 아닙니다, 인과관계를 명확히 증명해내는 것은 회귀분석만으로는 어려울 수 있다는 말이 더 정확한 표현일 것인데요.


음, 그렇다면 제가 주로 쓰는 인과관계 증명기법은 무엇일까요?


저는 경로분석이라는 것을 주로 사용하는데요, 이건 뭐 아직 말씀드릴 수는 없고 조금 더 상위개념이라고 생각해 제가 준비하는 이 시리즈에서는 굳이 소개하지는 않을 것 입니다.


다시 돌아와서, 회귀분석을 하기 위해서는 그러면 어떻게 해야 하느냐?


일단, 회귀분석에 필요한 요소가 무엇인지를 아는 것이 대단히 중요합니다.


회귀분석에는 독립변수와 종속변수가 필요합니다.


이 두가지의 개념만 알면 회귀분석에 대해서 절반은 아는 것이에요.


그냥 정말 쉽게 딱 말씀을 드리면


  • 종속변수 : 예측하고 싶은 변수, 결과값
  • 독립변수 : 종속변수에 영향을 주는 지 알아보기 위한 변수(들)


즉, 종속변수는 결과값이고, 독립변수는 종속변수에 영향을 주는지 알아보는 것이라고 할 수 있지요.


제가 최근에 해본 회귀분석의 예를 들어보겠습니다.


저는 아파트 가격에 영향을 주는 것이 과연 무엇이 있을까? 에 대해서 궁금하더라구요.


그래서 역에서부터의 거리, 층수, 아파트 네임밸류(건설사별 순위), 금리, 미국 10년 채권금리, 국토부에 공개된 최근 거래량, 현재 매물로 나와있는 매물량, 최근 3개월 코스피 지수 변동, 최근 3개월 코스닥 지수 변동 등을 넣어서 분석해봤답니다.


네, 이렇게 했을 때 종속변수와 독립변수를 구분해보면


  • 종속변수 : 아파트 가격


  • 독립변수 : 역에서부터의 거리, 층수, 아파트 네임밸류(건설사별 순위), 금리, 미국 10년 채권금리, 국토부에 공개된 최근 거래량, 현재 매물로 나와있는 매물량, 최근 3개월 코스피 지수 변동, 최근 3개월 코스닥 지수 변동 등


이렇게 되겠죠?


기타 다른 방법들을 가지고 분석해서 최근에 오를 가능성이 높은 아파트를 하나 매입했습니다. (헤헿)


물론 더 크리티컬에 영향을 주는 어떤 제가 생각지도 못했던 요소들이 있겠죠? 뭐 정부의 성향이나 개입정도나, 규제의 강도라던가 등등


예측 불가능 한 것은 최대한 넣지 않는 것이 제 성격이라 뭐 그정도까지는 고려하지 않았습니다.


자, 이 예를 통해서 이제 조금은 이해가 되셨을까요?


상관분석과 다르게, 변수가 하나씩만 나오는 것이 아니라 독립변수를 여러개를 넣어서 확인할 수 있다는 장점이 있습니다.


참으로 재밌죠?


이런 면에서 봤을 때 지난 글의 상관관계분석보다 더 고차원이고, 다양하게 활용할 수 있다는 특징이 있죠.


물론 1:1로 놓고 회귀분석도 있습니다.


이번에는 회귀분석의 종류에 대해서 한 번 알아보겠습니다.


2. 종류


회귀분석은 역사도 깊고 활용도가 아주 높다 보니 그 종류 역시 대단히 많습니다.


일전에 소개한 목차에도 그 회귀분석법의 한 종류가 있습니다.


다시 보니 목차 순서도 좀 바뀌어야 될 수 있겠군요.


일단 오늘은 목차에 있던, 단순선형, 다중선형, 다항회귀 분석법에 대해서 말씀을 드리겠습니다.


2-1. 단순선형


단순선형 회귀분석은 앞서 말씀드렸던, 선형적(직선) 특성을 지니는 독립변수1개, 종속변수 1개 이렇게 두개만 가지고 플레이 하는 것을 말합니다.


예를 들면 광고비가 매출에 영향을 주는 것인가? 에 대해서 볼 수 있겠죠.


2-2. 다중선형


앞선 단순선형에서 딱 한가지가 바뀝니다. 바로 독립변수의 개수죠. 2개 이상의 여러 독립변수가 종속변수에 영향을 주는지 검증하는 방법이죠.


예를 들면 앞서 제가 언급한 아파트의 가격과 그 외 여러 변수들을 의미합니다.


근데 다시 말씀드리지만 어디까지나 “선형” 이거에요! 비선형인 경우는 다릅니다?


선형이 뭐였죠? 2차원 공간에서의 X축과 Y축! 즉 단순한 선형공간!


2-3. 다항회귀분석


개인적으로 제일 1등으로 좋아하는 분석법입니다. 이 분석법은 다중선형에서 업그레이드 해서, 비선형을 커버합니다.


비선형이 뭐였죠? 네, 선형이 아니다, 직선이 아니다. 즉, 곡선일 때 확인할 수 있는 것 입니다.


식을 보면 이해가 빨라지는데 독립변수의 제곱해서 종속변수의 결과를 예측하는 분석법입니다.


예를 들면, 시간에 따른 광고비 증액시 매출 변동폭을 예축할 때 주로 사용할 수 있겠네요.


2-4. 로지스틱 회귀분석


제가 2등으로 좋아하는 분석법입니다.


주로 CRM 분석을 할 때 활용하는데요.


종속변수가 이진적 특성을 나타낼 때 사용하는 분석법입니다.


제가 앞서 CRM 분석을 할 때 활용한다고 했죠?


예를 들면 광고비별 회원가입 여부 및 회원의 구매여부가 매출에 영향을 얼마나 주는가? 를 예측할 때 사용합니다.


여부 라고 하는 것은 했느냐, 안했느냐 이지선다기 때문에 충분히 활용할 수 있습니다.


종류가 엄청 많죠?ㅋㅋㅋㅋㅋㅋ


네, 그만큼 활용도가 참 많은 경우 입니다.


근데 종류가 많은 만큼 주의해야될 사항도 좀 있습니다.


3. 주의사항


선형회귀분석에 주로 발생하는 주의사항들입니다.


3-1. 선형성


일단 확실한 것은 선형성을 지니고 있는가에 대한 여부 입니다.


예를 들어, 유입과 회원가입간의 정보를 알고 싶다면, 둘은 과연 선형적 결과를 갖느냐? 에대해서 먼저 파악을 해봐야 됩니다.


그 파악을 하기 위해서는 미리 수치를 보고 깨닫는게 제일 좋지만, 그렇지 않으면 어쩐다?


raw 던져놓고, GPT에게 물어본다!


3-2. 독립성


당연한 이야기겠지만, 각 지표들은 또는 잔차들은 독립적이어야 합니다. 예를들면, 어제의 기온이 오늘의 기온에 영향을 주는 것 처럼 데이터가 시간순으로 연결되어 있으면 문제가 될 수 있습니다.


3-3. 정규성


아, 앞서서 잔차라는 말을 썼는데요, 잔차는 실제값과 예측한 값의 차이 입니다. 이 차이가 비슷한 패턴을 보여야 되는데, 만약 너무 차이가 크다면 이건 문제가 있는거죠.


3-4. 일관성


네, 정규성과 이어지는 부분인데, 이 잔차의 퍼짐 정도가 일정해야 합니다. 어떤 값들은 잔차가 매우 크고 다른 값들이 매우 작다면 이건 일관성이 없으므로 신뢰도가 굉장히 낮은게 되겠죠.


어렵죠? 네 어려워요.


이래서 정말 여러가지를 고려하면서 결과값 조차도 계속해서 의심하며 끊임없이 검증해야 됩니다.


비단 선형회귀분석에서만 발생하는 것이 아닙니다, 회귀분석모델의 여러 형태가 있는 것으로 앞서 말씀드렸지만, 비슷한 문제점들이 많이 발생합니다.


역시 이 모델 역시 인간이 만든 것이라 완벽할 수는 없겠네요.


4. 실습


아, 다시 원고를 읽어보니 정말 기네요.


실습은 정말 짧을건데 말이죠.


자, 그럼, 이제 실습을 한 번 해보도록 하겠습니다.


저번 예시할 때는 특정 브랜드의 Daily Report로 해서 그거 수치가리느라 솔직히 힘들었거든요?(아니 귀찮았어요 정확힠ㅋㅋㅋ)


그래서 이번에는 누구든 볼 수 있는 걸로다가 그냥 해볼게요.


그리고 최근에 제가 실제로 진행해서 열심히 이득을 봤던 걸로다가 진행 한 번 해보겠습니다.


먼저, 우리 데이터 전처리를 해봐야합니다.


데이터 전처리가 뭐냐?


말그대로 분석을 하기전에 펄펄히 날뛰고 있는 또는 정제되어있지 않은 RAW DATA를 적어도 분석하기 편하게끔 다듬어주는 작업이라고 생각해주시면 되세요.


이번 실습에 쓸 주제는 바로 아파트값의 추이를 통한 앞으로의 미래 예측 입니다.


오호라 부동산!!


최근에 정말 이걸 바탕으로 해서 미래예측을 해봤고, 긍정적인 시그널이 나왔던 아파트들로다가 매입을 진행해서 매입한 지 얼마 안됐는데도 가격이 뛰어가지고 신기해하는 중입니다. (돈이 많아서가 아니고요, 지금 그래서 통장에 500만원도 없더라고요, 돈 다 씀ㅜㅜ)


일단 저는 집값에 영향을 미치는 것을 기본적으로 몇가지가 있는 지 확인해봤습니다.


첫번째, 교육기관과의 거리

두번째, 대중교통과의 거리

세번째, 아파트의 면적

네번째, 아파트의 층

다섯번째, 창의 방향


대략 이정도로 하죠. 글의 서두에 다른 중요한 변수들을 많이 써놨지만?


국토교통부 실거래가 데이터를 지난 5년치 데이터를 모두 매매와 전세로 받고, 각각의 거래 내역들을 일별로 쭈우우욱 기입했습니다.

아, 저는 대도시 위주로 했습니다, 서울 포함.


네 뭐 대략 분석하는데 일주일이라는 시간이 소요되었고, 하루에 6시간씩 분석을 GPT와 했었네요, 여러분들께서는 저렇게까지 하시라는 말씀드리지 않구요.


그냥 기본적으로 어떻게 GPT로 회귀분석을 하는지를 보시면 될 것 같습니다.


오늘은 그냥 지방의 어느 한 브랜드 아파트로 지정해서 한 모습을 보여드릴게요.


그리고 저기 다섯가지 말고, 세가지로 줄여서 해보겠습니다.


평형과 가격 그리고 층수까지만! 더 늘어나면 이 글은 너무 길어집니다.


일단 다음과 같이 쭈욱 리스팅해주시고요.




참고로 저는 귀찮아서 3년치만 했는데, 5년치 이상으로 하실 수록 얘가 학습을 잘해요.


거기다 전세가에 대한 데이터도 없쥬?ㅋㅋㅋㅋㅋ


데이터가 많을 수록 분석하는데 유의미할 수 있거든요. (당연한 이야기지만, 모든 지표들은 한글명이아닌 영어여야 합니다, 그래야 우리가 볼 때 바로 직관적으로 알 수 있어요.)


이 글을 쓰는 동안 GPT-4가 업데이트가 되어서 이제는 그냥 파일만 던져도 바로 뽑아주네요?





네 프롬프트는 저렇게 입력하시는게 좋습니다.


이제부터는 이 친구에게 하나씩 명령을 내려보죠.


보시는 것 처럼 하나씩 하나씩 상세하게 순서대로 명령을 내리는게 중요합니다.




그래프 색까지도 정해주는 아주 디테일함이 필요해요.


그리고 중간에 카테고라이징도 쭈욱!


그러면 이녀석은 어떻게 하느냐?





네 이렇게 합니다!


아주 똑똑하네요! 여기까지는 그냥 아주 단순한 분석 정도라고 생각해주시면 됩니다.


이제 본격적으로 회귀분석을 시작해 볼까요?

제가 알고 싶은건 복합적으로 얼마나 어떻게 관련이 있는가? 바로 평형과 층수에 따라서!


그 영향력을 파악하고 싶었습니다.





오호….빠르다 이친구!


그렇다면 그래서 상승하냐 안하냐 이 요소들을 모두 감안해서!!!! 우리 그거를 찾아볼까요?!




오잉? 다 감소라고?


하지만, 위에서 보셨던 그래프에서는 올라가는 추이가 보이는 걸로 봤는데?!


뭐지!!!


자, 질문해봅시다!




아 최근 것으로 보니까 이렇게 나왔네요!


소형평수를 제외하고는 모두 다 상승하는 형태를 띄눈군요.


이렇게 GPT한테 던져놓고 그 답만 봐서는 안되는 거죠.


이상하다 최근 지표는 상승할 것으로 보였는데…..?


하면서 이제 다시 한 번 더 물어보면 스스로 그 오류를 인정하고 다시 결과값을 가져옵니다.


그래서 가격폭이 얼마나 되는지 궁금하더라구요.


저는 그 부분도 추가해봤습니다.




흑흑흑 그래요 이게 우리가 원했던 거죠.


이제 보기 좋게 한 번 만 더 갈무리를 해볼까요?




짜식, 아주 잘 해냈군요.


좋습니다.


아, 이 아파트는 제가 아무거나 무작위로 갔다가 찍은거기 때문에 ㅋㅋㅋㅋㅋㅋㅋ


어떤 특정 아파트를 이야기하는게 아님을 밝힙니다! 근데 저 아파트 실제로 저렇다는데 탐나는걸?


그렇지만 이제 남은 돈이 전혀 없으므로 하나 더 사는 것은 포기하는 걸로 하죠.


그리고 저는 투자를 부추기는 행위를 한 것이 아닙니다!!


투자는 개인의 몫이고, 투자를 권유한 것도 아니에요, 이렇게 사용할 수 있다 라는 것을 보여드린 겁니다.


5. 마치며


개념이 어렵죠? 실습은 GPT와 함께라면 정말 아~무것도 아닙니다.


모델의 개념을 이해하고 원리를 안다면 뭐가 필요한지에 대해서 바로바로 반영하여 대응할 수 있습니다.


그리고 중간에도 말했지만, 결과를 곧이곧대로 믿지 말고 의심하고 바라보며 수정을 요청하는 것도 매우 중요합니다.


아시겠죠?!


자, 그럼 저는 다음편으로 돌아오도록 하겠습니다.


이 개념들을 꼭 익혀서 실무에 적용 꼭 시켜보시길 바라겠습니다.


참고로 저는 실무에서는 주로 매출액을 예상할 때 사용합니다.


Daily Report 몇 년 치만 있다면 예측 하는 것은 정말 일도 아니죠.


그 때 우리는 얼만큼의 예산을 준비하면 되는지 또는 어떤 이벤트를 기획하면 좋은 지 등도 생각해낼 수 있죠.


그럼 이만 우뇌 드림.


데이터GPT
목록글쓰기
댓글 4
댓글 새로고침
로그인 후 더욱 많은 기능을 이용하세요!아이보스 로그인