1. 개요
연관규칙 분석은 여러 거래에서 어떤 품목들이 함께 나타나는 경향을 X→Y 꼴로 찾는 탐색적 데이터 마이닝 기법이다. 전체 거래 자료를 거래 집합이라 하며, 그 안의 각 거래는 한 번에 함께 기록된 품목들의 묶음이다. X는 규칙의 앞에 놓인 선행 품목 집합, Y는 뒤에 놓인 결과 품목 집합이고 둘은 서로 겹치지 않는다. 이는 인공지능·머신러닝·딥러닝의 넓은 체계 안에서 모형이 오차를 줄이며 학습하는 절차와 구별해 읽을 필요가 있다.
핵심은 규칙의 모양보다 지지도·신뢰도·향상도의 분모, Apriori의 가지치기 방향, 동시 발생과 시간 순서의 차이를 정확히 잡는 데 있다. 발견한 규칙을 추천에 쓸 때는 추천 랭킹의 탐색과 활용 균형과 추천 랭킹의 위치 편향과 자기 강화를, 결과의 안정성을 볼 때는 평판 점수의 표본 크기와 최근성 가중과 온라인 댓글의 선택 편향과 침묵 자료를 함께 떠올리면 분석의 한계를 놓치지 않게 된다.
2. 상세
2.1. 1. 거래 집합과 X→Y
전체 거래 집합을 D, 개별 거래를 T라고 하자. T는 같은 영수증이나 같은 사건 단위에 함께 기록된 품목들의 집합이다. 어떤 품목 집합 A의 support(A)는 D의 모든 거래 중 A를 전부 포함하는 거래의 비율이다. 따라서 X→Y는 “X가 들어 있는 거래에서 Y도 함께 발견되는 경향”을 표시한다. 화살표는 규칙을 읽는 방향이지, X가 시간상 먼저 일어났거나 Y를 일으켰다는 표시가 아니다.
2.2. 2. 세 척도는 분모가 다르다
- 지지도 =
support(X∪Y). 전체 거래를 기준으로 X와 Y가 함께 들어 있는 비율이다.
- 신뢰도 =
support(X∪Y) / support(X). X가 포함된 거래만 분모로 삼아 그중 Y까지 포함된 몫을 센다.
- 향상도 =
confidence(X→Y) / support(Y). X가 있을 때의 Y 비율을 Y의 평소 발생률과 견주어 본다.
예를 들어 100개 거래 중 X가 20개, Y가 60개, 둘이 함께 있는 거래가 15개라고 해 보자. 지지도는 0.15, X→Y의 신뢰도는 0.75이다. 그러나 Y는 원래 0.60의 비율로 나타나므로 향상도는 1.25이다. 높은 신뢰도만 보면 X가 Y를 강하게 설명하는 듯하지만, Y 자체가 흔해서 생긴 착시가 섞일 수 있는 것이다.
향상도가 1보다 크면 X가 있을 때 Y가 기본 발생률보다 더 많이 함께 나타났고, 1이면 두 집합이 독립인 기준과 같으며, 1보다 작으면 함께 나타나는 정도가 그 기준보다 낮다는 뜻이다. 이 값은 연관이나 예측 후보를 고르는 단서일 뿐이다. 원인과 결과를 입증하지 않으며, 함께 진열하거나 추천했을 때 매출이 늘어난다는 보장도 아니다.
2.3. 3. 방향을 뒤집을 때와 그대로일 때
Y→X로 바꾸면 신뢰도의 분모가 support(Y)로 바뀐다. 위 가정에서 역방향 신뢰도는 0.25이므로 0.75였던 정방향과 다르다. 반면 두 방향은 똑같은 X∪Y를 세므로 지지도는 모두 0.15이다. 향상도 역시 정방향에서는 0.75/0.60, 역방향에서는 0.25/0.20으로 모두 1.25이다. 즉 신뢰도는 화살표를 돌리면 달라질 수 있지만, 지지도·향상도의 값은 어느 집합을 앞에 놓아도 변하지 않는다.
2.4. 4. Apriori 가지치기의 방향
Apriori는 품목 조합을 무작정 모두 검사하지 않고 최소지지도를 이용해 후보를 줄인다. 품목 집합 A가 최소지지도에 미달했다면 A를 포함하는 더 큰 집합은 A보다 자주 나타날 수 없다. 그러므로 A의 모든 상위 조합을 계산 대상에서 제거할 수 있다.
그러나 이 논리를 거꾸로 쓰면 안 된다. 어떤 하위 집합이 빈발했다는 사실은 그것을 포함한 상위 집합도 빈발한다는 보장이 아니다. 빈발 하위집합은 상위 후보를 만드는 출발점일 뿐이고, 새 후보의 지지도는 거래 자료에서 다시 세어야 한다. 최소지지도를 높이면 후보와 계산량은 줄지만 드물게 나타나는 규칙을 놓칠 수 있으므로, 임곗값은 분석 목적과 자료 규모에 맞춘 설정값으로 보아야 한다.
2.5. 5. 동시 발생과 순차 패턴
일반 연관규칙은 같은 거래 안의 동시 발생을 본다. 한 거래에 X와 Y가 함께 있으면 규칙 계산에 들어가지만, 어느 것이 먼저였는지는 알 수 없다. 순차 연관분석은 이와 달리 동일한 대상의 여러 거래를 순서대로 묶어 t1의 A 뒤 t2의 B가 나타나는지 살핀다. 이때 t1<t2가 성립해야 하므로 누구의 기록인지 가리는 식별 열, 사건의 앞뒤를 정하는 시간 또는 차례, 매 거래에 든 품목 목록이 모두 필요하다.
따라서 고객 식별자가 없으면 서로 다른 사람의 사건을 한 흐름처럼 잘못 이을 수 있고, 시각·순서가 없으면 동시 발생과 선후 관계를 가를 수 없다. 순차 패턴에서 “A 다음 B”가 관찰되어도 A가 B의 원인이라고 결론낼 수는 없다.
3. 수능에서는 이렇게 나온다
먼저 자료의 분석 단위를 표시한다. 한 행이 하나의 거래이고 함께 든 품목만 세면 일반 연관규칙이다. 같은 대상의 여러 행을 시간순으로 이어야 하면 순차 패턴이며, 대상 식별자·시각 또는 순서·품목 열이 모두 있는지 확인한다.
다음으로 식의 분모를 적는다. 전체 거래면 지지도, X 포함 거래면 신뢰도, Y의 기본 발생률과 비교하면 향상도이다. 규칙을 뒤집은 선지에서는 신뢰도만 다시 계산하고, 같은 합집합의 지지도와 대칭적인 향상도는 유지되는지 본다. Apriori 선지는 “미달 하위집합에서 상위집합 제거” 방향만 성립하는지 점검한다.
마지막으로 결론의 범위를 제한한다. 임곗값, 표본 구성, 관찰 기간이 달라지면 발견 규칙도 달라질 수 있다. 특정 이용자나 구매자만 자료에 남는 선택 편향이 있으면 관찰되지 않은 집단까지 같은 패턴으로 일반화하기 어렵다. 연관을 인과나 판매 성과로 바꾸어 말하는 선지는 이 경계를 넘는다.
4. 헷갈리기 쉬운 것들
| 흔한 오해 |
왜 틀렸나 |
바르게 이해하기 |
| 신뢰도가 높으면 X가 Y의 강한 원인이다 |
Y가 원래 흔해도 신뢰도는 높아질 수 있다 |
support(Y)와 향상도를 함께 보고도 인과로 단정하지 않는다 |
X→Y와 Y→X의 세 척도는 모두 달라진다 |
합집합과 두 지지도의 곱은 방향에 무관하다 |
신뢰도는 달라질 수 있지만 지지도·향상도는 같다 |
| 향상도 1 초과면 추천이나 진열이 성공한다 |
관찰 자료의 동반 출현이 개입 효과를 보장하지 않는다 |
연관·예측 후보를 찾는 단서로만 쓴다 |
| 빈발한 A의 상위 조합도 빈발한다 |
품목이 추가되면 포함 거래 수는 늘 수 없다 |
상위 후보의 지지도를 다시 계산한다 |
| 같은 거래의 X와 Y에서 X가 먼저다 |
일반 연관규칙의 화살표는 시간축이 아니다 |
시간 순서는 동일 대상의 t1<t2 자료로 판단한다 |
| 규칙은 자료가 바뀌어도 유지된다 |
임곗값·표본·기간·선택 편향이 후보와 수치를 바꾼다 |
분석 조건을 확인한 범위 안에서만 해석한다 |
5. 관련 개념