brunch

매거진 AI UX

You can make anything
by writing

C.S.Lewis

by 조성봉 UXer Aug 01. 2023

와인 가격 예측

경제학자 올리 아센필터 교수의 상관관계 분석

프린스턴대학의 경제학 교수이자 와인 애호가이기도 했던 올리 아센필터(Orley Ashenfelter)는 왜 어떤 해는 와인 가격이 올라가고, 어떤 해는 내려가는 지 조사하기로 결심한다.


Bordeaux Wine Price vs. Age (Orley Ashenfelter)


그는 여러 가지 조사를 통해서 와인 가격에 영향을 미치는 변수들을 찾다가 일단 그 해 4~9월의 평균 기온과 여름철(8~9월)의 강우량이 와인 가격과 일정한 상관관계가 있다는 것을 발견한다.

Orley Ashenfelter

경제학자인 그가 사용한 방법은 회귀(regression) 분석이라고 하며, 통계학에서 사용하는 기초적인 방법 가운데 하나이다.


※ 상관 계수는 데이터의 흩어진 정도를 의미한다. 데이터가 너무 흩어져 있으면 의미있는 패턴을 발견하기 어렵다. 그러나 데이터가 (어떤 식으로든) 일정한 패턴을 보인다면 그로부터 이후에 벌어질 일들을 예측할 수도 있다. 상관 계수는 1 ~ -1 사이에 존재하며, 규치적으로 나열되어 있으면 1, 불규칙하면 0에 가까워진다. 방향(우상향, 우하향)에 따라 +와 - 값이 달라진다.
Boston University



그러나 이 두개의 변수만으로는 상관 계수(r)를 정확하게 예측하기 힘들었다. 그는 다시 여러가지 데이터를 분석하여 수확 전해 날씨(이전년도 10~3월의 강우량)이 와인 가격에 영향을 미친다는 점과 와인의 나이과 와인 가격 사이에 어느 정도 상관관계가 존재한다는 점도 밝혀낸다.

Corrected Bordeaux Wine Price for Age (worldwienweather.com)


이 4가지 변수(올해 강우량, 평균온도, 작년 강우량, 와인의 나이)가 와인 가격에 영향을 미친다는 점을 발견하자 실제 각 변수가 결과(와인 가격)에 어느 정도나 상관 계수를 가지는 지를 밝힌다.


그 결과는 다음과 같다.

 전해 10~3월 강우량  X 0.00117

 - 8, 9월 강우량  X 0.00386

 + 4~9월 평균 기온  X 0.616

 + 와인의 나이  X 0.02358

여기에 약간의 보정(bias = -12.145)을 더하자 거의 정확하게 와인 가격 변동을 설명할 수 있게 되었다.

Using Ashenfelter’s regression to create a Bordeaux wine index. (worldwineweather.com)


종합하자면 다음과 같이 정리할 수 있다.

Newton highlight


위의 방법을 선형회귀분석이라고 하며, 머신러닝에서 주로 사용하는 3가지 방법(Clustering, Classification, Regression)중 하나에 해당한다. 선형회귀(Linear Regression)은 일종의 가설이며,  Cost Function(실제 데이터와의 차이를 줄이기 위해 Cost를 계산), Gradient Descent(앞에서 계산한 Cost를 최소화시키는 작업), Simoid Function(결국 확률이라는 것은 0~1 사이에 존재하므로 Sigmoid 함수로 변환) 등의 과정을 거쳐서 '예측 가능한 결과'를 내놓는다.


올리 아센필더 교수가 와인 가격을 예측하기 위해서 만들었던 위 수식이 AI가 작동하는 기본적인 방식이다.



이를 UX에 대입해보자.


해당 사용자가 유튜브에서 어떤 콘텐츠를 보고 싶은 지를 어떻게 예측할 수 있을까?

1. 먼저 결과(보고 싶어하는 유튜브 콘텐츠)에 영향을 미치는 변수들을 파악해야 한다

2. 각 변수들의 상관관계를 분석해서 상관관계가 높은 변수로부터 신뢰할 수 있는 데이터를 확보해야 한다

3. 결과에 영향을 미치는 각 변수들의 상관계수를 알고리즘에 반영해야 한다

4. 마지막으로 보정이 필요하다면 이를 반영해야 한다.


오늘 아침 필자에게 유튜브 AI가 추천한 콘텐츠들. 내가 원하는 것과 상관관계가 매우 떨어지는 것도 있다.


지금 당장 이를 상세하게 조사하는 데에는 무리가 따르므로 일단 필자의 경험을 기반으로 풀어보겠다.

1 = 구독한 채널, 최근에 보던 영상(주제, 크리에이터), 최근의 화제(news gossip), 최근의 반응(좋아요, 관심없음, 채널추천안함) 등

2 = 최근에 보던 영상 주제(가장 높음) > 최근에 보던 크리에이터 > 관심없음한 콘텐츠 주제 > 채널추천안함한 콘텐츠 속성 > 최근의 화제 > 구독한 채널

3 = 상관계수는 생략

4 = 보정할 bias도 생략


학습 기반의 AI는 위와 같은 방법으로 AI 기본 모델을 만든 다음에도 후속 작업들이 필요하다

5. 필요한 데이터셋을 정의하고 이를 확보, 가공, 정제해야 한다.

6. 수집한 데이터로 AI 모델을 트레이닝시켜야 한다.

7. 트레이닝이 성공적으로 잘 됐는지 테스트를 해야 한다.

8. 준비 끝

(마치 너무 당연하다는 듯이 AI=머신러닝이라고 알고 계시는 분들도 있는데, AI에는 머신러닝/딥러닝 같은 학습 기반의 AI말고도 Symbolic AI라는 영역도 존재한다)


이 글을 통해서 AI/UX에 대해서 여러분들의 이해가 높아지셨기를 바란다. 아주 기초적인 지식을 전달한 것에 불과하며, 실제 이 AI 모델이 잘 작동하게 하기 위해서는 사용자들로부터 더 많은 데이터를 확보할 방안과 그 결과를 어떻게 돌려줄 수 있는 지에 대한 디자인, 그 둘간의 선순환 관계, AI/UX가 진일보하면서 필연적으로 필요하게 될 새로운 콘텐츠/기능에 대한 안배 등이 모색되어져야 한다.


다음 글에서는 선형회귀 분석의 문제점들을 어떻게 극복할 수 있는 지에 대해서 얘기할 것(?) 같다

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari