116
저작자표시-비영리-변경금지 2.0 대한민국 이용자는 아래의 조건을 따르는 경우에 한하여 자유롭게 l 이 저작물을 복제, 배포, 전송, 전시, 공연 및 방송할 수 있습니다. 다음과 같은 조건을 따라야 합니다: l 귀하는, 이 저작물의 재이용이나 배포의 경우, 이 저작물에 적용된 이용허락조건 을 명확하게 나타내어야 합니다. l 저작권자로부터 별도의 허가를 받으면 이러한 조건들은 적용되지 않습니다. 저작권법에 따른 이용자의 권리는 위의 내용에 의하여 영향을 받지 않습니다. 이것은 이용허락규약 ( Legal Code) 을 이해하기 쉽게 요약한 것입니다. Disclaimer 저작자표시. 귀하는 원저작자를 표시하여야 합니다. 비영리. 귀하는 이 저작물을 영리 목적으로 이용할 수 없습니다. 변경금지. 귀하는 이 저작물을 개작, 변형 또는 가공할 수 없습니다.

Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

저 시-비 리- 경 지 2.0 한민

는 아래 조건 르는 경 에 한하여 게

l 저 물 복제, 포, 전송, 전시, 공연 송할 수 습니다.

다 과 같 조건 라야 합니다:

l 하는, 저 물 나 포 경 , 저 물에 적 된 허락조건 명확하게 나타내어야 합니다.

l 저 터 허가를 면 러한 조건들 적 되지 않습니다.

저 에 른 리는 내 에 하여 향 지 않습니다.

것 허락규약(Legal Code) 해하 쉽게 약한 것 니다.

Disclaimer

저 시. 하는 원저 를 시하여야 합니다.

비 리. 하는 저 물 리 목적 할 수 없습니다.

경 지. 하는 저 물 개 , 형 또는 가공할 수 없습니다.

Page 2: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

사 논

장 연 규 추출 법 과 생명

분야에 용

A Method for Mining Extended Association

Rules and its Application to Biomedical Data

2016 1 월

울 원

과 료 보 공

Page 3: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

i

: 데이 마이닝 법들 가운데 히 연구 고 있는 분야 나인

연 규 추출 법 , 주어진 transaction 집합 내에 존재 는 아이

간 규 추출 는 법이다. Transaction 집합 부 추출 연

규 아이 집합 이루어진 결 구 며, 규

요도를 나타내는 개 지 인 지지도 신도를 갖는다. 라인

쇼 몰 스들이 지원 는 상품 추천 능 연 규 인

용 실 들 나 써, 고객이 검색 구입 목 리스트 특

연 규 가 부합 경우, 해당 연 규 결 고객에게

추천 는 식 본 차용 다. 고 연 규 는 ‘고객

모델링’ ‘추천 리스트 결 ’과 같 차에 핵심 인 역 다

있다. 그러나 존 연구들 , 용량 데이 부 연 규 추출에

소요 는 시간 단축, 보 손실 지 동시에 추출 는 연 규

소 등과 같 능 심 주 들에 주 연구 맞추고 있어,

연 규 연구는 상 미 다. 연

규 이 추출 는 transaction 집합 특 에 분 과 이에 른 구분

없이 단 용량 데이 집합 규 고 있 며, 이는 transaction

집합이 생 용 는 분야에 맞춤 연 규 추출 법

부재를 야 다 있다. 이에 본 연구에 는, 연 규

증가를 모델 시 고, transaction 집합

데이 (Static data) 그리고 동 데이 (Dynamic data)

분 고자 했다. , 새롭게 시 연 규 모델과 데이 에

들 다양 알고리즘들 소개 며, 이를 지원 는

시스 들 구 다. 나아가, 본 연구 산출 생명 분야에

용함 써, 그 효용 평가 다.

법: 통 인 연 규 는, 체 아이 집합 부분 집합

어, 를 통해 사용자 특 도를 함 있어

Page 4: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

ii

계가 있 므 , 집합에 해 높 지닌 이진 논리식

식 장 재 다. 논리 연산자 AND OR 그리고 NOT

우 를 명시 있는 사용 허용 는 이진 논리식

연 규 태 지 여, 보다 명 고 상 히 사용자

특 도를 있도 다. transaction 집합

업데이트 향에 맞추어, 상 업데이트 도

업데이트 간격 갖는 데이 를 데이 집합 고, 이 는

상 인 개 써, 잦 업데이트 도 짧 업데이트 간격

갖는 데이 를 동 데이 집합 다. 분 데이

집합들 부 , 이진 논리식 태 에 부합 는 결 들 추출 는

알고리즘 시스 집합 개 고, 개 알고리즘들과 능

를 통해 그 우월 검증 다. 본 연구에 구 모든 시스

Java JavaCC (Java Compiler Compiler)를 사용 여 구 며, 다양

실험 데이 집합과 생명 분야 데이 를 시스 에 용함 써, 그

실효 잠재 검증 다.

결과: 라인 상에 획득 가능 며 다양 연구에 용 sushi, chess,

nursery, mushroom 그리고 soybean 데이 집합 실험 데이 , 연

규 추출 분야 인 알고리즘인 charm, direct, titanic, qtr-sub를

알고리즘 군 , 본 연구에 안 알고리즘들과 능

를 행 다. 상 복잡도가 낮 sushi를 상

실험에 는, 본 연구에 안 알고리즘들과 charm 그리고 qtr-sub

알고리즘이 동 소이 능 보 다. 면 direct 그리고 titanic

알고리즘 히 낮 능 보여 추가 실험에 다. 실험에

용 데이 간 복잡도를 지닌 chess nursery

데이 에 실험에 는, charm 알고리즘에 해 본 연구에 안

알고리즘들 능이 미 게 우 것 인 었 며, qtr-sub

알고리즘 능 히 낮게 어 이후 실험에 다.

가장 높 복잡도를 지닌 데이 집합인 mushroom과 soybean 데이

Page 5: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

iii

집합에 실험에 는, 본 연구에 안 알고리즘들 능이

charm에 해 월등 다는 인 있었다. 동 데이 를

상 , 태가 이진 논리식인 장 연 규 집합 추출

경우, 데이 상 알고리즘들에 해, 동 데이 상

알고리즘 능이 월등히 높 인 있었다. 마지막

pubmed 부 집 가능 생명 데이 인, BMC bioinformatics

그리고 International journal of medical informatics를 통해 출

논 들 타 데이 를 본 연구 종 산출 인 연 규 추출

시스 에 용 여, IT 공자에게 생명 연구 분야를 공 추천

있 인 있었다.

주요어: 연 규 , 이진 논리식, 데이 , 동 데이 , 모델, 알고리즘,

시스

번: 2011 - 30637

Page 6: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

iv

목 차

(국 ) .................................................................. i

목차............................................................................. v

그림 목 ........................................................ viii

I. ....................................................................1

1. 연구 경과 .............................................1

가. 연 규 .......................................................1

나. 식 개 분 ...............................................6

다. 연 규 추출 법 ..................................10

2. 연구 목 .......................................................14

II. 연구 법 ............................................................16

1. 데이 상 장 연 규 추출 법 .16

가. Plant 모델 ....................................................16

나. Cultivation 알고리즘 family .........................35

2. 동 데이 상 장 연 규 추출 법 .50

가. 일 추출 법 ..........................................51

나. 단계 추출 법 .......................................57

Page 7: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

v

III. 결과 ..................................................................65

1. 시스 계 구 ..........................................66

2. 능 평가 ..................................................71

가. 데이 집합 ..................................................71

나. 상 알고리즘 .......................................73

다. 실험 결과 .....................................................75

라. 동 데이 상 능 평가 ..................82

3. 생명 분야에 용 .....................................85

IV. 고찰 ..................................................................91

1. 실험 결과에 고찰 .......................................91

2. 연구 ...................................................95

3. 결 ..................................................................96

V. 참고 헌 ............................................................98

VI. ( ) ..................................................... 105

Page 8: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

vi

Table 1. 매매 데이 베이스 .................................2

Table 2. 연 규 집합 ......................................3

Table 3. 복 연 규 .................................10

Table 4. ui= A∧¬B에 upper-lower neighbor within ui

리스트.........................................................26

Table 5. ui= A∧¬B, minsup=0.1 그리고 minconf=0.2에

Cui 구 요소들 ........................................31

Table 6. ui= A∧¬B, minsup=0.1 그리고 minconf=0.2에

stem-leaf 집합 ..........................................32

Table 7. Figure 5에 도식 plant 부 추출 가능 모든

bonsai 리스트 .............................................34

Table 8. Cultivation 알고리즘 worst-case time complex

도출에 용 리스트 ..........................43

Table 9. 별 집 타 데이 보..........86

Table 10. 실험자 보 실험자 별 이진 논리식 88

Table 11. 실험자 별 추천 리스트 심 리스트 ....89

Page 9: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

vii

그림 목

Figure 1. 연 규 일 용 차 도식 ............5

Figure 2. Table 1 데이 베이스 는 concept lattice

..................................................................9

Figure 3. Plant 모델 구조 요소 개 ...............18

Figure 4. 데이 상 장 연 규 추출 법 도식

................................................................21

Figure 5. Phenotype P(D, A∧¬B, 0.1, 0.2) 도식 33

Figure 6. Upper-lower neighbor 계 인 lattice 41

Figure 7. Batch-D 알고리즘 동작 ......................56

Figure 8. GenFirstGen 알고리즘 동작 ................63

Figure 9. 함 genNextGen 동작 ......................64

Figure 10. FARM과 GARM 시스 구 도 름도67

Figure 11. FARM 구동 모습 ...................................68

Figure 12. GARM 구동 모습 ...................................69

Figure 13. 데이 상 장 연 규 추출 알고리즘

능 실험 구조 ..................................74

Figure 14. Sushi 데이 에 알고리즘 별 소요 시간 76

Figure 15. Sushi 데이 에 알고리즘 별 추출 연 규

.............................................................77

Page 10: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

viii

Figure 16. Chess 데이 에 알고리즘 별 소요 시간 77

Figure 17. Chess 데이 에 알고리즘 별 추출 연 규

.............................................................78

Figure 18. Nursery 데이 에 알고리즘 별 소요 시간 79

Figure 19. Nursery 데이 에 알고리즘 별 추출 연 규

.............................................................79

Figure 20. Mushroom 데이 에 알고리즘 별 소요 시간

................................................................80

Figure 21. Mushroom 데이 에 알고리즘 별 추출 연

규 .....................................................80

Figure 22. Soybean 데이 에 알고리즘 별 소요 시간 81

Figure 23. Soybean 데이 에 알고리즘 별 추출 연

규 .....................................................81

Figure 24. 동 데이 상 ibo-cultivation과 batch-D

알고리즘 능 .................................83

Figure 25. 동 데이 상 batch-D genFirstGen

알고리즘 능 .................................83

Page 11: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

1

1. 연구 경과

가. 연 규

매시 보 리시스 (Point-of-sale system)에 해

집 용량 매매 (Transaction) 데이 부 , 아이 간에

존재 는 견 연 규 추출 법 (Association

rule mining) 이 들 [1]에 해 안 었다. D=(T, I,

R) 있는 매매 데이 는, transaction 집합 T, 아이

집합 I, 그리고 transaction과 아이 간 계 R 구

데이 베이스라 있 며, 본 논 에 지속 인 사용

매매 데이 (즉 데이 베이스)는 Table 1에 어 있다. Table

1에 데이 베이스는, 10개(1-10) transaction들과,

10개 아이 집합(A-J) 그리고 이들 간 계 이루어

있다. 를 들어, transaction 1 아이 A, C, D 그리고 H를

가짐 Table 1 통해 인 있다.

데이 베이스 내에 번히 동시에 는 아이 간

연 규 (Association rule)이라 고, 이는

일 I1→I2 태 며, ‘I1라는 아이 집합

구매 소 자는, I2라는 아이 집합 역시 구매 는 경향이

있다’ 해 다. 이 , I1 I2는 연 규 I1→I2

(Antecedent) 결 (Consequent)이라 다. 규

요도를 나타내는 개 지 지지도 (Support: 상 도)

Page 12: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

2

신도 (Confidence: 조건부 )는, 해당 규 만족 는

transaction 그리고 해당 규 를 만족 는

transaction 결 만족 는 transaction 각각

나타내며, sup( → ) = | ( ) ∩ ( )|/| | 그리고 conf( → ) =

| ( ) ∩ ( )|/| ( )| 각각 식 있다 (단, ( ⊆ ) 는

아이 집합 Ii를 만족 는 transaction 집합 지칭). Table 1에

데이 베이스 부 추출 있는 연 규 집합 는

Table 2를 통해 인 있다.

Table 1. 매매 데이 베이스

데이 베이스

Transaction 아이 집합

1 A C D H

2 B

3 B J

4 A C E F

5 A C E F G

6 B J

7 A C E F G

8 A B C D I

9 D

10 E

Page 13: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

3

Table 2. 연 규 집합

연 규

결 지지도 신도

{A, C} {E, F} 0.3 0.6

{A, B, C} {D, I} 0,1 1.0

{A, C} {D, H} 0.1 0.2

… … … …

{I} {A, C, D, B} 0.1 1.0

시장 분 분야에 시작 연 규 용 근, 마 ,

매 략 립과 같 통 인 용 분야를 포함 , 웹 마이닝

(Web mining), 이미지 리, 계 데이 분 (Relational

database analysis) 그리고 생명과 (Biomedical science) 분야

등 다양 역들 그 범 를 히고 있 며 [2-6], 연 규

일 인 용 차는 Figure 1에 같이 크게, 규

생 부 그리고 규 용부 나 어 명 있다. 규

생 부에 는 가장 transaction 집합 집 다. 다 ,

집 transaction 내에 존재 는 모든 연 규 , 지지도

신도가 도 인 가에 해 소 지지도 (Minimum

support) 소 신도 (Minimum confidence) 같거나 큰

규 집합 추출 여 연 규 장소에 장 다. 이 , 규

장소에는 연 규 , 결 그리고 규 지지도

신도 보가 다. 규 장소 구축 료 후, 실 연

규 용이 이루어지며, 이는 Figure 1 규 용부에

것과 같이, 사용자 상태 도를 집합 태

Page 14: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

4

모델링 며, 연 규 장소 부분 탐색, 모델링

부합 는 결 지지도 신도를 내림차

여 사용자에게 달 게 다.

Page 15: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

5

Figure 1. 연 규 일 인 용 차 도식

Page 16: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

6

연 규 연구 분야 인 도 과 는 크게 (1) 연

규 추출 속도 용 자원 단축, (2) 보 손실 지 며

추출 는 연 규 축소를 복 연 규 추출 지,

(3) 보다 아이 집합 추천 그리고 (4) 추출 시 맥 보

크게 4가지 태 구분 지 있다. 연 규 추출

속도 향상 해, Apriori, FP-growth Charm 시

다양 알고리즘들이 고안 었 며, 보 손실 지 규

축소를 해, 번 닫힌 아이 집합 (Frequent closed itemset)

번 소 생 자 (Frequent minimal generator) 등

개 이 시 었다. , 보다 고 아이 집합

추천 해, 논리 (Description logic) 퍼지 논리 (Fuzzy

logic) 등과 같 논리 분야 연 규 추출 분야 목이

시도 었 며, 맥 보를 여 보다 풍부 보를 포함 는

연 규 추출 고자, 계 연 규 추출 법

다차원 연 규 추출 법 등이 소개 었다. 특히, 식 개

분 [16]이라는 모델 다 연구 그룹들에 해,

에 언 4 도 과 , 번째 도 과 해결

리 용 고 있다 [7-15].

나. 식 개 분

식 개 분 (이 FCA: formal concept analysis)

주어진 데이 부 개 (Concept) 집합과 개 간 상-

계 (Super-subconcept relation) 집합 구 개 격자

(Concept lattice)를 구축함 써, 데이 내에 내 보를

추출 는 모델이다. FCA 이 요소들 , 본 논

Page 17: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

7

논 를 진행함에 있어 인 요소들만 별 채택 여

다. FCA 연 규 추출 법 데이 베이스 D=(T, I,

R)를 입 데이 써 공 며, 각 구 요소를 지칭 는

용어만 달리 다. FCA 경우 데이 베이스 D를 식 맥

(이 formal context) 그리고 transaction 집합 T를 개체

(Object) 집합, 아이 집합 I를 속 (Attribute) 집합이라는

용어를 사용 여 지칭 고, ‘특 개체 g∈T가 특 속 m∈I

갖는다’를 해 (g, m)∈R이라는 법 사용 다.

, 개체 부분 집합 X⊆T 그리고 속 부분 집합 Y⊆I에 여,

XR={m∈I | ∀g∈X: (g, m)∈R} 그리고 YR={g∈T | ∀m∈Y:

(g, m)∈R}이라는 가지 연산자를 용 다. 즉, XR 개체 부분

집합 X 모든 원소들이 공 는 속 집합 , 그리고 YR 속

부분 집합 Y 모든 원소들 소 는 개체 집합 지칭 다

있다. 앞 (가. 연 규 )에 소개 ( ⊆ )는 YR

있 며, 이 YR 통일 여 다.

주어진 formal context (T, I, R)에 식 개 (이

formal concept) 개체 부분 집합 X⊆T 속 부분 집합 Y⊆I

인 (X, Y) 며, 이 XR=Y 그리고 YR=X를

요충분조건이라 며, X를 formal concept 외향(이 extent)

그리고 Y를 내향(이 intent)라 각각 지칭 다. formal

context D 내에 존재 는 모든 formal concept들 집합

B(D) 다. 나아가, 임 formal concept (Xi, Yi), (Xj,

Yj)∈B(D)에 여, 만약 Xi⊆Xj(⇔Yj⊆Yi)라면, (Xi, Yi)는 (Xj,

Yj) 개 (이 supconcept)이라 며, 이 (Xj, Yj)는

(Xi, Yi) 상 개 (이 superconcept)이라 며 이를 (Xi,

Page 18: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

8

Yi)≤(Xj, Yj) 나타낸다. Super-supconcept 계 특

경우 써, 만약 (Xi, Yi)<(Xj, Yj)이며 {(Xk, Yk)∈B(D) | (Xi,

Yi)<(Xk, Yk)<(Xj, Yj)}=∅라면, (Xi, Yi)는 (Xj, Yj) 이웃(이

lower neighbor)이라 며 이를 (Xi, Yi)≺(Xj, Yj) 나타낸다.

이 (Xj, Yj)는 (Xi, Yi) 상 이웃(이 upper neighbor)이라

다. 마지막 , 주어진 formal context D 모든 formal

concept들 집합 B(D) concept 간 상- 계 ≤를 개

격자(이 concept lattice)라 며, 이를 B(D)=(B(D), ≤)

나타낸다. Concept lattice는 일 formal concept들에

는 노드(Node) 집합과 formal concept 간 upper-lower

neighbor 계를 는 아크(Arc) 집합 가시 다. Table

1 formal context (즉 데이 베이스) 부 추출 는 concept

lattice를 Figure 2를 통해 인 있다.

연 규 추출 분야에 4 도 과 번째 도

과 인 복 연 규 (Redundant association rule) 추출

지에 해 보다 구체 함 써, 연 규 추출에 있어

FCA를 통해 얻 있는 장 보다 명 히 논 고자 다.

논 [15]에 르면, 만약 ⊆ , ⊆ 그리고 ( ∪ ) =

( ∪ ) 라면, 연 규 → 는 연 규 → 존재

인해, 복 연 규 분 다. Table 3 Table 1

데이 베이스 부 추출 개 연 규 나타내고 있다.

논 [15] 에 르면, 규 r1 , 규 r2 인해 복 연

규 분 다. 규 r1과 r2 모 , transaction 1과 8 부

도출 는 규 이며, 규 r1 규 r2가 달 는 보

일부분만 달함에 인 다 있다. 이 , Figure 2에

Page 19: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

9

주어진 concept lattice concept들 살펴보면, 규 r2

결 합집합 intent 갖는 concept concept lattice

내에 존재 지만, 복 규 r1 결 합집합

intent 갖는 concept 존재 지 않 인 있다. 다

연구자들이 이에 착안 여, 연 규 추출 분야 4 도 과

번째 과 를 FCA를 통해 해결 고자 며, 본 논 에

안 는 5개 알고리즘 , 3개 알고리즘에 역시 이를

용 고자 다.

Figure 2. Table 1 데이 베이스 는 concept lattice

Page 20: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

10

Table 3. 복 연 규

연 규 결 지지도 신도 분

r1 {A} {D} 0.2 0.4 복

r2 {A} {C, D} 0.2 0.4

다. 연 규 추출 법

Apriori 알고리즘[1] 이진 연 규 추출 는 법

가장 리 용 장 고 인 알고리즘 나이다.

Apriori 알고리즘 인 특징 이 단계에 추출 아이

집합들 조인(Join) 연산 통해 후보 아이 집합 생 는

식이라 있다. 즉, 나 아이 원소 갖는 집합(고

1-다 도 아이 집합: 1-frequent itemset) 주어진

minsup 만족 는 아이 집합들 생 다. 이를 일 면,

k-다 도 아이 집합 (k-1)-다 도 아이 집합들 부

생 다 있다. Apriori 알고리즘 장 통해 개

알고리즘인 MulipleJoins, Reorder 그리고 Direct 알고리즘 ,

DNF (Disjunctive normal form) 식 이진 논리식

(Boolean expression) 통해 사용자 심사가, 연

규 그리고/ 결 에 포함 연 규 만 추출 다.

보다 명 히 면, Di가 a1∧a2…∧ak 식 취 며 각 aj는 i

¬i (단 i∈I)일 , formal context (T, I, R)에 사용자

심사는 D1∨D2∨…∨Dn 식 있 며, 3가지

알고리즘 통해 추출 다 도 집합 연 규 들 ,

규 그리고/ 결 에 사용자 심사를 만족 는

아이 포함 다.

Page 21: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

11

근, FCA를 이진 연 규 추출 법 에

다 연구가 보고 고 있 며, 이들 공통 formal

concept 집합과 concept lattice 특 에 맞추고 있다[7-

15, 18]. 번 닫힌 아이 집합(Frequent closed

itemset)이라는 개 , 용량 데이 부 추출 는 연

규 를 보 손실 없이 이 해 안 었다. 주어진

formal context (T, I, R) 소 지지도 (minsup: Minimum

support)에 여, 속 집합 A⊆I가 A=(AR)R이고

|AR|/|T|≥minsup 만족 경우, A는 번 닫힌 아이

집합이라 다. 다시 말해, 속 집합 A가 번 닫힌 아이

집합이 여는, AR=BR이며 A를 진 부분 집합 는

속 집합 B(즉, A⊂B)가 존재 지 않는다는 조건 만족시 야

다. 이 , 번 닫힌 아이 집합 충분히 많 개체

구 extent를 갖는 formal concept intent 벽히

며, 이 같 formal concept 번 formal

concept(frequent formal concept)이라 칭 도 다 [8].

FCA 닫힘 (Closure) 속 연 규 추출 분야에 용

다양 알고리즘들이 보고 고 있다. Charm 알고리즘 번

닫힌 아이 집합 추출 지원 는 인 알고리즘 나 ,

많 인용 지 를 고 있 며 다양 면에 공

용 고 있다[19]. Charm 알고리즘 핵심 , 조인 연산 행

상인 개 속 집합 A B간 계를 4가지 태

여, 해당 는 계에 라 차별 인 연산 통해 번 닫힌

아이 집합 추출 이 우 탐색 식 생 해 나가는

것이라 있다. Iceberg concept lattice는 연 규 추출과

Page 22: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

12

가시 에 특 데이 구조라 있다[8]. 데이 구조

이름에 추 있는 같이, iceberg concept lattice는

체 concept lattice 일부분 써, 주어진 minsup

충분이 많 개체들 extent 는 formal concept들과

그들 간 상- 계만 이루어진 구조를 말 다. 그러므 ,

iceberg lattice를 통해 연 규 들 역시, 번 닫힌

아이 집합 개 다 있다. 근 들어, 소

생 (이 minimal generator)라는 보다 진보 개 이 연

규 추출 분야에 리 용 고 있다[9, 10, 20, 21]. Formal

context (T, I, R) 아이 집합 A B에 여, 만약

(AR)R=B이고 {C⊆I | C⊂A ∧ (CR)R=B}=∅이라면, 아이 집합

A는 B minimal generator 다. 알고리즘 GenAll[9]과

Prince[10]는 복 이 없는 연 규 추출 해 minimal

generator 개 용 사 라 있다. GenAll

알고리즘 concept lattice를 구축 시, 각 concept에

extent intent 보뿐만 아니라, minimal generator 보를

해 어, 차후 연 규 추출에 용 다. Prince 알고리즘

경우, minimal generator lattice를 구축, 이를 통해 직 인

식 통 연 규 추출 지원 다.

Concept lattice 특장 계승 FCA 연 규

추출 법 , 질 장 (Query expansion) 역에 역시

히 연구 고 있다[12, 13]. 질 장에 연 규 이 용 는

가장 일 인 태는, 사용자가 입 키워드 (Key word)

집합 갖는 연 규 결 사용자에게 추천 는

식이라 있다. 연구 논 [12,13]에 는 FCA를 여

Page 23: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

13

집합 태 주어진 사용자 키워드에 부합 는 연 규

결 공 고자, concept lattice를 이 우 탐색 (Breadth-

first search) 식 탐색 는 법 안 다. 연구 논

모 concept lattice 탐색 식 동일 지만, 시간 복잡도

(Time complexity) 에 는 연구 논 [13] 통해 안

법 이 [12]에 안 법 에 해 우 다. 이는 연구

논 [12] 법 사용자 키워드 집합이 주어질 마다 높

시간 복잡도를 요구 는 부분 concept lattice 구축

이다. 면 연구 논 [13] 통해 안 법 경우

concept lattice 재구축과 같 높 복잡도를 요구 는 연산 없이,

탐색만 키워드에 합 추천 리스트를 공 다.

FCA 논리 (Logic) 목 시도 인 연구

사 는 LCA (Logical Concept Analysis)를 꼽 있다[22].

논리 도입 LCA 경우, 개체집합에 논리 이

갖는 높 보다 상 히 있 며,

logical lattice에 질 동 인 탐색 지원 다. LCA를

보 시스 인 LIS (Logical information system)

실체 시스 인 Camelis[23]는, 논리 높

지닌 언어를 통해 질 를 구 고, 구 질 를 장 는 능

지원 다. , 향, 상향 그리고 회 식 등 다양 탐색

능 용 있다. Submergence 알고리즘[15] fuzzy

논리 시 논리 FCA에 목 여 연 규 추출

연구 산출 써, 각 개체 여도 (Contribution) 차별 여

연 규 지지도 신도 계산에 다. Submergence

알고리즘 차별 여도를 concept lattice 이

Page 24: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

14

우 탐색 통해, 집합 태 사용자 질 에 부합 는

결 공 다.

2. 연구 목

지 지 논 내용 탕 , 다양 아이 어를

다 연 규 추출에 연구들이 행 어 인

있다. 질 장 상품 추천과 같 연 규

인 용 사 들에 , 사용자가 처 특 상황 요구를

갖는 연 규 결 이 특히 히 용 인

있다. 이는 연 규 가 사용자 요구를 는

단 써, 그리고 그에 부합 는 결 사용자에게 주어지는

해결책 (Solution) 역 행함 미 다. 그러나, 다

연 규 추출 법 들 주어진 데이 내에 존재 는 모든

연 규 들 보다 자원 용 고, 보다 른 시간 내에

도출 있는 연구에 맞추었다. 다시 말해, 사용자

요구를 는 요 단인 태가 집합 어,

보다 명 사용자 요구를 함에 있어 그 계가 명 함에도

불구 고, 연 규 태 에 연구는 등 시

어 다. 논리 여 보다 복잡 태 질

작 작 질 에 추천 지원 는 Camelis[23] 같

시스 들이 개 었지만, 이는 모든 개체들에 속 시,

일 많 시간과 용이 소모 는 논리 이

요구 다. 나아가, 연 규 이 추출 는 transaction

Page 25: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

15

집합 특 에 분 과 이에 른 구분 없이 단 용량

데이 집합 규 고 있 며, 이는 transaction 집합이 생

용 는 분야에 맞춤 연 규 추출 법 부재를

야 다 있다. 이 같 를 해결 고자 는 본 연구

구체 인 목 다 과 같다.

가. ‘집합→집합’ 태 었 존 연 규

모델 ‘이진 논리식→집합’ 태 장함 써,

연 규 를 통해 보다 상 사용자 상황

도를 있도 다.

나. 연 규 추출 상인 transaction 집합 업데이트

도 간격에 맞추어, 업데이트 도가 낮거나

그 간격이 상 데이 를 데이 ,

업데이트 도가 높거나 그 간격이 상 짧

데이 를 동 데이 분 다.

다. 장 연 규 모델과 분 transaction 집합

, 효 인 연 규 추출 법 들

시 다.

라. 본 논 통해 시 연 규 모델, transaction 모델

(데이 모델) 그리고 알고리즘 지원 는 시스

계 개 고, 생명 데이 를 용 여 그 능

효용 검증 다.

Page 26: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

16

연 구 법

본 연구는 연구 법 (1) 데이 상 장 연

규 추출 법 그리고 (2) 동 데이 상 장 연 규

추출 법 크게 양분 어 다. 첫 번째 연구 주 인

‘ 데이 상 장 연 규 추출 법 ’ 경우,

자 사 논 [32]에 본 아이 어를 차용

히고, 모델 엄 , 존 알고리즘 2개

추가 인 알고리즘 그리고 알고리즘에

(Completeness) 당 (Soundness)를

증명 내용, 다양 실험 결과가 추가 었 명시 다.

1. 데이 상 장 연 규 추출 법

가. Plant 모델

본 에 는, 사용자 요구 미 (이 ui: user’s

interest)과 게 있는 연 규 들 도출

모델인 랜트 (이 plant)를 소개 다. Plant 모델에

연 규 태를, 보다 높

지원 는 이진 논리식 장 는 것 시작 며, 이진 논리식

식 ui는 상 가능 동일 용어 사용 다.

주어진 ui는 plant 씨앗(이 seed) 역 행 며, concept

lattice를 태양 분과 같 양분 용 여 plant를

Page 27: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

17

장시킨다. 자연 생태계에 는 꽃 침(이 sepal) 여부를

, 장미 지 같 꽃 침 식 (이 sepalous plant),

그리고 튤립과 합 같 꽃 침 식 (이 asepalous plant)

plant를 구분 지 있다. 본 연구에 안 는 plant 모델 역시,

sepal 존재 여부에 라 sepalous 그리고 asepalous plant

구분 지 며, 이 sepal ui를 갖는 신도가 1인

연 규 (Exact association rule)에 다. Plant 모델

번째 요소인 꽃 (이 flower) 집합이며, 각 flower들 근사 연

규 (Approximate association rule) 는데 용 다.

지 지 소개 seed, sepal 그리고 flower 집합

잎(이 stem and leaf)에 상 연결 통해 plant

장 고, 체 plant는 주어진 ui를 는 연 규

결 들 종 사용자에게 달 다. Figure 3 plant

구조 구 요소들에 개 도식 것이며 Figure

4는 plant 모델 주어진 이진 논리식 태 에

연 규 집합 concept lattice 부 추출 용 는

과 도식 것이다. 본 에 소개 는 알고리즘 집합 ,

상 데이 업데이트 도가 상 거나 업데이트

주 가 상 데이 를 상 다. 데이

상 는 데이 집합인 동 데이 를 상 는 장 연

규 추출 법 소개는 이어지는 2 에 소개 다.

주어진 transaction 집합, 즉 formal context D=(T, I, R)에

ui는 속 들 이진 조합 (Boolean combination) 통해

구 며, 아래 같 생 규 (Production rule) 여

생 다(단, i∈I):

Page 28: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

18

ui := i | ¬i | ¬(ui) | uin∧uim | uin∨uim | (ui)

, 생 규 통해 ui에 uiR , ui를

만족 는 모든 개체 집합 지칭 다 (즉, uiR⊆T). Table 1에

formal context를 ui uiR 를 들면 다

같다. A∧¬B는 생 규 통해 가능함 , Figure 1

context에 효 ui라 있다. 요 ui, A∧¬B를

만족 는 개체 집합 {1, 4, 5, 7}이므 . uiR={1, 4, 5, 7}라

있다.

Figure 3. Plant 모델 구조 요소 개

실 계에 특 개체들 부 특이 상 사건이

생 경우, 도 인 가들 개체들이 공 는 속 들 통해

해당 상 사건 분 다. 를 들어, 신 조 독감

H1N1이 자들 부 다면, 료진들 고열과 침 같

Page 29: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

19

해당 자들이 공 는 증상 부 H1N1 이 특

히 해 노 것이다. 사용자 부 주어진 ui는, formal

context (T, I, R) 에 속 집합 I에 속 지 않 특이

새 운 속 여겨질 있다. , 새 운 속 ui를

만족 는 개체들이 공 는 속 집합 (uiI)R

있 며, plant 첫 번째 구 요소인 seed는 ui (uiR)R

도입 여 다.

1. 주어진 formal context D=(T, I, R) ui에 seed는

사용자 미 ui (uiR)R=Y를 intent 는 formal concept (X,

Y)∈B(D) 구 며 (ui, (X, Y)) 다. 이 ,

seed 구 요소 ui를 (이 phenotype) 그리고 (X, Y)를

(이 genotype)이라 다. □

Seed는 주어진 ui를 plant 재 (Cultivation)

시작 역 행 다. [16]에 증명 object

concept에 라, ui 종 태에 계없이 (uiR)R=Y를

만족 는 단 나 formal concept (X, Y)가 드시 존재 다;

임 개체 집합 A⊆T에 여, ((AR)R, AR) formal

concept이며, 이를 object concept이라 부른다. Seed를 구 는

요소인 ui (X, Y)는 phenotype 그리고 genotype이라 각각

명명 었다. 차후 소개 plant를 이루는 추가 요소들 (Sepal

flower) 역시 phenotype과 genotype 구 , 작명

Page 30: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

20

도에 명 다 단에 다. Table 1 formal

context Figure 2 concept lattice를 상 seed 를

보이면 다 과 같다. 주어진 ui가 A∧¬B인 경우, 이를 만족 는

개체 집합 uiR {1, 4, 5, 7}이며, 이들이 공 는 속 집합

(uiR)R {A, C}임 Table 1 formal context 부 인

있다. , (uiR)R={A, C}를 intent 갖는 formal concept ({1, 4,

5, 7, 8}, {A, C})를 Figure 2 concept lattice 부 찾

있다. 그러므 , (A∧¬B, ({1, 4, 5, 7, 8}, {A, C}))는 주어진 ui,

A∧¬B에 seed이다. Genotype 간략 를 해 Figure

1 formal concept 번 를 사용 여 면 (A∧¬B, #3)

있다.

2. 주어진 formal context D=(T, I, R), ui minsup에

sepal (uiR)R=Y≠ ∅이며 |uiR∩X|/|T|≥minsup 일 경우, 속

집합 Y formal concept (X, Y)∈B(D) 인 (Y, (X, Y))

다. 이 , Y (X, Y)를 sepal phenotype 그리고

genotype이라 며, (|uiR∩X|/|T|, 1) sepal 량

(Expression level)이라 다. □

Page 31: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

21

Figure 4. 데이 상 장 연 규 추출 법 도식

Page 32: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

22

Sepal genotype인 formal concept (X, Y)는 seed

그것과 동일 면, phenotype seed 달리 Y이다. 앞

명 같이 Y=(uiR)R ui를 만족 는 모든 개체들이

공 는 속 집합이므 , Y는 를 ui 는 연 규

결 이라 있다. , sepal 량인 (|uiR∩X|/|T|,

1) , 연 규 요도인 지지도 신도에 다.

Sepal 를 보이 해 Table 1 formal context에 ui를

A∧¬B , minsup 0.1 면, uiR={1, 4, 5, 7}, (uiR)R={A,

C} 그리고 |uiR|/|T|=|{1, 4, 5, 7}|/10 = 0.4≥minsup

만족 다. 그러므 , ({A, C}, ({1, 4, 5, 7, 8}, {A, C})) sepal이

며, sepal 량 (0.4, 1) 값 갖는다. 면, ui가

¬A∧¬C 경우, Y=(uiR)R이 공집합이 므 , ui에

sepal 존재 지 않는다. 앞 언 같이, 본 연구에

안 는 plant 모델 , 자연계 그것과 같이, 주어진 경(ui

minsup)에 라 sepalous plant asepalous plant가

있다.

Seed는 주어진 ui , sepal ui를 는 연

규 결 과 다. 본 연구 궁극 목 인 ui를

는 근사 연 규 결 해, 이 는 추가 인

plant 요소가 요구 다. 주어진 X를 는 근사 연 규

Q→R 추출 , Q를 만족 는 개체 다 개체들이 추가

공 는 속 집합 R 도출 는 행 라 있다. 그러므 ,

Q를 포함 는 속 집합 Y를 intent 는 formal concept (X, Y)

집합 용 여 근사 연 규 추출 는 시도는 합리 이라

있 며, 다 FCA 연 규 추출 법 이 이

Page 33: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

23

아이 어를 여 개 었다[8, 12, 13, 15, 23].

그러나 formal concept 집합 이진 논리식 태 주어진

에 부합 는 근사 연 규 추출에 용 해 는 새 운

근법이 요구 다. 에 언 같이, formal context

formal concept 입장에 , 이진 논리식 태 사용자

요구사항 알 지지 않 새 운 속 이라 있다.

그러므 , 이진 논리식 주어진 를 포함 는 intent를 갖는

formal concept 존재 지 않는다. 다시 말해, 존 법 과

같이 formal concept intent를 연 규 추출 식이

아닌, 이진 논리식 태 를 만족 는 개체를 , formal

concept extent를 연 규 추출 근법이 논리

합당 다 있다. 이러 주어진 ui (이진 논리식

태 )에 부합 는 근사 연 규 결 formal

concept 부 추출 고자 , 용 가 가 있는 formal

concept에 에 다 과 같이 다.

3. 주어진 formal context D=(T, I, R)과 ui에 여, 만약

Xi∩uiR≠ ∅ 이고 {(Xj, Yj)∈B(D) | (Xj, Yj)< (Xi, Yi) ∧

Xi∩uiR=Xj∩uiR}= ∅ 만족 는 개 집합 Xi를 extent 갖는

formal concept (Xi, Yi)를 양가 있는 개 (이 nutritious

concept)이라 다. , 주어진 ui에 모든 nutritious

concept 집합 Nui 다. □

Page 34: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

24

주어진 ui에 해 특 formal concept (Xi, Yi)가 nutritious

concept이 해 는, 가장 extent Xi 원소 ui를

만족 는 원소, 즉 개체들이 존재해야 다. , (Xi, Yi)

subconcept 집합 , Xi uiI 집합과 Xj uiR 집합이

동일 subconcept (Xj, Yj)가 존재 지 않아야 다. Nutritious

concept 번째 조건 복 근사 연 규 추출

지 는 핵심 인 역 다. 연구 논 [15]에 재 복

연 규 를 리면 다 과 같다; “주어진 formal context

(T, I, R)에 개 연 규 r1: A→B 그리고 r2: C→D 가

존재 고, A⊆C이고 B⊆D이며, r1 지지도 신도가 r2

그것들과 동일 경우, 연 규 r1 복 연 규 이다”. 본

연구는 주어진 특 이진 논리식 태 , ui에 연

규 추출에 맞추고 있 므 , 복 연 규 는

다 과 같이 간략 있다; “주어진 formal context (T, I,

R)에 개 연 규 r1: ui→A 그리고 r2: ui→B 가

존재 고, A⊆B이고, r1 지지도 신도가 r2 그것들과

동일 경우, 연 규 r1 복 연 규 이다”. 본 연구

주 에 부합 도 재 복 연 규 는 nutritious

concept 벽히 다.

Formal concept (Xi, Yi) 부 도 가능 연 규

ui→Yi Xi∩uiR=Xj∩uiR인 Xj를 extent 갖는 (Xi, Yi)

subconcept (Xj, Yj)를 가 해보자. 연 규 가지 지 인

지지도 신도란 해당 규 만족 는 개체

나타내므 , 연 규 ui→Yi 지지도 신도는

|Xi∩uiR|/|T| |Xi∩uiR|/|uiR| 각각 있다. (Xi,

Page 35: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

25

Yi) subconcept인 (Xj, Yj) 부 도 가능 주어진 ui에

부합 는 연 규 ui→Yj를 가 해 보면, 이 규 지지도

신도는 |Xj∩uiR|/|T| |Xj∩uiR|/|uiR| 다. 이 ,

Xi∩uiR=Xj∩uiR이므 , 규 ui→Yi ui→Yj 지지도 신도는

동일 며, (Xi, Yi)가 (Xj, Yj) superconcept이므 , Yi는 Yj

부분 집합이 다. 다시 말해, formal concept (Xi, Yi) 부

도 는 ui→Yi는 (Xj, Yj) 부 도 는 ui→Yj 인해 복

연 규 이 며, nutritious concept 는 (Xi, Yi) 같

formal concept 부 복 근사 연 규 추출 지 는

역 행 다. Table 1 formal context에 ui= A∧¬B가

주어 , Figure 2 concept lattice에 존재 는 formal

concept들 , nutritious concept에 해당 는 집합 Nui는 {#3,

#6, #8, #9}가 다.

4. 개 nutritious concept (Xi, Yi), (Xj, Yj)∈Nui에

여, 만약 {(Xk, Yk)∈Nui | (Xi, Yi)<(Xk, Yk)<(Xj, Yj)}=∅라면,

(Xi, Yi)는 주어진 ui 에 (Xj, Yj) 이웃(이 lower

neighbor within ui)라 다. 이 , (Xj, Yj)는 주어진 ui 에 (Xi,

Yi) 상 이웃(이 upper neighbor within ui)이라 며, 이

계를 (Xi, Yi)≺ (Xj, Yj) 다. □

Upper-lower neighbor within ui 계는, 통 인 FCA에

소개 upper-lower neighbor 계 장 써, 계 상

Page 36: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

26

(즉, domain-range)이 는 formal concept 집합 , 주어진 ui에

nutritious concept 집합 계라 있다. 이는

본 논 에 안 는 plant 모델 번째 구 요소인 flower

약 조건 용 어, 주어진 ui를 며 복 이지 않

(즉, informative) 근사 연 규 추출에 있어 핵심 인 역

행 다. Table 1과 Figure 2에 formal context

concept lattice 그리고 ui=A∧¬B에 upper-lower neighbor

within ui 계 집합 Table 4 같이 추출 다.

5. Formal context D=(T, I, R) ui에 flower는 (Xi,

Yi) ≺ (Xj, Yj)이고 |uiR∩Xi|/|T|≥minsup∈[0, 1]이며

|uiR∩Xi|/|uiR|≥minconf∈[0, 1]일 , (Yi\Yj, (Xi, Yi))

다. 이 , Yi\Yj를 phenotype 그리고 (Xi, Yi)를 flower

genotype이라 며, (|uiR∩Xi|/|T|, |uiR∩Xi|/|uiR|) flower

expression level이라 다. □

Table 4. ui= A∧¬B에 upper-lower neighbor within ui

리스트

Lower neighbor within ui Upper neighbor within ui

#6: ({4, 5, 7}, {A, C, E, F}) #3: ({1, 4, 5, 7, 8}, {A, C})

#9: ({1}, {A, C, D, H}) #3: ({1, 4, 5, 7, 8}, {A, C})

Page 37: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

27

#8: ({5, 7}, {A, C, E, F, G}) #6: ({4, 5, 7}, {A, C, E, F})

Plant 모델 번째 구 요소인 flower는, seed sepal과

같이 phenotype과 genotype 구 며, 주어진 ui를

는 근사 연 규 결 에 다. Flower genotype

nutritious concept 집합 원소인 formal concept이며, 해당

formal concept intent 부분 집합 phenotype 취 다.

사실 flower genotype intent 자체가 ui를 는 근사

연 규 결 이라 있 에도 불구 고, flower

phenotype intent 부분 집합 었다. 이는 특

flower genotype A라고 했 시, A upper neighbor within

ui인 nutritious concept B 부 추출 는 결 복 인

지 함이다. 곧 이어 소개 plant 모델 마지막 구

요소인 잎 (이 stem and leaf)에 해 벽 태

plant가 구 며, ui를 는 근사 연 규 결 들이

복 없이 사용자에게 달 다.

지 지 plant를 이루는 3가지 구 요소인 seed, sepal

그리고 flower를 소개 며, 구 요소들 phenotype과

genotype 인 (phenotype, genotype) 이루어진다는

공통 갖는다. 고 , Cui라는 를 사용 여 주어진 ui에

seed, sepal 그리고 flower들 합집합 지칭 다.

자연계에 언 는 생명체 genotype , 생명체 부모 부

계승 는 보 여겨지며, phenotype 경우 실

는 생 특 들 일컫는다. 동일 genotype

Page 38: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

28

가진 생명체라도, 각 생명체가 처 경에 라 phenotype

다르게 있다 ( : 입양 통해 다른 경에

장 일란 이). 본 논 에 안 는 plant 모델 역시,

자연계에 는 상이 그 용 있다.

사용자 부 주어진 ui minsup 그리고 minconf가 plant를

러싼 경에 며, 경에 라 같 genotype 부

상이 phenotype이 다. Plant 마지막 구 요소인 stem-

leap 소개 에 앞 , Table 1과 Figure 2에 formal

context concept lattice에 해, ui=A∧¬B, minsup=0.1

그리고 minconf=0.3가 주어 시, plant를 이루는 3가지 구

요소들에 보를 Table 5에 나열 다.

6.1 Asepalous plant 구 요소 ci, cj∈Cui에 여,

다 과 같 가지 경우를 만족 , 가 를 갖는 향

아크(이 weighted arc) ci

→ cj를 plant (이 stem)라고

다:

l ci가 seed인 경우

o (ci genotype)≺ (cj genotype)

l ci가 flower인 경우

o (ci genotype)≺ (cj genotype) 그리고

o (ci phenotype)∩ (cj phenotype)=∅.

이 , stem 가 w는 cj expression level 며, 이를

Page 39: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

29

stem 잎(이 : leaf)이라 다. □

6.2 Sepalous plant 구 요소 ci, cj∈Cui에 여,

다 과 같 가지 경우를 만족 , 가 를 갖는 향

아크(이 weighted arc) ci

→ cj를 plant (이 stem)라고

다:

l ci가 seed인 경우

o (ci genotype) = (cj genotype)

l ci가 sepal flower인 경우

o (ci genotype)≺ (cj genotype) 그리고

o (ci phenotype)∩ (cj phenotype)=∅.

이 , stem 가 w는 cj expression level 며, 이를

stem 잎(이 : leaf)이라 다. □

Plant 모델 번째 구 요소인 stem-weight는 seed,

sepal 그리고 flower 집합 연결 는 역 행 다. 앞

언 같이 plant 모델 sepal 가지고 있지 않

asepalous plant sepal 가진 sepalous plant 나 있다.

Sepal 갖지 않는 asepalous plant 경우, seed가 다

flower들과 stem-leaf를 통해 직 연결 있다. 그러나

sepal 갖는 sepalous plant 경우, seed는 드시 sepal과만

Page 40: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

30

stem-leaf를 통해 직 연결 며, flower들 sepal과

연결 거나 다른 flower들과 연결 있다. Table 6에는

주어진 ui=A∧¬B, minsup=0.1 그리고 minconf=0.2를

생 가능 stem-leaf 집합 다.

Page 41: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

31

Table 5. ui= A∧¬B, minsup=0.1 그리고 minconf=0.2에 Cui 구 요소들

구 요소 태 Phenotype Genotype Expression level

c1 Seed A∧¬B #3: ({1, 4, 5, 7, 8}, {A, C}) .

c2 Sepal {A, C} #3: ({1, 4, 5, 7, 8}, {A, C}) (0.40, 1.00)

c3 Flower {E, F} #6: ({4, 5, 7}, {A, C, E, F}) (0.30, 0.75)

c4 Flower {D, H} #9: ({1}, {A, C, D, H}) (0.10, 0.25)

c5 Flower {G} #8: ({5, 7}, {A, C, E, F, G}) (0.20, 0.50)

Page 42: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

32

Table 6. ui= A∧¬B, minsup=0.1 그리고 minconf=0.2에

stem-leaf 집합

Stem Tail Head Leaf: w

c1

→c2 c1 c2 (0.40, 1.00)

c2

→c3 c2 c3 (0.30, 0.75)

c2

→c4 c2 c4 (0.10, 0.25)

c3

→c5 c3 c5 (0.20, 0.50)

Plant 모델 고자, 본 연구에 는 나

plant를 P(D, ui, minsup, minconf)=(Cui, Sui)라는 를 사용 여

나타낸다. 이 , D는 formal context, ui는 D에 이진 논리식,

minsup과 minconf는 0과 1사이 값 나타내며, Cui는

{seed1…1, sepal0…1, flower0…*} , Sui는 {stem-leaf0…*}를

미 다( 첨자(superscript) i…j는 각 원소 cardinality).

Figure 5는 phenotype plant P(D, A∧¬B, 0.1,

0.2)를 도식 것이다 (단, D는 Table 2 formal context).

7. 주어진 plant P(D, ui, minsup, minconf)=(Cui, Sui) 부분

집합 Bui=( ui, ui)이 ui⊆Cui, ui⊆Sui, seed∈ ui이고 Bui가 ui

ui 모든 원소들 고립시키거나 락 지 않는 체인 구조(Chain

structure)를 가질 , 다 과 같 조건 만족 , Bui=( ui,

Page 43: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

33

ui) plant 분재(이 Bonsai)라 다. , 나 bonsai는

연 규 ui→ ⋃ ( ℎ ) 과 며, bonsai

마지막 stem si∈ ui leaf를 지지도 신도 취 다. □

Figure 5. Phenotype P(D, A∧¬B, 0.1, 0.2) 도식

Table 7 Figure 5에 plant 부 도출 가능 모든

bonsai를 나타낸다.

Page 44: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

34

Table 7. Figure 5에 도식 plant 부 추출 가능 모든 bonsai 리스트

Bonsai 연 규 (지지도, 신도)

({c1, c2}, {c1 →c2}) A∧¬B→{A, C} (0.40, 1.00)

({c1, c2, c3}, {c1 →c2, c2

→c3}) A∧¬B→{A, C, E, F} (0.30, 0.75)

({c1, c2, c4}, {c1 →c2, c2

→c4}) A∧¬B→{A, C, D, H} (0.10, 0.25)

({c1, c2, c3, c5}, {c1 →c2, c2

→c3, c3

→c5}) A∧¬B→{A, C, E, F, G} (0.20, 0.50)

Page 45: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

35

나. Cultivation 알고리즘 family

본 에 는, 이진 논리식 태 주어진 (즉 ui) 부 ,

plant를 구축 는 알고리즘인 cultivation 알고리즘 소개 다.

cultivation 알고리즘이 요구 는 악 경우 시간

복잡도(Worst-case time complexity)를 도출 고

(Completeness) 당 (Soundness)

증명 다. 개 추가 인 알고리즘 안함 써, plant

모델 다양 용도 분야에 용 지원 고자 다.

Formal context, concept lattice, ui, minsup 그리고

minconf를 입 매개변 는 cultivation 알고리즘 이 우

탐색 법 통해 concept lattice를 탐색 여 주어진 매개변 에

plant를 구축 며, 이에 pseudo code가 Algorithm 1에

어 있다. Cultivation 알고리즘 역 변 인 Cui, Sui, NXT

그리고 CUR 공집합 고, B(D) 모든 formal

concept inter 속 NULL 값 는 작업 가장

행 다. 작업이 료 후, seed genotype에 해당 는

formal concept 탐색, seed를 구축 고 이를 Cui 집합 원소

당 다. seed genotype 속 인 expression level,

expLv[0]과 expLv[1] 함 SetInterExpLv에 해 연산

당 다. 알고리즘 복 과 상이 는 NXT 변

원소는, sepal이 존재 경우는 sepal이, 그 지 않 경우에는

seed 결 다. sepal이 존재 경우, seed를 tail 고,

sepal head 는 arc가 Sui에 추가 다.

Page 46: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

36

Algorithm 1. Cultivation algorithm

Input: D=(T, I, R), B(D), ui, minsup and minconf

Output: P(D, ui, minsup, minconf)=(Cui, Sui)

1. Cui←∅, Sui←∅, NXT←∅, CUR←∅ // global variables

2. Set inter of each concept∈(K) to NULL

3. Find (X, Y)∈B(K) where Y=(uiR)R

4. pTypeseed←ui, gTypeseed←(X, Y) and Cui←{(pTypeseed, gTypeseed)}

5. SetInterExpLv(gTypeseed)

6. if gTypeseed.expLv[0]≥minsup then

7. if Y≠∅ then

8. pTypesepal←Y and gTypesepal←(X, Y)

9. Cui←Cui∪{(pTypesepal, gTypesepal)}, NXT←{(pTypesepal, gTypesepal)}

10. Sui←{(pTypeseed, gTypeseed) →(pTypesepal, gTypesepal)}

11. w←((X, Y).expLv[0], (X, Y).expLv[1])

12. else

13. NXT←{(pTypeseed, gTypeseed)}

14. end if

15. end if

16. while NXT≠∅ do

Page 47: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

37

17. CUR←NXT and NXT←∅

18. for all (pType,gType)∈CUR do

19. CultivateFlowers((pType,gType), gType)

20. end for

21. end while

Algorithm 2. function CultivateFlowers((pType, gType), (X,

Y)∈B(D))

1. NUTRI←∅ and JUNK←∅ // local variables

2. CANDI←{(Xi, Yi)∈B(K) | (Xi, Yi)≺(Xi, Yi) in B(K)}

3. for all (Xi, Yi)∈CANDI do

4. SetInterExpLv((Xi, Yi))

5. if (Xi, Yi).expLv[0]≥minsup and (Xi, Yi).expLv[1]≥minconf then

6. CHECK←{(Xj, Yj)∈B(K) | (Xj, Yj)≺(Xi, Yi) in B(K)}

7. for all (Xj, Yj)∈CHECK do

8. SetInterExpLv((Xj, Yj))

9. end for

10. if {(Xj, Yj)∈CHECK | Xi.inter=Xj.inter}=∅ then

11. NUTRI←NUTRI∪{(Xi, Yi)}

Page 48: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

38

12. else

13. JUNK←JUNK∪{(Xi, Yi)}

14. end if

15. end if

16. end for

17. for all (XNU, YNU)∈NUTRI do

18. if pType=ui then

19. pTypenew←YNU

20. else

21. pTypenew←YNU\gType.intent

22. end if

23. gTypenew←(XNU, YNU)

24. if (pTypenew, gTypenew)∉Cui then

25. Cui←Cui∪{(pTypenew, gTypenew)}

26. NXT←NXT∪{(pTypenew, gTypenew)}

27. end if

28. Sui←Sui∪{(pType, gType) →(pTypenew, gTypenew)}

29. w←(gTypenew.expLv[0], gTypenew.expLv[1])

30. end for

Page 49: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

39

31. for all (XJU, YJU)∈JUNK do

32. if {(XNU, YNU)∈NUTRI | (XJU, YJU).inter⊂(XNU, YNU).inter}≠∅ then

33. Discard (XJU, YJU) from JUNK

34. end if

35. end for

36. for all (XJU, YJU)∈JUNK do

37. CultivateFlowers((pType, gType), (XJU, YJU))

38. end for

Algorithm 3. function SetInterExpLv((X, Y)∈B(D))

1. if (X, Y).inter = NULL

2. (X, Y).inter←X∩uiR

3. (X, Y).expLv[0]←|(X, Y).inter|/|T|

4. (X, Y).expLv[1]←|(X, Y).inter|/|uiI|

5. end if

함 CultivateFlowers는 phenotype과 genotype

(pType, gType)과 formal concept (X, Y)를 입 매개변

며, (X, Y) 개 , nutritious concept 지역 변

NUTRI에, 그 지 않 concept JUNK 변 에 당 다.

NUTRI 원소들 부 생 flower들 매개 변 (pType,

Page 50: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

40

gType) 연결 며, 역 변 NXT 원소 당 어, 다

복 시 용 다. 면 JUNK 변 원소들 NXT 원소들

통해 1차 걸러진 후, 남겨진 원소들 상 함

CultivateFlowers를 출 다. 이 같 복 NXT 집합이

공집합일 지 지속 다.

앞 명 같이, Cultivation 알고리즘 주어진 매개

변 ui에 여, (uiR)R=Y를 intent 는 formal concept (X,

Y)를 찾는 연산 행 다. Concept lattice에 존재 는 모든

formal concept들 [16]에 증명 같이 모 unique

intent를 갖는다. 라 , intent를 key 고 는 formal

concept value 는 (key-value) 태 리스트를 데이

구조 사용 여 formal concept 집합 concept lattice를 운용

경우, formal concept (X, Y)를 찾 해 소요 는 time

complexity는 1이 어 시 있다. 그러므 , cultivation

알고리즘 time complexity는 얼마나 많 formal concept

(X, Y) concept들이 몇 차 나 는가에 라 결 다

있다. 지 는 concept lattice 구조 태에

존 이며, cultivation 알고리즘 worst-case time

complexity는 결국 다 과 같 3가지 조건들 모 만족 는

상황 에 도출 있다:

1. 탐색 시작 인 formal concept (X, Y)가 concept lattice

상 concept인 상황

2. Concept lattice에 존재 는 모든 formal concept들이

nutritious concept들인 상황

Page 51: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

41

3. 모든 i번째 layer에 있는 formal concept들이 상 layer인

(i-1)번째 layer formal concept들과 연결(Fully

connected) 상황.

Figure 6. Upper-lower neighbor 계 인 lattice

Cultivation 알고리즘 worst-case time complexity

원 도출 명 해 Table 8에 들 용 며,

3가지 조건 모 만족시키는 concept lattice를 들

사용 여 Figure 6 통해 도식 다. Figure 6에 인

Page 52: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

42

있는 같이, cultivation 알고리즘 worst-case time

complexity 연산 횟 는 concept lattice 1번째 마지막

layer 사이에 존재 는 formal concept들 간 upper-lower

neighbor 계 값이라 있 며, 이를 를

통해 면 ‘ ∑ =k-2= 를 만족 며

∏ 를 라’ 있다(단, k는 concept

lattice내에 존재 는 concept ). 이는 연구 논 [24]에

합에 곱 (Maximizing the product of

summands) 벽 게 일 는 이므 ,

CULTIVATION 알고리즘 worst-case time complexity는

아래 같이 도출 있다:

l 만약 를 3 나 었 나 어 떨어지는 경우,

worst-case time complexity는 3( )/ ,

l 만약 를 3 나 었 나 지가 1인 경우, worst-

case time complexity는 2 ∙ 3( )/ 그리고

만약 를 3 나 었 나 지가 2인 경우, worst-case

time complexity는 2 ∙ 3( )/ 이다.

Page 53: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

43

Table 8. Cultivation 알고리즘 worst-case time complex

도출에 용 리스트

Notation Meaning Example

n Concept lattice layer n=10:

10개 layer를 갖는

concept lattice

mi i번째 layer formal concept

85: 8번째 layer는

5개 formal

concept들 구

i_j i번째 layer j번째 formal

concept 지시자

8_4: 8번째 layer

4번째 formal

concept

새 운 알고리즘 안 시, 드시 증명해야 가지

사항 알고리즘 (Completeness) 당

(Soundness)이다. 알고리즘 이란, 주어진 입 에 부합 는

모든 답 락 없이 추출함 미 며, 당 이란, 알고리즘이

생 해 내는 모든 결과 답임 미 다.

당 증명. 만약 CULTIVATION 알고리즘이 도출해 낸 연

Page 54: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

44

규 ui→Y1 복 연 규 이라 가 면, Y1⊂Y2이며

Y1R∩uiR=Y2

R∩uiR를 만족 는 Y2가 존재해야 다. Cultivation

알고리즘 nutritious concept들 부 연 규 들 추출함

formal concept (Y1R, Y1)이 concept lattice 내에 존재 다.

속 개 (이 attribute concept)[16] 에 라, (Y2R,

(Y2R)R) 역시 concept lattice 내에 존재 게 다. 가 Y1⊂Y2에

해, formal concept (Y1R, Y1) (Y2

R, (Y2R)R)

superconcept이다. 그러나 3에 해 (Y2R, (Y2

R)R) 존재

없 며, 이는 Y2 역시 존재 없 함 다. 그러므 ,

cultivation 알고리즘 통해 도출 ui→Y1 복 연

규 이라 없다. □

증명. Cultivation 알고리즘이 추출 지 못 복 연

규 이 아닌 ui→Y가 존재 다고 가 자. Attribute concept

에 라, formal concept (YR, (YR)R)이 concept lattice 내에

존재 다. cultivation 알고리즘 (uiR, (uiR)R)

subconcept들 부 연 규 추출 므 , (YR, (YR)R) ⊀(uiR,

(uiR)R) 계가 립 게 다. 이 , uiI 주어진 ui를

만족 는 모든 개체들이 공 는 속 집합임 , 속 집합 uiI는

ui를 는 연 규 결 이 다. 이 , 를

Page 55: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

45

ui 는 근사 연 규 결 uiR∪Z(단, Z⊆M 그리고

Z≠∅)이 다. 그러므 복 연 규 이 아닌 ui→Y 결 Y

역시 uiR∪Z 있 며(즉, Y=uiR∪Z), formal concept

(uiR, (uiR)R) subconcept이 아닌 formal concept (YR, (YR)R)

역시 ((uiR∪Z)R, ((uiR∪Z)R)R) 있다. 그러나,

(uiR∪Z)R는 uiR 부분 집합임 , (YR, (YR)R) (uiR, (uiR)R)

subconcept이 다. 고 , cultivation 알고리즘이 생 지 못 는

복 연 규 이 아닌 ui→Y는 존재 없다. □

앞 명 cultivation 알고리즘 아래에 같이,

사용자 상 작용 (User interaction) 통해 단계

(Stepwise) 연 규 추출 는 식에

알고리즘이다:

1. 사용자가 이진 논리식 태 ui를 다.

2. Cultivation 알고리즘 사용자에게 ui에 부합 는 sepal

flower들 공 다.

3. Cultivation 알고리즘이 공 sepal flower ,

사용자가 심 있는 것 택 다.

4. 3번째 단계에 사용자가 택 것 부 다른

flower들 사용자에게 공 다.

Page 56: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

46

5. 3단계 4단계를 복 다.

그러나, 단계 식 결 공 지 않고, ui에 부합 는

모든 결 들 일 요 는 사용자들이 존재 있다.

이 같 사용자들 해 nbo-cultivation 그리고 ibo-

cultivation이라 명명 2개 알고리즘 소개 다.

Algorithm 4. nbo-cultivation Algorithm

Input: D=(T, I, R), B(D), ui, minsup 그리고 minconf

Output: a set of consequents, C={(Key, Value)}

1. C←∅

2. for all (X, Y)∈B(D)

3. sup←|X∩uiR|/|T| and conf←|X∩uiR|/|uiR|

4. if sup≥minsup and conf≥minconf

5. Find (Key, Value) such that {(Key, Value)∈R | Key= X∩uiR }

6. if (Key, Value) = NULL

7. C←C∪{(X∩uiR, Y)}, (X∩uiR, Y).sup←sup and

(X∩uiR, Y).conf←conf

8. else

9. if Value⊂Y

Page 57: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

47

10. (X∩uiR, Y).sup←sup and (X∩uiR, Y).conf←conf

11. Replace (Key, Value)∈C with (X∩uiR, Y)

12. end if

13. end if

14. end if

15. end for

Algorithm 5. ibo-cultivation Algorithm

Input: D=(T, I, R), B(D), ui, minsup 그리고 minconf

Output: a set of consequents, C={(Key, Value)}

1. C←∅ // global variable

2. Set isVisited of each concept∈B(D)

3. Find (X, Y)∈B(D) where Y=(uiR)R and Set (X, Y).isVisited←true

4. if |X∩uiR|/|T|≥minsup then

5. if Y≠∅ then

6. C←{(X∩uiR, Y)}, (X∩uiR, Y).sup←|X∩uiR|/|T| and

(X∩uiR, Y).conf←1

7. end if

8. CANDI←{(Xi, Yi)∈B(D) | (Xi, Yi)≺(X, Y) in B(D)}

Page 58: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

48

9. AddBonsais(CANDI)

10. end if

Algorithm 6. function AddBonsais(CANDI⊂B(D))

1. for all (X, Y)∈CANDI

2. (X, Y).isVisited←true

3. sup←|X∩uiR|/|T| and conf←|X∩uiR|/|uiR |

4. if sup≥minsup and conf≥minconf then

5. Find (Key, Value) such that {(Key, Value)∈R | Key= X∩uiR }

6. if (Key, Value) = NULL then

7. C←C∪{(X∩uiR, Y)}

8. (X∩uiR, Y).sup←|X∩uiR|/|T|, (X∩uiR, Y).conf←|X∩uiR|/|uiR |

9. else

10. if Value⊂Y then

11. (X∩uiR, Y).sup←sup and (X∩uiR, Y).conf←conf

12. Replace (Key, Value)∈C with (X∩uiR, Y)

13. NewCANDI←{(Xi, Yi)∈B(K) | (Xi, Yi)≺(X, Y) ∧

(Xi, Yi).isVisited=false}

14. AddBonsais(NewCANDI)

Page 59: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

49

15. end if

16. end if

17. end if

18. end for

Nbo (Naïve bonsais only)-cultivation 알고리즘 , 그

명칭에 추 있는 같이, 단 법 주어진 ui에

부합 는 결 들만 추출 는 알고리즘이다. Concept lattice

구조 인 특 고 지 않고, formal concept 집합 원소들

며, 복 이지 않 연 규 들 추출 다. 면, ibo

(Intelligent bonsais only)-cultivation 알고리즘 , concept

lattice 구조 인 특 용 여, 복 이지 않 연

규 들 추출 다. 향 그래 태인 plant를 산출 는

cultivation 알고리즘과는 달리, 리스트 태 bonsai(결 )들만

추출함에 차이가 있다 있다.

본 논 에 지 지 소개 cultivation, nbo-cultivation

그리고 ibo-cultivation 알고리즘 cultivation algorithm family라

칭 다. nbo-cultivation 알고리즘 경우, formal concept들

여 연 규 들 추출 다. 고 , formal concept 가

고 formal concept 간 super-subconcept 계 가 많

효과 동작 다 있다. 면 concept lattice 구조를

용 는 ibo-cultivation 알고리즘 경우, formal concept 가

많고, super-subconcept 계 가 보다 높 능

Page 60: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

50

내는 특 지닌다. cultivation 알고리즘 경우, 사용자

상 작용 통해, 단계 인 결 추출 추천이 요 상황에

합 알고리즘이라 있다.

2. 동 데이 상 장 연 규 추출 법

지 지, 업데이트 도 가 거나 업데이트 간격이

상 데이 를 상 장 연 규 추출

법 들에 해 논 다. 데이 를 상 동작 는

cultivation algorithm family 경우, concept 추출 concept

lattice 구축과 같 사 작업 (Preprocessing)들이 료 후에

동작 는 커니즘 특 갖고 있다. 다시 말해, cultivation

algorithm family는, 사 작업 통해 구 concept 집합

concept lattice 탐색 통해, 이진 논리식 태 주어진 에

부합 는 복 이 결 리스트를 달 는 근법이라

있다. 그러나 concept 집합 도출 concept lattice 구축

높 복잡도를 요구 며, 이는 번 게 업데이트 는 데이 (즉.

동 데이 )를 상 는 연 규 실시간 추출에

있어 는 그 계 이 명 다. 이에 본 에 는, 데이

업데이트 주 가 짧거나, 업데이트 도가 상 높 동

데이 를 상 , 복 이 없는 장 연 규 (즉, 가

이진 논리식 태) 집합 추출 는 알고리즘들 소개 다. 동

데이 상 장 연 규 추출 법 , (1) 일 추출

그리고 (2) 단계 추출 법 2가지 태 시 다.

Page 61: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

51

가. 일 추출 법

동 데이 를 상 는 장 연 규 일 추출

법 , 연 규 추출 법 가장 많이 인용 고 용

charm 알고리즘[19]를 용 여 손쉽게 도출 있다. Charm

알고리즘에 사용 는 4가지 속 다 과 같다:

∙ 주어진 아이 집합 X, Y에 여,

1. XR=YR인 경우,

l X를 X∪Y 체 고, Y는 삭 다.

2. XR⊂YR인 경우,

l X를 X∪Y 체 고, Y는 지 다.

3. XR⊃YR인 경우,

l X는 지 고, Y를 X∪Y 체 다.

4. 1-3이 아닌 경우,

l X Y 모 지 다.

에 언 4가지 속 들 , charm

알고리즘 번 닫힌 아이 집합 효 추출 며,

추출 아이 집합 결 이 모 집합 태 구

복 없는 연 규 리스트 생 에 용 다. 그러나 본

연구에 안 ‘이진 논리식 태 를 갖는 연 규

리스트 생 ’에 이를 용 해 는, 이진 논리식 는

추가 인 차 법이 요구 며, 이를 해 본 논 에 는

intersection (Filter)를 도입 다. 아래에 알고리즘 7

Page 62: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

52

batch–D는 존 charm 알고리즘 본 동작 원리를 차용 고

intersection 를 용, 주어진 이진 논리식 태 에

부합 는 복 없는 연 규 리스트를 추출 는 pseudo

드이다.

Algorithm 7. batch–D Algorithm

Input: D=(T, I, R), ui, minsup 그리고 minconf

Output: a set of consequents, C

1. C←∅ // global variable

2. Seed←{{t}×({t}R∩|uiR|) | t∈T ∧ |{t}R|∩|uiR|/|T|≥minsup}

3. if Seed≠ ∅ then

4. ExtractConsequents(Seed)

5. end if

Algorithm 8. Function ExtractConsequents(Nodes)

1. for each A×B∈Node

2. newNodes←∅ // local variable

3. for each C×D∈Node

4. if A×B.index < C×D.index then

5. if |B∩D|/|T|≥minsup and |B∩D|/|uiR|≥minconf then

6. if B=D then

7. Remove C×D from Node

8. Replace all A as A∪C in Nodes and newNodes

9. else if B⊂D then

Page 63: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

53

10. Replace all A as A∪C in Nodes and newNodes

11. else if B⊃D then

12. Remove C×D from Node

13. newNodes←newNodes∪{A∪C×B∩D}

14. else then

15. newNodes←newNodes∪{A∪C×B∩D}

16. end if

17. end if

18. end for

19. if newNodes≠ ∅ then

20. ExtractConsequents(newNodes)

21. end if

22. if {X×Y∈C | B=Y}=∅ then

23. C←C∪{A×B}

24. end if

25. end for

Batch-D 알고리즘 데이 베이스 D, 소 지지도

신도인 minsup과 minconf 그리고 D에 이진 논리식 ui를

입 취 여, 동 데이 베이스 (Dynamic database) 부 ,

주어진 ui를 는 복 없는 연 규 들 결

일 추출 는 알고리즘이다. Batch-D 알고리즘 산출

역 변 C에 장 어 달 며, 단일 아이 원소 는

아이 집합과, 해당 아이 소 transaction 집합과 ui를

만족 는 transaction 집합 집합 여, 집합

원소 가 충분히 클 경우, 단일 아이 집합과 집합 집합

Seed라는 변 원소들 다. 단일 아이 집합과

단일 아이 집합 소 transaction 집합 알고리즘

Page 64: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

54

시작 는 존 charm 알고리즘과 차별 이라 있 며, 이

과 intersection 라 지칭 다. 이후 동작 커니즘

charm 알고리즘과 동일 다. 알고리즘 동작 에 Seed 변

원소들에 주어진 이진 논리식인 ui가 , 이후 알고리즘

동작 자연스 ui를 복 없는 연 규 들 추출

도 다. 핵심 함 인 ExtractConsequents 함 는, 이상

새 운 아이 집합 × transaction 집합이 도출 지 않 지

재귀 출 며, 이 우 탐색 태 동작 다 있다.

Figure 7 , Table 1에 데이 베이스를 상 , ui가 A∧

¬B , minsup=0.1, minconf=0.2 주어 경우, batch-D

알고리즘 동작 식 단계 도식 여 것이다

(검 별 모양과 원 해당 단계에 조인 연산 연산자들

나타낸다). Figure 7에 인 있는 같이, 가장

주어진 ui, A∧¬B를 만족 는 transaction 집합과, 각 아이 들

만족 는 transaction 집합 간 intersection 연산 통해, 단일

아이 집합×transaction 집합 도출해 낸다. 이 연산 산출 인

{A×1457, B× ∅, C×1457, D×1, E×457, G×57, H×1, I× ∅, J×

∅ }는, ui를 여 재 단일 아이 해당 아이

transaction 집합이라 있다. 다시 말해, 존 데이 베이스

내에 존재 는 아이 과 transaction 간 체 계를, 주어진

이진 논리식 ui를 만족 는 transaction들만 고 여, 재

결과라 있다. 이후 batch-D 알고리즘 차는 charm

알고리즘 동작 커니즘과 동일 게 동작 다. Transaction 집합

부분이 공집합인 B × ∅ , I × ∅ , J × ∅ 는 조인 연산에 고,

지 않 아이 들 , 차 조합 시작 다. 가장

Page 65: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

55

A×1457과 C×1457 조인 게 며, 이는

속 1 만족시킴 , A×1457를 AC×1457

업데이트 고, C×1457 이상 고 지 않는다. 다 ,

AC×1457과 D×1 조인 게 며, 이는

속 3 만족 는 경우이므 , D×1 ACD×1 체 고, 이를

AC×1457 자식 추구 다. 다 AC×1457

E×457, F×457, H×1 그리고 G×57 모 속 3

만족함 , 이들 ACE×457, ACF×457, ACH×1 그리고

ACG×57 체 후, AC×1457 자식 추가 다. 이후,

AC×1457 자식들끼리에 조인 연산 재귀 행 여

batch-D 알고리즘 종 산출 도출 다. Figure 7에 인

있는 같이, batch-D 알고리즘이 산출해내는 결과 값인

ui에 부합 는 결 리스트는, cultivation 알고리즘 산출 과

동일 {{A, C}, {A, C, D, H}, {A, C, E, F}, {A, C, E, F, G}}임

인 있다 ( 지 않 아이 집합들). 개 리스트 추출

개 격자 도출 등과 같 사 작업이 요구 는 cultivation

algorithm family 는 달리, batch-D 알고리즘

데이 베이스 부 직 결 들 추출함 , 동 인

데이 베이스에 보다 합 식이라 있다.

Page 66: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

56

Figure 7. Batch-D 알고리즘 동작

Page 67: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

57

나. 단계 추출 법

앞 에 소개 batch-D 알고리즘 , 개 리스트 인

개 격자 같 특 데이 구조 ( 인덱스 구조)에

독립 동작함 , 동 인 데이 베이스 부 장 연

규 추출 실시간 행 알고리즘이라

있다. 그러나, 동 데이 용량이 거 해 질 경우, 주어진 이진

논리식에 부합 는 모든 결 리스트들 일 추출 해

소요 는 시간 연 증가 며, 이는 이진 논리식 통해

추천 리스트를 얻고자 는 사용자에 답 시간 지연

미 다. 고 , 동 데이 베이스를 상 , 실 시간 인 답

요 는 경우, 보다 효 동작 는 알고리즘이 요구 다

있다. 본 에 는 이 같 요구사항 만족시키고자, 동

데이 베이스 상 장 연 규 추출 일 이 아닌,

단계 추출 는 알고리즘 안 다. 단 시간 내에

단계 소 장 연 규 들만 추출 여 사용자에게

달 고, 달 규 사용자가 택 규

추가 인 장 연 규 들 다 단계에 추출 여

달함 써, 실 시간 인 답 지원함과 동시에, 락 없는

장 연 규 추출 지원 고자 다.

동 데이 를 상 단계 인 장 연 규 추출

법 핵심 아래에 주어지는 3가지 속 이라

있다:

∙ 임 동 데이 베이스 D=(T, I, R)에 개

아이 집합×trascation 집합인 A×B 그리고 C×D에 여 (단,

|B|≥|D|이고, A×B C×D는 ‘독립’ ‘ 존’ 값

Page 68: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

58

는 상태 변 를 가짐),

1. 만약 B=D이고 A × B 상태가 독립이면, A × B를

(A∪C)× B 업데이트 고, C × D 상태를 존

함.

2. 만약 B⊃D이고 A × B 상태가 독립이면, C × D를

A × B 자식에 추가 고, C × D 상태를 존

함.

3. 1과 2 모 해당이 없 경우,

l 만약 A×B 상태가 독립이면, C×(B∩D)를 A×B

자식에 추가함.

l 만약 C×D 상태가 독립이면, A×(B∩D)를 C×D

자식에 추가함.

에 시 3가지 속 들 , 동 데이 부 장

연 규 단계 추출 해 본 연구에 새롭게 안

것 써, 아이 집합과 transaction 집합 곱이, 독립

존이라는 값 가질 있는 추가 인 상태 변 를 갖는다. ,

상태 변 값에 라 각 다른 조인 연산 행 다. Charm

알고리즘에 용 법 과 차별 는 다른 , 개

아이 집합×trascation 집합인 A×B 그리고 C×D를 조인 경우,

B에 속 는 transaction들 가 D에 속 는 transaction들

보다 많거나 같아야 다는 이라 있다. 이는 주어진 이진

논리식 ui에 부합 는 복 없는 결 리스트를 단계 추출

시 요구 는 연산 양 소 것 써, pseudo

드를 소개 후, 그 효과를 를 통해 다. 아래에

Page 69: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

59

알고리즘 genFirstGen , 앞 소개 3가지 속

고안 사용자 부 주어진 이진 논리식 ui에 부합 는

결 리스트 , 상 단계 결 추출 는 알고리즘이다.

데이 베이스 D, 이진 논리식 ui, 값 minsup과 minconf를

입 는 genFirstGen 알고리즘 살펴보면, 단 3 라인

구 아주 단 알고리즘이라는 것 직 인지

있다. 사실 genFirstGen 알고리즘 라인 1에

intersection 를 개 아이 원소 는

아이 집합 , ui를 만족 는 transaction들과 해당 아이

만족 는 transaction들 집합이 충분히 큰 아이 집합

걸러내는 작업만 행 는 알고리즘이라 있다. 이 작업

결과가 Seed라는 변 값들 당 며, 이진 논리식 태

ui에 는 첫 번째 단계 결 리스트는, Seed를 매개

변 , 함 genNextGen 출 통해 도출 다.

Algorithm 9. genFirstGen Algorithm

Input: D=(T, I, R), ui, minsup 그리고 minconf

Output: a set of A⊆I×B⊆T, FirstGen

1. Seed←{{t}×({t}R∩|uiR|) | t∈T ∧ |{t}R|∩|uiR|/|T|≥minsup}

2. FirstGen←genNextGen(Seed)

3. return FirstGen

Algorithm 10. Function genNextGen(Nodes)

1. Sort A×B∈Nodes in descending order based on |B|

Page 70: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

60

2. for each A×B∈Nodes

3. A×B.state←ind

4. A×B.child←∅

5. end for

6. for each Nodes[i]=A×B∈Nodes where A×B.state=ind

7. for each Nodes[j]=C×D∈Nodes where i < j

8. inter←B∩D

9. if |inter|/|T|≥minsup and |inter|/|uiR|≥minconf then

10. if B=D and A×B.state=ind then

11. A←A∪C and C×D.state←dep

12. else if B⊃D and A×B.state=ind then

13. A×B.child←A×B.child∪{C×D} and C×D.state←dep

14. else then

15. if A×B.state=ind then

16. A×B.child←A×B.child∪{C×(B∩D)}

17. end if

18. if C×D.state=ind then

19. C×D.child←C×D.child∪{A×(B∩D)}

20. end if

21. end if

22. end if

23. end for

24. end for

25. NextGen←∅

26. for each A×B∈Nodes

27. if A×B.state=ind then

28. NextGen←NextGen∪{A×B}

29. end if

30. end for

return NextGen

Page 71: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

61

함 genNextGen 매개 변 Nodes 원소들인 아이

집합×transaction (즉, A×B)집합들 transaction 집합들 개 를

내림차 행 다. , A × B 상태를

독립 (ind: independent) 그리고 A×B 자식 변 를 공집합

다. 다 , 이 료 Nodes 원소들 각각

여, 앞 3가지 속 에 라 조인 연산

행 고, 조인 연산 료 후, 상태 변 값이 독립인 원소들만

종 산출 변 nextGen에 당 여, 함 결과 값

다. 결국 nextGen 변 에는 아이 집합 A transaction

집합 B 들이 포함 어 있 며 (즉, A×B), 사용자에게는 A만

가시 여 첫 번째 단계 결 리스트 달 고, B를 용 여,

해당 규 지지도 신도를 공 다. 다 단계 결 리스트

도출 , nextGen 값 사용자가 택 특 아이 집합

A 부 시작 다. 만약 사용자가 특 아이 집합 A를 심 있는

결 택 경우, A×B 자식 집합 매개 변 여,

함 genNextGen 출 여 번째 단계 결 리스트를 추출,

이를 사용자에게 달 게 며, 함 genNextGen 이 n

단계 지 재귀 출 있다. 단, 사용자가 택 아이

집합에 부합 는 아이 집합과 transaction 집합 자식이

공집합일 경우, 단계 추출 함 재귀 출 종료 게 다.

Figure 8 통해 Table 1에 데이 베이스를 상 ,

ui가 A∨B , minsup=0.1, minconf=0.2 주어 경우,

genFirstGen 알고리즘 통해 첫 번째 단계에 결 리스트를

도출 는 과 도식 다 (검 별 모양과 원 해당

Page 72: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

62

단계에 조인 연산 연산자들 나타내며, 검 씨체는

독립인 요소를, 회색 씨체는 존인 요소를 각각 지칭함). Figure

8 , intersection 연산 거 Seed 집합 부 시작 다.

그 후, 링이 료 요소들 transaction 집합 부분 크 를

내림 차 결과가 번째 스에 어

있 며, 이 , quick sorting과 같 효 인 법 용

있다. 모든 요소들 상태 값 독립 상태 어 있다 (

번째 스 모든 요소 씨체: 검 ). 조인 연산 시작 ,

A×14578과 C×14578 조합 시작 며, 이는 속 1

만족함 A×14578를 AC×14578 체 고, C×14578

상태를 존 변경 다 (회색 씨체). 다 AC×14578

B×2368 조합 살펴보면, 속 3 만족함과 동시에,

요소 모 독립임 , B×8 AC×14578 자식 , A×8

B×2368 자식 각각 추가 다. J×36 외 E~G, H

그리고 I를 아이 집합 부분 는 요소들과 AC×14578는

속 2를 만족함 , 이들 모 AC×14578 자식

추가 다. C×14578 존 상태임 건 뛰고, B×2368

조인 연산 행 다. Transaction 부분이 공집합인 E,

F는 지나 며, 공집합이 아닌 D×18과는 속 3 만족 며

B×2368이 독립임 D×8 B×2368 자식 추가 다.

마지막 , B×2368 속 2 계에 있는 J×36 I×8

B×2368 자식 추가 고, J×36 상태를 존 변경 면,

알고리즘 GenFirstGen 종료 게 다. 사용자에게는 개

결 집합 {A, C} 그리고 {B}가 첫 번째 단계 장 연

규 결 리스트 주어지게 다.

Page 73: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

63

Figure 8. GenFirstGen 알고리즘 동작

Page 74: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

64

사용자에게 주어진 개 결 집합{A, C} 그리고 {B} ,

{B}를 택 경우, B×2368 자식 집합인 {AC×8, D×8,

J×36, I×8} 매개 변 여, 함 genNextGen 출,

Figure 8 부분부 동일 게 용 어, 종 {J}

그리고 {A, C, D, I}가 번째 단계 장 연 규 결

리스트 주어진다. 결국, 사용자 부 주어진 이진 논리식 태

A∨B에 해당 는 결 , B를 포함 는 결 리스트는, {B},

{B, J} 그리고 {A, B, C, D, I}가 단계 장 연 규 추출

알고리즘 부 주어진다 있다. Figure 9는 Figure 8에

첫 번째 단계 추천 아이 집합 , {B}를 택

시, 번째 단계에 추천 는 아이 집합 생 과 도식

모습이다.

Figure 9. 함 genNextGen 동작

Page 75: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

65

결 과

본 장에 는, 지 지 안 모델 알고리즘들

효용 에 잠재 평가 고자 다. 이를 해, 본 논

통해 소개 모델 알고리즘들 , FARM (FCA-based

Association Rule Miner) 그리고 GARM (Generic Association

Rule Miner)라 명명 2개 시스 구 다. FARM

데이 상 장 연 규 추출 지원 시스 이며,

GARM 동 데이 상 장 연 규 추출 지원 는

시스 이다. 구 시스 들 , 다양 연구들에

용 다 데이 집합 용 여, 존 법 과 본 논

통해 안 법 다각도 인 능 평가를 행 며,

생명 분야 논 들에 타 데이 를

공 는 pubmed (http://www.ncbi.nlm.nih.gov/pubmed)

스를 용 여, 인 생명 분야 인 BMC

bioinformatics (이 BMC) International Journal of Medical

Informatics (이 IJMI)에 출 모든 논 들 타 보를

용 여, 시스 들 생명 분야에 용도를 검증 다.

Page 76: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

66

1. 시스 계 구

데이 상 장 연 규 추출 지원 시스 인 FARM

, Figure 10에 인 있는 같이, 데이 베이스를 생 ,

편집, 장 불러 있는 데이 베이스 에 능

지원 며, 식 개 분 핵심 데이 구조인 개 들 추출 고

개 격자를 구축 는 능 지원 다. , 이진 논리식 태

가 주어 시, 이에 부합 는 장 연 규 집합 개

집합 개 격자 부 추출 는 능 지원 다. 동 데이

상 장 연 규 추출 지원 시스 인 GARM 역시,

데이 베이스 에 능 지원 다. GARM 경우, 본 논

통해 안 법 이외에도, 소 지지도인 minsup만이 주어

경우, 주어진 소 지지도를 만족 는 모든 닫힌 번 아이

집합 추출 는 능 , 소 신도 minconf가 추가

주어 경우, 소 지지도 신도를 만족 는 닫힌 연 규

집합 추출 는 능 부가 지원 다. 뿐만 아니라, 이진

논리식 작 에 지 않 사용자를 해, 집합 태 를

있는 능 추가 지원 고, 집합 태

에 부합 는 결 리스트를 추출 달 다. 마지막 , 본

Page 77: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

67

Figure 10. FARM과 GARM 시스 구 도 름도

Page 78: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

68

Figure 11. FARM 구동 모습

Page 79: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

69

Figure 12. GARM 구동 모습

Page 80: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

70

논 에 안 , 동 데이 상 장 연 규 추출

일 그리고 단계 추출 지원 는 능이 포함 어 있다.

Figure 11 FARM 실 구동 모습이다. Figure 11에 인

있는 같이, FARM 크게 4가지 구 알

있다. 좌 상단 데이 베이스 에 써,

transaction과 아이 추가 삭 능 지원 고, 장

불러 능 행 다. 우 상단 , 주어진

데이 베이스 부 추출 개 들 이 태 가시 며,

좌 단 추출 개 들 사이 상- 계를

는 개 격자를 가시 다. 마지막 , FARM 우

단 에는, 본 논 에 안 는 plant 모델

데이 상 장 연 규 추출 알고리즘 집합인 cultivation

algorithm family를 용 있는 4개 탭 (Tab)들 구 어

있다. 번째 시스 인 GARM 구동 모습 Figure 12를 통해

살펴볼 있 며, GARM 역시 데이 베이스 에 이 상단에

존재 며, 이를 통해 데이 베이스 생 , 편집 장과

불러 능 행 있다. GARM 단 , (1) 닫힌

번 아이 집합 추출 탭, (2) 닫힌 (즉. 복 없는) 연

규 추출 탭, (3) 집합 에 부합 는 닫힌 연 규 추출

탭 그리고 (4) 동 데이 상 장 연 규 추출 탭,

Page 81: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

71

4개 상 탭들 구 다. 이 , (3)과 (4) 탭 일 그리고

단계 추출 지원 는 탭들 양분 다. FARM GARM

모 Java 언어 구 었 며, 특히, 이진 논리식 태

법 처리 부분 JavaCC를 용 여 구 다.

2. 능 평가

가. 데이 집합

본 논 에 안 알고리즘들 능 해, sushi

데이 (http://www.kamishima.net/sushi/), mushroom

데이 (https://archive.ics.uci.edu/ml/datasets/Mushroom), chess

데이 (https://archive.ics.uci.edu/ml/datasets/Chess+(King-Rook+vs.+King-Pawn),

nursery 데이 (https://archive.ics.uci.edu/ml/datasets/Nursery)

그리고 soybean 데이 (https://archive.ics.uci.edu/ml/datasets/Soybean+(Large))를

용 다. Sushi 데이 는 5000명 지원자에게 100개

sushi에 자료 태 데이 이며, 지원자들 각 sushi 별

0-4 사이 를 당함 써 도를 다. 본

연구에 는 특 지원자가 특 sushi에 해 2, 3, 4

부가 경우, 해당 sushi를 다고 가 고, 0, 1 그리고

Page 82: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

72

-1( 부가 지 않 ) 당 경우, 지 않는다고

가 여, sushi formal context를 작 다. Mushroom 데이

경우, 8124개 mushroom과 mushroom에 23가지

카 고리 구 데이 이다. 모든 카 고리 보를 카 고리

명-값 태 이진 속 변경 며, 변경 카 고리 명-

값 mushroom 간 계를 , mushroom에

formal context를 구축 다. Chess, nursery, soybean 데이

역시, mushroom과 사 과 통해 formal context

변 었다.

변 formal context 태 각 데이 에 해, 2장에

ui 생 규 에 라, 1,562가지 ui 집합 구 다.

1,562가지 ui 집합 구 에는, 각 데이 를 구 는 속 ,

개체들에 해 가장 번히 소 는 속 상 5개가

용 었 며, 실험에 요구 는 다른 매개 변 인 minsup과

minconf 집합 경우 0.001 – 0.010 범 내에 0.001 interval

어 구축 다. 단, 데이 복잡도가 가장 높 soybean

데이 에 minsup-minconf 집합 경우 0.01 – 0.10 범

내에 0.01 interval 어 구축 다. 본 논 에 용

데이 집합 http://bike.snu.ac.kr/farm에 인 다운 드가

가능 다.

Page 83: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

73

나. 상 알고리즘

본 논 에 안 알고리즘과 능 상 써, charm,

direct, titanic 그리고 qtr-submergence 알고리즘 다.

Direct 알고리즘 이진 논리식 태 사용자 심사를

는 능 지원 며, 그에 합 번 아이 집합

공 다. 면 charm, titanic 그리고 qtr-submergence

알고리즘 경우, 이진 논리식 태가 아닌 집합 태 사용자

심사 minsup만 고 여 닫힌 번 아이 집합들

추출 다. qtr과 submergence 알고리즘 , 본 연구에 안 는

알고리즘들과 가장 사 태 동작 는 알고리즘 (개 격자

탐색)이라 있 나, 에 언 같이, 집합 태

사용자 심사만 고 다는 에 차이가 있다. 그러므 ,

charm, direct, titanic 그리고 qtr submergence 알고리즘

산출 에 여, 이진 논리식 태 주어진 ui에 부합 는 않는

부분 pruning 는 작업이 요구 며, 이는 각 알고리즘 통해

도출 아이 집합 지지도를 재계산 는 과 게 다.

면 본 논 에 안 알고리즘인 nbo, ibo-cultivation

알고리즘과 qtr-submergence 알고리즘 경우 개 격자 구축

다. 지 지 실험 데이 집합, 매개변 집합

그리고 알고리즘 집합 Figure 13 통해 리 여, 실험

Page 84: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

74

Figure 13. 데이 상 장 연 규 추출 알고리즘 능 실험 구조

Page 85: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

75

체 인 름 가시 다.

다. 실험 결과

Figure 14는 sushi 데이 에 해 6개 알고리즘이 소모

행 시간에 그래 를 나타낸다. qtr, submergence 그리고

nbo, ibo-cultivation 알고리즘 경우, 개 격자 구축

함 , 이 소모 시간 추가 여 행 시간 계산 다.

Figure 14에 인 있는 같이, titanic과 direct

알고리즘 , 타 알고리즘에 여 히 낮 능 보임 알

있다. Figure 15는 각 알고리즘 별 추출 연 규 를

나타낸다. Sushi 데이 집합 복잡도가 가장 낮 데이 이므 ,

어떠 알고리즘 능이 우월 지 직 단 어 다.

그러나, titanic과 direct 알고리즘 능 히 낮게

었 므 , 이후 실험에 는 다.

Figure 16과 17 chess 데이 에 실험 결과를 나타내는

그래 써, 본 연구에 안 알고리즘인 nbo, ibo-cultivation

알고리즘 능이 우 함 조 명 히 인 있다,

Chess 데이 에 여, qtr과 submergence 알고리즘 능이

히 나 것 인 어, 알고리즘 차후 실험에

Page 86: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

76

었다. Figure 18-23는, 복잡도가 높 데이 집합에 속 는

mushroom, nursery 그리고 soybean 데이 에 여, 가장

강 경쟁 알고리즘인 charm과 본 논 에 안 알고리즘

간 규 추출 소요 시간 추출 연 규 에

그래 를 포함 다. 그래 들 통해, nbo, ibo-cultivation

알고리즘이 charm 알고리즘과 여, 복 연 규

추출 지 고, 보다 른 시간 내에 장 연 규

추출함 명 게 인 있다.

Figure 14. Sushi 데이 에 알고리즘 별 소요 시간

Page 87: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

77

Figure 15. Sushi 데이 에 알고리즘 별 추출 연 규

Figure 16. Chess 데이 에 알고리즘 별 소요 시간

Page 88: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

78

Figure 17. Chess 데이 에 알고리즘 별 추출 연 규

Page 89: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

79

Figure 18. Nursery 데이 에 알고리즘 별 소요 시간

Figure 19. Nursery 데이 에 알고리즘 별 추출 연 규

Page 90: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

80

Figure 20. Mushroom 데이 에 알고리즘 별 소요 시간

Figure 21. Mushroom 데이 에 알고리즘 별 추출 연 규

Page 91: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

81

Figure 22. Soybean 데이 에 알고리즘 별 소요 시간

Figure 23. Soybean 데이 에 알고리즘 별 추출 연 규

Page 92: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

82

라. 동 데이 상 능 평가

본 에 는, 본 논 통해 소개 알고리즘들 간 능

를, 동 데이 를 상 행 며, 그 결과를 보고 다,

동 데이 계는 앞 실험에 용 데이 집합 ,

8,124개 mushroom (transaction)과 119개 아이 들

구 mushroom 데이 를 다. 1,000개

transaction들 구 mushroom 데이 를 시작 , 1,000개씩

transaction들 차 늘 업데이트 여, 2,000, 3,000, ...,

8,124개 transaction들 구 동 mushroom 데이 를

구 고, 각 업데이트 시마다, 100개 이진 논리식들이 주어

시, 복 없는 연 규 추출 해 소요 는 시간

다. Figure 24는 동 mushroom 데이 에 ,

데이 상 장 연 규 알고리즘인 ibo-cultivation과 동

데이 상 일 장 연 규 추출 알고리즘인 batch-D

행 시간에 그래 이다. Figure 24 그래 에 인

있는 같이, 업데이트가 번 데이 를 상 는, 동

상 데이 를 고 여 계 batch-D 알고리즘 능이

뛰어남 명 히 인 있었다. , 동 데이 를 상

고안 장 연 규 일 추출 법 인 batch-D 단계

추출 알고리즘인 genFirstGen 알고리즘 실험과 동일 실험

Page 93: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

83

Figure 24. 동 데이 상 ibo-cultivation과 batch-D

알고리즘 능

Figure 25. 동 데이 상 batch-D genFirstGen 알고리즘

Page 94: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

84

경에 구동시킨 후, 알고리즘 결과를 사용자에게 달 는데

소요 는 시간 해 보았 며, 이를 Figure 25 그래 를

통해 가시 다. Figure 25를 통해 인 있는 같이,

단계 인 추출 알고리즘인 genFirstGen 알고리즘 , 데이

사이즈 증가에 보다 안 이고 짧 시간 내에 사용자에게 추천

리스트를 달 는 경향 보임 인 있었다.

Page 95: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

85

3. 생명 분야에 용

본 에 는, 본 연구를 통해 안 장 연 규 추출

법 들에 생명 분야에 용 가능 타진 해, 실

생명 분야에 생 데이 를 상 미 보를

추출 있 보이고자 다. 이를 해, 생명 분야

연구 논 들이 출 는 인 곳인, BMC

Bioinformatics (이 BMC) International Journal of Medical

Informatics (이 IJMI)를 통해 출 모든 논 들에 타

데이 를 집 다 ( 집 시 : 2015 12월). 논 들에

타 데이 집 pubmed 스를 이용 며, 집 타

데이 보는 Table 9 같다.

각 들 부 집 타 데이 를 , transaction

논 자, 아이 주요어 사용 MeSH 용어 는

개 데이 베이스를 구축 며, BMC 부 도출

데이 베이스는 transaction ( 자) 가 20,691개, 아이

(MeSH 용어) 가 6,826개 구 었 며, IJMI 부

도출 데이 베이스는 transaction 가 5,516개 그리고 아이

가 1,714개 구 었다.

Page 96: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

86

Table 9. 별 집 타 데이 보

간 논

Mesh 용어

주요어 포함 논 (%)

사용

Mesh 용어

논 당 사용

평균 Mesh 용어

BMC 2000-2015 7,904 6,826 (96.22%) 3,620 11.59

IJMI 1997-2015 1,927 1,828 (94.86%) 1,714 10.43

Page 97: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

87

집 생명 분야 연구자들 (BMC IJMI에 논 출

자들)과 그들 연구 분야들 ( 주요어 태그 MeSH

용어들)에 데이 에 본 연구에 안 장 연

규 추출 법 용 잠재 검증 해, IT 분야에 사

를 취득 고, 료 보 사, 사 사 과

공 택 여 재 과 에 있는 본 논 작 자

같 연구실 소속 6명 실험자 집합 구 다. ,

실험 목 를 ‘ 장 연 규 추출 법 용 IT

능 자 생명 분야 연구 향 추천 가능 여부’

다. 본 실험에 참가 실험자 보 이들이 작

이진 논리식 집합 Table 10과 같다. 실험자들 본 연구를

통해 안 시스 나인 GARM 능과 용법 지

후, BMC 데이 베이스 IJMI 데이 베이스에 해

자신 연구 분야 심 사항 이진 논리식 며,

장 연 규 단계 추출 알고리즘인 genFirstGen

알고리즘 genNextGen 함 를 지원 는 GARM

사용 여, 자신에게 합 다고 생각 는 생명 분야 연구

분야를 도출 다. Table 11 실험자 별 GARM이 추천 연구

분야 리스트 추천 리스트 실험자가 택 심

분야들 나타낸다.

Page 98: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

88

Table 10. 실험자 보 실험자가 작 이진 논리식

ID 별 부소속 재소속 과 이진 논리식

OO 남 컴퓨 보 과 사과 Data mining ∨ Algorithm

안OO 남 컴퓨 과 사과 Support Vector Machines ∧ Proteins

양OO 남 컴퓨 보 과 사과 Decision Support Systems-Clinical

OO 남 컴퓨 공 과 사과 Classification ∨

Information Storage and Retrieval ∨

Automatic Data Processing

이OO 남 컴퓨 공 과 통합과 Data mining ∧ Genomics

손OO 여 컴퓨 공 인 통합과 ( ) Animals ∨ Databases-Genetic

Page 99: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

89

Table 11. 실험자 별 추천 리스트 심 리스트

실험자

추천 택 MeSH 용어 리스트

BMC IJMI

OO

Software, databases, use-computer interface,

database management systems, genetics, Internet, methods, Computational

Biology

Primary Heath Care, Algorithms, Hospitals-Veterans, Communicable

Diseases, Emergency Service, Infection, Decision Support Systems-Clinical,

diagnosis, etc.

안 OO Database-Protein. Software, Artificial Intelligence, chemistry, Amino Acid

Sequence, methods, Algorithms, Sequential Analysis-Protein

Suggestion list was not available.

양 OO Suggestion list was not available.

Medical Records Systems-Computerized, Hospital Information Systems,

Delivery of Health Care-Integrated, Cost control, Managed Care

Programs, economics, etc.

Page 100: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

90

OO

Software, User-Computer Interface, Database Management Systems,

Software Design, Chromosome Mapping, methods, Computer Graphics,

genetics, Databases-Genetic

Use-Computer Interface, Software, Systems Integration, Medical Records

Systems-Computerized, methods, organization & administration, Medical

Record Linkage, Consumer Behavior, Medical Informatics Applications,

etc.

이 OO methods, metabolism. Computational Biology,

Gene Expression Profiling, genetics, Algorithms

Suggestion list was not available.

손 OO Software, Algorithms, Computer Simulation, methods, Sequence Analysis-

DNA, Phylogeny, Sequence Analysis-Protein, Sequence Alignment, genetics

Methods, Dogs

* Italic: GARM에 해 추천 리스트 실험자에 해 택 MeSH 용어

* Bold: 실험자가 견 생명 분야 심 연구 분야

Page 101: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

91

고 찰

1. 실험 결과에 고찰

본 연구를 통해 실험 소요 시간 실험에 , cultivation

알고리즘들(nbo, ibo-cultivation)이 타 알고리즘에 해

우 능 보임 인 있었다. 이 같 실험 결과는

cultivation 알고리즘이 지원 는 ui 태 알고리즘 동작

특 에 인 다 있다. 존 알고리즘들 경우, 이진

논리식 태 를 고 지 않아, 알고리즘이 추출 산출 에

여, 추가 인 연산 행 여야 다. 즉, 지지도 신도

재계산과 pruning 차 이루어진 추가 연산 해 많

시간이 소모 었 것 분 다. charm, direct 그리고

titanic 알고리즘 경우, 사용자 부 ui가 주어질 마다, 높

시간 복잡도를 요 는 조합 (Join) 연산들 행 다. qtr,

submergence 그리고 ibo-cultivation 알고리즘 경우 역시,

많 시간 요 는 개 격자 구축 시간 요 지만, 이는

번만 행 는 작업 써, 일단 구축이 료 면, 주어진

다양 태 ui에 해, 개 격자 탐색만 통해 합 결

Page 102: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

92

달 다. 이 , qtr-submergence cultivation 알고리즘

능 차이는, 앞 언 같이 추가 연산에 해 결 다

있다.

, 추출 연 규 역시 cultivation

알고리즘들이 타 상 알고리즘에 해 항상 같거나

연 규 들 추출함 인 있었다. direct 알고리즘

경우, 복 연 규 생 있는 알고리즘 단 이

존재함 명 다. 그러나, 닫힌 번 아이 집합 추출

해 고안 charm, titanic 그리고 qtr submergence

알고리즘이 보인 결과는, 이진 논리식 태 ui 인해 인했다

있다. 2장에 언 같이, 이진 논리식 태 ui는

formal context (즉 데이 베이스) 개 격자에 있어 , 낯

그리고 새 운 속 인지 다. 그러므 , 새 운 속 ui를

고 지 않 상태에 는 닫힌 아이 집합이었 속 집합이,

ui가 포함 경우 이상 닫힌 아이 집합이 아닐 있 며,

이 같 속 집합이 다 존재 면 , 이는 cultivation

알고리즘과 타 알고리즘 간 능에 차이를 불러 다

있다. 능 차이는, 앞 언 같이 추가 연산에 해

결 다 있다.

마지막 , 동 데이 베이스에 해 본 논 에 안

Page 103: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

93

개 알고리즘 능 시, 동 데이 를 상 고안

batch-D 알고리즘 능이 데이 를 상 개 ibo-

cultivation 알고리즘에 해 우월함 인 있었다. 이는,

데이 베이스가 업데이트 마다 개 격자를 재구축해야 는

cultivation 알고리즘들 계에 것이라

있 며, 동 데이 를 상 보 추출 시 batch-D

알고리즘과 같이 고 데이 에 특 데이 구조 인덱스

구조를 용 지 않는 연 규 추출 법 이 요 다는

실험 증명했다 있다.

본 논 에 안 법 들 생명 분야에 용

가능 검증 실험에 는, 실험자들이 이진 논리식

작 시 사용 논리 연산자를 크게 2 그룹

실험자 집합 나 있었다. 첫 번째 그룹 AND 연산자를

사용 여 자신 도를 보다 명 히 그룹이며 (2명

실험자: 안OO, 이OO), 번째 그룹 OR 연산자를 사용 여

보다 포 도를 그룹이다 (3명 실험자:

OO, OO, 손OO)- 실험자 양OO 단일 MeSH 용어만

사용. 미 운 , AND 연산자를 용 첫 번째 그룹

실험자들 , 통 인 료 생명 분야를 공 고 있는

다른 연구자들과 업에 보다 인 태도를 가지고 있었다는

Page 104: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

94

이다. 경 인 요소를 살펴보면 이들 향에 이해를

보다 높일 있었 며, 첫 번째 그룹에 속 실험자 안OO

경우, 연구실 상주 간이 약 5 이상 연구자 써, 본

연구실에 료 생명 분야를 연구 는 연구원과 도를

시간이 타 실험자보다 충분했 인 있었다. 첫

번째 그룹에 속 다른 실험자인 이OO 경우, 직계 가족

생명 분야에 사 를 근에 취득 사실이 있었 며, 이

가족 연구 주 가 Genomics 써, 실험자가 작 이진

논리식 요소 나 등장 인 있었다. 면,

OR 연산자를 사용 여 보다 포 인 태 자신 도를

그룹에 속 는 실험자 경우, 타 연구자 업

보다는, 자신만 연구 체계를 구축 는 것 보다

인 있었 며, 경 인 요소 역시, 연구실 상주 간이

짧거나, 도가 강 주변 인 료 생명 분야 종사자가

없어, 해당 경에 노출 회가 었 인 있었다.

, 실험자들에게 AND 연산자만 사용 (즉, 존과 같

집합 태) 여 자신 도를 고 자신에게 부합 는

추가 인 생명 분야 연구 주 견 요청 경우, OR

연산자를 사용 번째 실험자 그룹 자신 도 에

불만족감 들어 냈 며, AND, OR 그리고 NOT 연산자를

Page 105: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

95

허용했 경우 , 특 연구 분야 도출에 어 움 겪

인 있었다.

본 실험 통해 인 있었 다른 미 운 , IT

분야 공자가 자신에게 합 것이라고 택 생명 분야를

찾아가는 과 에 견 있었다. 6명 실험자는, GARM이

단계 연구 분야를 추천해 시, 평균 4단계 추천

후 특 생명 분야에 심 보 며, 4단계 내에 IT

분야 용어 약 75% 다. 이는, IT 공자들 ,

3~4단계는 자신에게 IT 분야를 택 후, 그 이후에

등장 는 료 생명 분야 연구 주 에 심 보 다

있다. 다시 말해, 자신 연구 역 힘에 있어, 소

3~4개 분야가 자신에게 IT 분야 결합 생명

분야에 심 갖는 경향이 었다 해 다.

2. 연구

본 연구 가장 큰 , 본 논 에 안 알고리즘

집합 시스 들 생명 분야에 용 가능 에 검증

부분이라 단 다. 즉, 본 논 알고리즘 그리고

Page 106: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

96

시스 인 요소들에 보다 집 여 작 논 이라 있다.

생명 분야 인 들인 BMC IJMI에 출

모든 논 들 집 분 여 실험 진행 나, 실험자

집합 가 6명 , 일 행 는 실험 실험자

에는 크게 미 지 못 는 것이 사실이다. , IT 공자에게

생명 연구 분야 추천 견이라는, 생명 분야에 는

상 가벼운 주 에 해 실험 함 써, 실 진단, 료

생명과 보다 심 분야들에 용도 검증이

요구 다 있다.

3. 결

주어진 데이 내에 존재 는 속 간 분 다양

분야에 효 용 있 며, 이는 곧 다양 분야에

데이 를 집 는 궁극 인 목 라 있다. 본 논 에 는,

데이 부 추출 있는 다양 나인 연 규 에

맞추어, 사용자가 처 상황 요구를 보다 명 게

있고, 이를 여 사용자에게 보다 합 해답

공 있는 이 시스 개 다. 즉, 연 규

Page 107: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

97

에 증 를 연구 핵심 주 고, 증

지원 는 연 규 효 이며 다양 식

추출 는 알고리즘 집합에 첫 연구라 있다. 뿐만

아니라, 연 규 이 추출 는 데이 를 그리고 동

분 여, 분 데이 집합 부 장 연 규

추출 첫 시도라는 본 논 인 여도라

있다. 앞 언 같이, 보다 심 고 다양 생명

분야 데이 를 상 실험 진행 여, 미 보를

추출 는 것 향후 계획 삼 며 본 논 마 고자 다.

끝 , 본 논 핵심 구 요소 나인 데이 상

장 연 규 추출 법 , 논 자가 작 여 출

[32] 내용 포함함 명시 다.

Page 108: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

98

참 고 헌

1. R. Agrawal, R. Srikant, Fast algorithms for mining

association rules in large databases, in: Proceedings of

the 20th International Conference on Very Large Data

Bases, VLDB ’94, Morgan Kaufmann Publishers Inc.,

San Francisco, CA, USA, 1994, pp. 487–499.

2. P. Bodík, A. Fox, M.I. Jordan, D. Patterson, A.

Banerjee, R. Jagannathan, T. Su, S. Tenginakai, B.

Turner, J. Ingalls, Advanced tools for operators at

amazon.com, in: Proceedings of the First International

Conference on Hot Topics in Autonomic Computing,

HotACI’06, USENIX Association, Berkeley, CA, USA,

2006

3. C. Schmitz, A. Hotho, R. Jschke, G. Stumme, Mining

association rules in folksonomies, in: V. Batagelj, H.-H.

Bock, A. Ferligoj, A. Zˇiberna (Eds.), Data Science and

Classification: Proc. of the 10th IFCS Conf., Studies in

Classification, Data Analysis, and Knowledge

Organization, Springer, Berlin, Heidelberg, 2006, pp.

Page 109: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

99

261–270.

4. A.J.T. Lee, R.-W. Hong, W.-M. Ko, W.-K. Tsao, H.-

H. Lin, Mining spatial association rules in image

databases, Inf. Sci. 177 (2007) 1593–1608

5. P. Cellier, S. Ferré, O. Ridoux, M. Ducassé, A

parameterized algorithm to explore formal contexts

with a taxonomy, Int. J. Found. Comput. Sci. 19 (2)

(2008) 319–343.

6. V. Nebot, R. Berlanga, Finding association rules in

semantic web data, Knowl.-Based Syst. 25 (1) (2012)

51–62

7. J. Poelmans, P. Elzinga, S. Viaene, G. Dedene, Formal

concept analysis in knowledge discovery: a survey, in:

Proceedings of the 18th International Conference on

Conceptual Structures: From Information to

Intelligence, ICCS’10, Springer-Verlag, Berlin,

Heidelberg, 2010, pp. 139–153.

8. G. Stumme, R. Taouil, Y. Bastide, N. Pasquier, L.

Lakhal, Computing iceberg concept lattices with titanic,

Data Knowl. Eng. 42 (2002) 189–222

Page 110: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

100

9. S.B. Tekaya, S.B. Yahia, Y. Slimani, Genall algorithm:

decorating galois lattice with minimal generators, in: R.

Belohlavek, V.Snasel (Eds.), Proceedings of the CLA

2005 International Workshop on Concept Lattices and

their Applications, CLA’05, 2005, pp. 166–178.

10. T. Hamrouni, S.B. Yahia, Y. Slimani, Prince: an

algorithm for generating rule bases without closure

computations, in: Proceedings of 7th International

Conference on Data Warehousing and Knowledge

Discovery (DAWAK 2005), LNCS 3589, Springer-

Verlag, 2005, pp. 346–355.

11. P. Valtchev, R. Missaoui, R. Godin, A framework for

incremental generation of closed itemsets, Discrete

Appl. Math. 156 (2008)

12. Y. Hai, Y. Du, H. Li, A new strategy of query expansion

using formal concept analysis., in: CIT, IEEE Computer

Society, 2006, pp. 34.

13. N. Spyratos, C. Meghini, Preference-based query

tuning through refinement/enlargement in a formal

context, in: FoIKS, 2006, pp. 278–293.

Page 111: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

101

14. T. Quan, L. Ngo, S.C. Hui, An effective clustering-

based approach for conceptual association rules mining,

in: International Conference on Computing and

Communication Technologies, 2009, RIVF ’09, 2009,

pp. 1–7.

15. S.-J. Song, E.-H. Kim, H.-G. Kim, H. Kumar, Query-

based association rule mining supporting user

perspective, Computing 93 (1) (2011) 1–25

16. B. Ganter, R. Wille, Formal Concept Analysis:

Mathematical Foundations, Springer, Berlin/Heidelberg,

1999.

17. R. Srikant, Q. Vu, R. Agrawal, Mining association rules

with item constraints, in: Knowledge Discovery and

Data Mining, 1997, pp. 67–73.

18. B. Vo, T.-P. Hong, B. Le, A lattice-based approach for

mining most generalization association rules, Knowl.-

Based Syst. 45 (0) (2013) 20–30,

19. M.J. Zaki, C.-J. Hsiao, CHARM: an efficient algorithm

for closed itemset mining, in: SDM, SIAM, 2002.

20. T. Hamrouni, S.B. Yahia, E.M. Nguifo, Succinct system

Page 112: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

102

of minimal generators: a thorough study, limitations and

new definitions, in: Proceedings of the 4th International

Conference on Concept Lattices and Their Applications,

CLA’06, Springer-Verlag, Berlin, Heidelberg, 2008, pp.

80–95.

21. T. Hamrouni, S.B. Yahia, E.M. Nguifo, Towards a finer

assessment of extraction contexts sparseness, in:

Proceedings of the 18th International Conference on

Database and Expert Systems Applications, IEEE

Computer Society, Washington, DC, USA, 2007, pp.

504–508,

22. S. Ferré, O. Ridoux, Introduction to logical information

systems, Inf. Process. Manage. 40 (2004) 383–419

23. S. Ferré, Camelis: a logical information system to

organise and browse a collection of documents, Int. J.

Gen. Syst. 38 (2009) 379–403

24. E.F. Krause, Maximizing the product of summands;

minimizing the sum of factors, Math. Mag. 69 (1996)

270–278

25. C. Carpineto, G. Romano, Concept Data Analysis:

Page 113: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

103

Theory and Applications, John Wiley & Sons, 2004.

26. M. Farach-Colton, Y. Huang, A linear delay algorithm

for building concept lattices, in: Proceedings of the 19th

Annual Symposium on Combinatorial Pattern Matching,

CPM ’08, Springer-Verlag, Berlin, Heidelberg, 2008,

pp. 204–216.

27. D. Dudek, RMAIN: association rules maintenance

without reruns through data, Inf. Sci. 179 (2009) 4123–

4139.

28. J. Vreeken, M. Leeuwen, A. Siebes, Krimp: mining

itemsets that compress, Data Min. Knowl. Discov. 23

(2011) 169–214

29. R. Missaoui, L. Kwuida, Mining triadic association rules

from ternary relations, in: P. Valtchev, R. Jschke

(Eds.), Formal Concept Analysis, Vol. 6628 of Lecture

Notes in Computer Science, Springer Berlin Heidelberg,

2011, pp. 204–218.

30. S. A. Selmane, R. Missaoui, O. Boussaid, F. Bentayeb,

Mining triadic association rules, Computer Science &

Information Technology 3 (2013) 305–316

Page 114: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

104

31. S. Ali, O. Boussaid, F. Bentayeb, P-triar:

Personalization based on triadic association rules, in: Y.

Manolopoulos, G. Trajcevski, M. KonPopovska (Eds.),

Advances in Databases and Information Systems, Vol.

8716 of Lecture Notes in Computer Science, Springer

International Publishing, 2014, pp. 234–247.

32. E.H. Kim, H.G. Kim, S.H. Hwang, S.I. Lee: FARM:

FCA-based Association Rule Miner, Knowledge-Based

Systems, Vol. 85, 2015, pp. 277-297

Page 115: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

105

Abstract

Association rule mining is a well-researched and widely

applied data mining technique for discovering regularities

between items in a dataset. An association rule consists of an

antecedent and a consequent with two measures, named

support and confidence, which indicate how valuable the rule is.

For several decades, intensive studies have been made on

efficient association rule mining methods aiming to reduce

rule-extraction time and to prevent generation of redundant

rules. By incorporating negation and disjunction operators into

antecedents, our study offers richer expressive power in

describing user interests as antecedents, which in turn

translates into more valuable association rules whose

consequents match the expressed user interests. In addition,

databases from which association rules are extracted are

divided into two categories named static and dynamic

databases. This study consists of four components: 1) a set of

algorithms to extracted extended association rules from static

Page 116: Disclaimer - Seoul National Universitys-space.snu.ac.kr/bitstream/10371/121796/1/000000132701.pdf집합 I, 그리고 transaction과 아이템 간의 관계 R로 구성된 데이터베이스라

106

databases, 2) two algorithms for mining extended association

rules from dynamic databases, 3) two systems called FARM

and GARM that support the proposed algorithms in this paper,

and finally 4) experiments with various options and its results

with a detailed explanation based on theoretical and empirical

analysis.

Keywords: association rule, Boolean expression, static

database, dynamic database, mathematical model,

algorithm, system

Student number: 2011-30637