DOI QR코드

DOI QR Code

빅데이터 추천시스템을 위한 과립기반 연관규칙 마이닝

Granule-based Association Rule Mining for Big Data Recommendation System

  • 박인규 (중부대학교 게임소프트웨어학과)
  • Park, In-Kyu (Dept.of GameSoftware Eng., Joongbu University)
  • 투고 : 2021.04.15
  • 심사 : 2021.06.04
  • 발행 : 2021.06.30

초록

연관규칙 마이닝은 여러 테이블에 숨겨진 패턴들의 관계를 나타내주는 방법이다. 요즈음에는 연관규칙 마이닝에 보다 세부적인 의미를 추가하기 위하여 과립화 논리를 이용하고 있다. 또한 기존의 데이터를 이용하여 추천하는 기존의 시스템과는 달리 과립화 연관규칙에서는 신규 가입자나 신규상품에 대한 추천의 경우도 가능하다. 따라서 연관규칙의 과립화의 정성적인 크기를 결정하는 것이 추천 시스템의 성능을 좌우한다. 본 논문에서는 관람자가 평가한 영화에 대한 관계를 파악하기 위하여 퍼지논리와 샤논 엔트로피 개념을 이용하여 관람자와 영화데이터에 대한 과립화 방법을 제안한다. 연구는 관람자와 영화간의 연관규칙의 함의에 결정적인 역할을 하는 데이터의 과립화의 크기를 결정하는 부분과 이러한 과립화를 이용하여 관람자와 영화간의 연관규칙을 추출하는 두 번째 부분으로 구성되어 있으며 넷플릭스의 MovieLens데이터를 이용하여 분석하였다. 최종적으로 도출된 연관규칙의 의미와 추천의 정확도 및 고려해야하는 함의를 제시하였다.

Association rule mining is a method of showing the relationship between patterns hidden in several tables. These days, granulation logic is used to add more detailed meaning to association rule mining. In addition, unlike the existing system that recommends using existing data, the granulation related rules can also recommend new subscribers or new products. Therefore, determining the qualitative size of the granulation of the association rule determines the performance of the recommendation system. In this paper, we propose a granulation method for subscribers and movie data using fuzzy logic and Shannon entropy concepts in order to understand the relationship to the movie evaluated by the viewers. The research is composed of two stages: 1) Identifying the size of granulation of data, which plays a decisive role in the implications of the association rules between viewers and movies; 2) Mining the association rules between viewers and movies using these granulations. We preprocessed Netflix's MovieLens data. The results of meanings of association rules and accuracy of recommendation are suggested with managerial implications in conclusion section.

키워드

Ⅰ. 서론

장바구니 분석에 활용되는 연관성 분석은 관계형 데이터마이닝 방법으로써 개인화 추천 서비스에 널리 활용되고 있다. 연관규칙 분석은 조건부 확률로써 “사건 A가 일어났을 때, 사건 B가 일어나는 것”을 의미하며 추천 시스템에서는 “고객이 A에 대해서 만족(혹은 구매)할 경우, B 에 대해서 만족 한다”를 의미한다. 이때 A의 정보로써 고객의 나이, 성별, 지역과 같은 프로필정보나 과거 구매 이력 혹은 설문지 응답으로부터 얻은 취향 정보 등을 모두 활용할 수 있으며, B의 정보는 추천 대상 고객에게 추천할 항목으로 정의할 수 있다[1]. 연관규칙에 대한 판단 기준은 전체 발생 빈도수를 의미하는 지지도(support)와, 조건부 확률을 통해 항목 간 관련 정도를 측정하는 수용도(coverage)가 사용된다. 연관성 분석은 항목의 동시 출현 빈도수를 기반으로 추천항목의 우선순위가 정해지므로 데이터 희소성과 취향이 독특한 사용자(grey sheep) 문제를 해결할 수 있다.

그러나 아이템 수와 사용자의 수가 많을 경우, 데이터 희소성 문제점이 대두되어 연산이 복잡해지고 계산양이 많아질 수 있다. 따라서 이에 대한 해결방안으로 granules에 의한 연관 규칙 마이닝이 제안되었다. 이러한 연관규칙은 수용도와 신뢰도라는 척도를 사용하여 규칙을 생성하고, 구매시스템의 경우 고객과 제품을 각각의 granules를 기반으로 각각의 granules간의 연관 관계를 고려한다. 또한 이러한 방법은 새로운 초기 환경에서의 콜드 스타트 추천이 가능하다. 이러한 과정으로 먼저 고객과 제품에 대한 granules을 조건부와 결론부에 수용되는 임계값을 충족하는 속성데이터의 빈도수를 고려한다. 이를 바탕으로 고객과 제품 간의 연관 규칙을 생성하여 신규 고객의 granules에 맞는 적절한 규칙을 사용하여 제품을 추천하게 된다. 반면에 기존의 top-K 접근 방식은 각 사용자에 대해 K 개의 가장 세분화된 연관 규칙을 추출하여 K-유형의 항목을 추천하는데 granules의 크기에 따라 상품의 목록이 달라지게 마련이다. 결국 연관 규칙마이닝의 성능에 중요한 요소는 이산화를 통한 granules의 정확성에 달려있다[2][3][4][5].

본 논문에서는 숫자 데이터에서 의미적으로 더 풍부하고 강력한 규칙을 보장하는 granules의 정확성을 높이기 위하여 퍼지논리와 샤논 엔트로피를 이용한 클러스터링 기법을 제안한다.

Ⅱ. 관련연구

S = (U, A)는 이진 관계를 가지는 정보 시스템으로 U = {x1, x2, . ... , xn}은 모든 객체의 집합, A = {a1, a2, ..., am}은 모든 속성의 집합이고, aj(xi)는 i ∈ [1, .., n] 및 j ∈ [1, ⋯ , m]에 대하여 속성 aj에 대한 xi의 값이다. 정보 시스템에서 A’⊆A는 동치관계(equivalence relation)를 유도하고 U를 여러 개의 불연속 부분집합으로 식(1)과 같이 분할할 수 있다.

\(\begin{aligned} E_{A^{\prime}}(x) &=\left\{(x, y) \in U \times U \mid \forall a \in A^{\prime}, a(x)=a(y)\right\} \\ &=\left\{y \in U \mid \forall a \in A^{\prime}, a(y)=a(x)\right\} \end{aligned}\)        (1)

따라서 (A’, x)는 정보 시스템을 granule로 표현할 수 있고 gr(A’, x)를 기본 granules로서 속성-값 쌍의 결합 (conjunction) rep(gr)와 granules 객체의 집합 obj(gr)로 식(2)와 같이 정의할 수 있다.

\(\begin{aligned} &\operatorname{rep}\left(g r\left(A^{\prime}, x\right)\right)=\bigwedge_{a \in A}\{a: a(x)\} \\ &o b j\left(g r\left(A^{\prime}, x\right)\right)=E_{A^{\prime}}(x) \end{aligned}\)       (2)

표 I에서 (c)는 이진 관계를 나타낸다. 여기서 U는 (a) 에 표시된 사용자 집합이고 V는 (b)와 같이 영화 집합이다. 다대다(multi-to-multi) 객체 관계 시스템은 ES = (U, A, V, B, R)로 나타낼 수 있다. 여기서 (U, A)와 (V, B)는 두 개의 정보 시스템이고 R ⊆U × V는 U에서 V 로의 이진 관계이다. granular 연관 규칙은 식(3)과 같이 함의를 가진다. 여기서 x ∈ U, y ∈ V, A′ ⊆ A 및 B′ ⊆ B 이다. 예를 들어 “40% 어른은 적어도 30% 종류의 알코올을 즐긴다. 45%의 고객은 어른이고 6%의 제품은 주류이다”와 같은 연관 규칙에서 45%, 6%, 40% 및 30% 는 식(4)와 같이 각각 소스 수용도(source coverage), 목표 수용도(target coverage), 소스 신뢰도(source confidence) 및 목표 신뢰도(target confidence)를 나타낸다. 또한 과립의 지지도는 식(5)와 같이 obj(gr)의 크기를 전체의 크기로 나눈 것이다. 소스 신뢰도는 목표 신뢰도 사이의 상충 관계에 때라서 임의의 목표 신뢰도를 포함하여 식(6)과 같이 정의된다. 일반적으로 소스 수용도와 타겟 수용도는 규칙의 일반성을 나타내고 소스 신뢰도와 목표 신뢰도는 규칙의 강도를 나타낸다.

\((G R)=\bigwedge_{a \in A^{\prime}}\{a: a(x)\} \Rightarrow \bigwedge_{b \in B^{\prime}}\{b: b(y)\}\)       (3)

\(\begin{aligned} \operatorname{scov}(G R) &=\left|E_{A^{\prime}}(x)\right| /|U| \\ \operatorname{tcov}(G R) &=\left|E_{B^{\prime}}(y)\right| /|V| \end{aligned}\)       (4)

\(\begin{aligned} \operatorname{supp}\left(g r\left(A^{\prime}, x\right)\right.&=\operatorname{supp}\left(\wedge_{a \in A^{\prime}}\right) \\ &=\operatorname{supp}\left(E_{A^{\prime}}(x)\right)=\left|E_{A^{\prime}}(x)\right| /|U| \end{aligned}\)       (5)

\(\operatorname{sconf}(G R, t c)=\frac{\mid\{x \in L H(G R) \mid \text { ratio } \geq t c\} \mid}{|L H(G R)|}\)       (6)

표 1. 다대다 객체 관계시스템

Table I. Many-to-many entity-relationship system

OTNBBE_2021_v21n3_67_t0001.png 이미지

Ⅲ. 퍼지 엔트로피 이산화에 의한 연관규칙 마이닝

퍼지논리를 적용한 퍼지 엔트로피(fuzzy entropy) 에의한 방법을 제안한다. MovieLens 데이터의 속성 데이터의 범위를 임의의 레벨을 갖는 N 크기의 속성 A는 퍼지 싱글 톤(fuzzy singleton)으로 정의하고 각각의 레벨에 대한 크기 정도를 나타내는 멤버쉽 함수(membership function)의 퍼지 집합을 X 식(7)과 같이 정의한다[6].

\(A=\left\{\left(x_{i}, \mu_{A}\left(x_{i}\right)\right), i=1,2 \ldots, N\right\}\)       (7)

여기서 μx(xn)는 n번째 값의 크기 속성의 등급을 나타낸다. 따라서 속성 X에서 임의의 원소에 대한 모호성 (ambiguity)의 정도는 퍼지 집합 X의 엔트로피로 측정할 수 있다. 예를 들어 X에 두 개의 영역 A와 B가 있다고 가정할 경우에 클러스터링 과정에서 경계는 클러스터 A 또는 B에 속하는지 여부를 결정하는 데 어려움이 있고가장 큰 불확실성을 가지고 있다고 볼 수 있다[7][8]. 따라서 가장 큰 불확실성은 엔트로피의 최댓값을 유발한다. 마찬가지로 속성에 C 클래스가 있는 경우 경계는 엔트로피 함수의 (C-1) 국부적인 최대치가 있다고 볼 수 있다. 그림 1의 a와 c는 속성데이터의 구간의 최소와 최대에 해당하고 속성 데이터를 (b)의 샤논함수에 적용하여 b를 클러스터 A와 B의 경계로 가정한 경우에 속성 데이터의멤버쉽 함수 값 (μ(attr)) 구하고 이 값에 대한 불확실성을 구하기 위하여 (a)의 엔트로피 함수를 적용한다. 엔트로피 함수는 식(8)과 같이 퍼지집합으로 사상된 데이터의 퍼지 정도를 측정하며, 그림 1에서와 같이 [0, 0.5]에서는 단조적으로 증가하고, [0.5, 1]에서는 단조 적으로 감소하며 μx(xn)에서 최대값(가장 큰 불확실성)을 가진다. 결국 정의된 바와 같이 퍼지집합에서 샤논 엔트로피를 사용하여 확률적 시스템의 불확실성을 나타낼 수가 있다.

\(\begin{aligned} S\left(\mu\left(x_{\text {attr }}\right)\right)=&-x \ln \left(\mu\left(x_{\text {attr }}\right)\right) \\ &-\left(1-\mu\left(x_{a t t r}\right)\right) \ln \left(1-\mu\left(x_{a t t r}\right)\right) \end{aligned}\)       (8)

\(\left.H(A)\right|_{x}=\frac{1}{N \ln 2} \sum_{x=L_{\min }}^{L_{\max }} S\left(\mu\left(x_{a t t r}\right)\right) * h(x)\)       (9)

\(\begin{array}{ll} \mu\left(x_{a t t r}: a, b, c\right) & \\ {\left[\begin{array}{ll} 0 & x_{a t t r} \leq a \\ 2^{*}\left[\left(x_{\text {attr }}-a\right) /(c-a)\right]^{2} & a \leq x_{\text {attr }} \leq b \\ 1-2^{*}\left[\left(x_{\text {attr }}-c\right) /(c-a)\right]^{2} & b \leq x_{\text {attr }} \leq c \\ 1 & x_{a t t r} \geq c \end{array}\right.} \end{array}\)       (10)

OTNBBE_2021_v21n3_67_f0001.png 이미지

그림 1. 샤논 엔트로피 함수

Fig. 1. Shannon entropy function

알고리즘 1의 1라인에서 속성의 데이터의 애매함의 정도를 측정한다. 라인2에서는 빈도수를 구하고 라인3에서는 교차점 b에서의 퍼지 엔트로피를 구하고 라인 4에서 경계에 해당하는 조건을 만족하는 b를 구한다. 알고리즘 2의 라인 2와 3에서는 알고리즘 1에서 구한 속성 데이터를 이산화한 granules에 대하여 소스 수용도 ms와 목표수용도 mt 임계값 수용도를 완충적으로 만족하는 granules을 구성한다. 라인 7에서는 목표 신뢰도 tc를만족하는 소스 신뢰도 sc를 만족하는 granule들을 추출하여 연관규칙의 함의를 구축한다. 이러한 과정이 그림 2의 알고리즘에 두 가지의 단계로 나타나 있다.

OTNBBE_2021_v21n3_67_f0008.png 이미지

그림 2. 연관 규칙추출 알고리즘

Fig. 2. Association rule mining algorithm

Ⅳ. 실험 및 결과

MovieLens 데이터 세트는 943 명의 사용자와 1682 개의 영화로 구성되고 평가는 5가지의 등급으로 구성되어 있다[9]. 장르는 다중 값 속성으로 18개의 부울 속성으로 확장 기반 접근 방식을 사용하였다. 데이터베이스 스키마는 사용자는 사용자 ID, 나이, 성별, 직업으로 구성되고 영화는 movieID, release_Year, genre로 구성되어 있다. 실험에서는 granules의 크기와 연관규칙의 수와의 관계를 살펴보았다. k1은 사용자 연령의 간격 번호이고 k2는 영화 개봉연도의 간격번호이다. 먼저, k1과 k2 에 대한 이산화를 위하여 알고리즘 1을 이용하였다. k1 의 경우 그림 3과 같이 band는 1, 2, 3, 4, 6, 7, 10으로 설정하였고, 그림 4의 k2의 band는 3에서 27까지의 12 개의 홀수만으로 설정하였다. 공통적으로 band가 커질수록 샤논함수의 기울기가 완만해져서 인접한 데이터 간의 변별력이 떨어져서 클러스터의 개수가 감소하였다. 실험에서 일관성을 위하여 ms = mt = 0.08, sc = 0.12 및 tc = 0.13을 설정에서 세 가지의 경우를 살펴보았다. 첫째로 k1이 7인 경우에 k2를 변경하고 둘째로 k2 를 11 로 고정하고 k1을 변경하고 마지막으로 k1과 k2를 각이 변경하여 고찰하였다[10][11][12].

OTNBBE_2021_v21n3_67_f0002.png 이미지

그림 3. 나이속성의 이산화에 대한 클러스터링

Fig. 3. Clustering of age's discretization

OTNBBE_2021_v21n3_67_f0003.png 이미지

그림 4. 배급년도의 이산화에 대한 클러스터링

Fig. 4. Clustering of release_year‘s discretization

그림 5는 k1을 7로 고정하고 k2가 증가함에 따라 규칙의 수가 감소하였다. 그 이유는 granules의 수가 더 많을 때 더 미세한 분할을 얻었고 결과적으로 목표 수용도가 더 낮아지기 때문에 일부 규칙은 채굴할 수 없었다. k2가 2에서 4까지의 범위에서 k-평균 접근 방식이 훨씬 더 많은 규칙을 채굴하였다. 8에서 12까지의 범위에서는 동일한 주파수 접근 방식이 보다 많은 규칙의 채굴이 가능했다. 퍼지 엔트로피의 경우 기존의 방법들보다 3배의 규칙을 발견할 수 있었다. 이는 엔트로피에 의한 방법이 기존의 다른 방법과 차이가 있다. 속성 데이터의 구성 성분인 숫자들이 얼마나 규칙적인지 혹은 불규칙적인지에 따라 신호와 패턴의 정보량도 달라진다. 따라서 이러한 정보량인 데이터의 복잡도(complexity)를 엔트로피를 이용하여 정량적으로 측정하므로 기존의 방법과의 차이가 있다.

OTNBBE_2021_v21n3_67_f0004.png 이미지

그림 5. 연관 규칙의 수(k1=7)

Fig. 5. The number of generated rules(k1=7)

그림 6의 경우도 k2을 11로 고정하고 k1이 증가함에 따라 더 미세한 분할이 발생하였다. 따라서 소스 수용도가 낮아져서 전반적으로 규칙의 수가 감소하였다. 그림 5와 다르게 k1이 6정도까지는 기존의 방법과 많은 차이를 보이는데 그 이후에는 기존의 방법과 비슷한 결과를 보이고 있다. 이는 k2의 개봉연도 데이터의 복잡성이 k1 관람자의 나이 데이터의 복잡성보다 낮은 것에 기인한 것으로 생각된다. 그림 7은 k1은 1에서 10까지, k2는 3 에서 27까지의 조합에 대한 발생된 연관규칙의 수를 보여준다.

OTNBBE_2021_v21n3_67_f0005.png 이미지

그림 6. 발생된 규칙의 수(k2=11)

Fig. 6. The number of generated rules(k1=11)

OTNBBE_2021_v21n3_67_f0006.png 이미지

그림 7. 발생된 규칙의 수(k1=7 와 k2=11)

Fig. 7. The number of generated rules(k1=7 and k2=11)

콜드 스타트 추천을 위하여 새로운 관람자의 상황을 고려한다. sc = 0.4 및 tc = 0.3이고 60 % 데이터 (사용자 565 명, 영화 1009 개)를 훈련 세트로, 나머지 데이터 (사용자 378 명, 영화 673 개)를 테스트 세트로 무작위로 선택하였다. 그림 8에서는 각기 다른 30회의 샘플링을 통하여 계산된 평균값을 계산하였다. 추천 규칙의 수는 ms와 mt가 증가함에 따라 크게 감소함을 알 수 있었다. 또한 속성 데이터의 복잡성의 척도인 엔트로피에 의한 방법이 다른 항목보다 훨씬 더 많은 항목을 추천하였다. 이는 이산화에 의한 클러스터링의 정확성에 기인한다고 생각된다. 위의 실험에서 알 수 있듯이 제안된 방법이 다른 콜드 스타트 권장 상황에서 추천을 개선하기 위해 다른 방식보다 성능이 우수하다는 것을 알 수 있었다.

OTNBBE_2021_v21n3_67_f0007.png 이미지

그림 8. 콜드 스타트 추천 성능(새로운 관람자의 경우)

Fig. 8. Performance of cold-start recommandation (new users)

Ⅴ. 결론

본 논문에서는 Granular 연관 규칙 마이닝을 위하여 퍼지논리 기반의 이산화 접근법을 제안하였다. 제안된 방법의 이산화는 퍼지엔트로피에 기반하고 있기 때문에 정성적인 특성이 고려되어 의미적으로 더 풍부하고 강력하며 정확한 규칙을 추출하였다. 따라서 이산화에 의한 granules의 적절한 설정은 연관규칙에 의한 접근 방식에서 유용한 규칙을 얻는 데 중요한 요소임을 확인하였다. 제안된 방법은 동일 빈도 접근, 동일 너비 및 k- 평균 접근 방식보다 더 많은 규칙을 생성하는데 일조하였고 cold start 추천에서 더 나은 성과를 거두었다.

※ 이 논문은 2020년도 중부대학교 학술연구비 지원에 의하여 이루어진 것임

참고문헌

  1. R. Srikant and R. Agrawal, "Mining quantitative association rules in large relational tables," ACM SIGMOD Rec., vol. 25, no. 2, pp. 1-12, Jun. 1996. https://doi.org/10.1145/235968.233311
  2. T. Y. Lin, "Granular computing on binary relations I: Data mining and neighborhood systems," in Proc. Rough Sets Knowl. Discovery, 1998, pp. 107-121.
  3. A. I. Schein, A. Popescul, L. H. Ungar, and D. M. Pennock, "Methods and metrics for cold-start recommendations," in Proc. SIGIR, 2002, pp. 253-260.
  4. G. Adomavicius and A. Tuzhilin, "Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions," IEEE Trans. Knowl. Data Eng., vol. 17, no. 6, pp. 1-18, Jun. 2005. https://doi.org/10.1109/TKDE.2005.9
  5. M. Pazzani and D. Billsus, "Content-based recommendation systems," in The Adaptive Web, vol. 4321. Berlin, Germany: Springer-Verlag, 2007, pp. 325-341. https://doi.org/10.1007/978-3-540-72079-9_10
  6. L. Zadeh, "Towards a theory of fuzzy information granulation and its centrality in human reasoning and fuzzy logic," Fuzzy Sets Syst., vol. 19, no. 1, pp. 111-127, Sep. 1997. https://doi.org/10.1016/S0165-0114(97)00077-8
  7. T. J. Li and W. X. Zhang, "Rough fuzzy approximations on two universes of discourse," Inf. Sci., vol. 178, no. 3, pp. 892-906, Feb. 2008. https://doi.org/10.1016/j.ins.2007.09.006
  8. X. He, F. Min, and W. Zhu, "Parametric rough sets with application to granular association rule mining," Math. Problems Eng., vol. 2013, pp. 1-13, Oct. 2013.
  9. Internet Movie Database. [Online]. Available: http://movielens. umn.edu, accessed Oct. 15, 2013.
  10. Y. S. Im, E. Y. Kang, "MPEG-2 Video Watermarking in Quantized DCT Domain," The Journal of The Institute of Internet, Broadcasting and Communication(JIIBC), vol. 11, no. 1, pp. 81-86, 2011. DOI: https://doi.org/10.1109/tip.2006.873476
  11. I. Jeon, S. Kang, H. Yang, "Development of Security Quality Evaluate Basis and Measurement of Intrusion Prevention System," Journal of the Korea Academia-Industrial cooperation Society (JKAIS), vol. 11, no. 1, pp. 81-86, 2010. DOI: https://doi.org/10.5762/kais.2010.11.4.1449
  12. J. S. Oh, B, S. Lee, "A Study for Lifespan Prediction of Expansion by Temperature Status", The Journal of KISTI, vol. 19, no. 10, pp. 424-429, 2018. DOI: http://dx.doi.org/10.5762/KAIS.2018.19.10.424