
이번 강의에서는 지금까지 배웠던 Classification이나 Regression과는 조금 다른 주제를 다뤘다.
바로 Association Learning(연관 규칙 학습) 이다.
처음에는 "Association"이라는 단어만 보고 추천 시스템을 만드는 알고리즘 정도라고 생각했다.
하지만 강의를 듣고 보니,
Association Rule은 예측(Prediction) 을 위한 알고리즘이라기보다,
데이터 속에서 숨겨진 관계를 발견하는(Data Mining) 기법
이라는 점이 가장 큰 차이였다.
교수님은 가장 먼저 Association Learning을 이렇게 설명하셨다.
데이터 안에서 함께 자주 등장하는 패턴을 찾아내는 방법
예를 들어 마트에서 장을 본다고 생각해 보자.
우유
빵
버터
이 세 상품이 항상 같이 구매된다면
이 세 상품 사이에는 어떤 관계가 존재할 가능성이 높다.
Association Learning은
이처럼
"무엇이 무엇과 함께 나타나는가?"
를 찾아내는 것이 목표이다. Lecture-Note-06-Association.pdf
강의에서 가장 먼저 강조했던 부분도 이것이었다.
Bread
↓
Butter
라는 Rule이 있다고 해서
빵이 버터를 구매하게 만든 것은 아니다.
Association Rule은
단순히
함께 나타날 가능성이 높다
는 의미일 뿐이다.
즉,
Association은 Correlation이지
Causation은 아니다.
이 부분은 교수님이 여러 번 강조했던 내용이라 특히 기억에 남았다. Lecture-Note-06-Association.pdf
Association Rule은
아주 간단하게 표현된다.
X → Y
예를 들어
{Bread}
↓
{Butter}
라는 Rule은
빵을 구매한 사람이
버터도 함께 구매할 가능성이 높다는 의미이다.
하지만
이 Rule이 좋은 Rule인지는
아직 알 수 없다.
그래서
세 가지 기준이 등장한다.
첫 번째는
Support이다.
Support는
이 조합이 얼마나 자주 등장했는가
를 의미한다.
예를 들어
100개의 거래 중
Bread + Butter
가
30번 등장했다면
Support는 30%이다.
즉,
인기 있는 조합인지
먼저 확인하는 과정이다. Lecture-Note-06-Association.pdf
두 번째는
Confidence이다.
Confidence는
조금 더 의미 있는 값이다.
Bread를 구매한 사람 중
Butter도 구매한 사람은?
즉,
조건부 확률이다.
Support가
얼마나 자주 등장했는지를 본다면,
Confidence는
실제로 함께 구매될 가능성을 의미한다. Lecture-Note-06-Association.pdf
교수님은 여기서 재미있는 예시를 보여주셨다.
Toothbrush
↓
Milk
Confidence가
70%였다.
처음에는
"굉장히 좋은 Rule 아닌가?"
라고 생각했다.
그런데
알고 보니
원래 우유는 거의 모든 사람이 구매하는 상품이었다.
즉,
칫솔 때문이 아니라
우유 자체가 인기 상품이었던 것이다.
그래서
Confidence 하나만으로는
좋은 Rule인지 판단할 수 없다. Lecture-Note-06-Association.pdf
그래서 등장한 것이
Lift이다.
Lift는
정말로 두 상품이 서로 영향을 주는가?
를 측정한다.
교수님은
Lift가 1보다 크면
실제로 함께 구매되는 경향이 있다고 설명하셨다.
반대로
1보다 작으면
Confidence가 높더라도
의미 있는 Rule이 아닐 수 있다.
Confidence만 보고 판단하면
잘못된 결론을 내릴 수 있다는 점이 흥미로웠다. Lecture-Note-06-Association.pdf
그런데
Lift도 완벽하지 않았다.
교수님은
두 가지 경우를 비교해 주셨다.
첫 번째는
Lift는 매우 높지만
Support가 매우 낮은 경우.
이 경우는
우연히 발생한 패턴일 수도 있다.
반대로
Support는 매우 높지만
Lift가 1에 가까운 경우도 있다.
이 경우는
그 상품이 원래 많이 팔리는 상품일 뿐
특별한 연관성은 없다.
결국
Support
Confidence
Lift
세 가지를 함께 봐야 한다는 것이 이번 강의의 핵심이었다. Lecture-Note-06-Association.pdf
교수님은 Association Learning이
생각보다 다양한 분야에서 사용된다고 설명하셨다.
대표적으로
등이 있다.
특히 마트에서는
같이 구매되는 상품을 가까운 위치에 배치해
추가 구매를 유도한다고 한다.
우리가 마트에서
우유 옆에 시리얼,
맥주 옆에 과자가 있는 이유도
이런 데이터 분석 덕분이라는 점이 재미있었다. Lecture-Note-06-Association.pdf
여기까지는
Association Rule이 굉장히 쉬워 보였다.
하지만 교수님은
곧바로 하나의 질문을 던지셨다.
상품이 100,000개라면?
가능한 Rule의 개수는
상상하기 어려울 정도로 많아진다.
모든 조합을 전부 계산하는 것은
사실상 불가능하다.
그래서
효율적으로
필요한 조합만 찾아내는 알고리즘이 등장한다.
바로
Apriori Algorithm이다.
다음 강의에서는
Apriori가 어떻게
수많은 조합을 효율적으로 줄여가며
Frequent Itemset을 찾는지 정리해보려고 한다.