Journal Search Engine
Search Advanced Search Adode Reader(link)
Download PDF Export Citaion korean bibliography PMC previewer
ISSN : 2005-0461(Print)
ISSN : 2287-7975(Online)
Journal of Society of Korea Industrial and Systems Engineering Vol.38 No.1 pp.74-82
DOI : https://doi.org/10.11627/jkise.2014.38.1.74

First-Order Logic Generation and Weight Learning Method in Markov Logic Network Using Association Analysis

Gil-Seung Ahn, Sun Hur†
Department of Industrial and Management Engineering, Hanyang University
Corresponding Author : hursun@hanyang.ac.kr
December 26, 2014 February 4, 2015 February 4, 2015

Abstract

Two key challenges in statistical relational learning are uncertainty and complexity. Standard frameworks for handling uncertainty are probability and first-order logic respectively. A Markov logic network (MLN) is a first-order knowledge base with weights attached to each formula and is suitable for classification of dataset which have variables correlated with each other. But we need domain knowledge to construct first-order logics and a computational complexity problem arises when calculating weights of first-order logics. To overcome these problems we suggest a method to generate first-order logics and learn weights using association analysis in this study.


연관분석을 이용한 마코프 논리네트워크의 1차 논리 공식 생성과 가중치 학습방법

안 길승, 허 선†
한양대학교 산업경영공학과

초록


    Hanyang University

    1.서 론

    통계적 상관 학습은 데이터에서 같은 형식을 갖는 확 률변수들 사이에 존재할 수 있는 상관관계 등 복잡한 확 률변수 간의 관계를 네트워크 형태로 표현하고 이를 이용 하여 매개변수 및 관계형 모델에 대한 정확한 예측모형 을 수립한다[4]. 마코프 논리네트워크(Markov logic network, MLN)는 이러한 통계적 상관 학습의 대표적인 모델 중 하나이다.

    통계적 상관 학습을 적용할 때 직면하는 두 과제는 불 확실성(uncertainty)과 복잡성(complexity)을 해결하는 것이 다. 이들을 다루기 위해 사용하는 표준적인 프레임워크는 각각 확률과 1차 논리(first-order logic)이다. Richardson와 Domingos[12]는 두 프레임워크를 통합하여 확률적 그래 프 모델(probabilistic graphical model)이라 할 수 있는 마 코프 논리네트워크를 제시하였다. 마코프 논리네트워크는 변수 간의 관계를 나타내기 위하여 데이터를 노드(node) 로, 1차 논리의 지식 베이스(first-order knowledge base)에 포함된 공식(formula)을 에지(edge)로 하는 네트워크 모델 이다. 여기서 공식이란 논리기호로 표시된 서술문이며, 공식들에는 제약의 강도를 나타내는 가중치가 부여된다.

    마코프 논리네트워크는 복잡한 데이터, 즉 데이터들이 서로 다양한 관계를 가지고 있을 때 적용할 수 있으며 설 명력이 우수한 예측 모형이다. 또한, 확률과 1차 논리를 결합함으로써 불확실성과 복잡성이라는 단점을 동시에 보완할 수 있다. 마코프 논리네트워크는 관계 예측(link pre diction), 관계기반 군집화(link-based clustering), 그리고 사 회연결망 분석(social network analysis) 등에 적용될 수 있 다. 관계 예측은 두 객체 간에 관계가 있는가를 예측하는 작업이고, 관계기반 군집화는 연결성이 있는 데이터들을 중심으로 군집을 생성하는 작업이다. 마지막으로 사회연 결망 분석은 사람을 비롯한 사회적 행위자(Social actor)와 그들 간의 관계를 구축하는 작업이다.

    마코프 논리네트워크는 1차 논리 지식 베이스에 포함 할 공식을 생성할 때 분석하고자 하는 해당 분야의 깊은 전문지식, 즉 도메인(domain) 지식에 크게 의존한다는 단 점이 있다. 또한, 해당 1차 논리 공식의 가중치를 학습하 는 데 필요한 계산량이 많고 학습된 가중치가 전역 최적 해가 아닌 지역 최적해(Local optimal)에 빠질 수 있다는 단점도 있다[7].

    마코프 논리네트워크의 가중치를 학습할 때 발생하는 문제를 해결하기 위한 연구로 Kok과 Domingos[7]는 관계 형 데이터베이스를 하이퍼그래프(hypergraph)형태로 변형 을 하여 마코프 논리네트워크를 학습하는 알고리즘(Learning via Hypergrpah Lifting, LHL)을 제시하였는데, 이때 레코드를 노드로 하고 레코드 간의 관계를 하이퍼에지 (hyperedge)로 하였다. 여기서 하이퍼에지는 하나의 에지가 두 개 이상의 노드를 연결하는 에지이고, 노드들과 하이퍼 에지로 구성된 네트워크를 하이퍼그래프라 한다. Lowd와 Domingos[9]는 마코프 논리네트워크를 학습하는 여러 방 안을 비교, 평가하였다. Huynh과 Mooney[5]는 SVM(Support Vector Machine)의 기본 아이디어인 여백(margin)을 최대화하는 방법으로 마코프 논리네트워크의 가중치를 학습하는 방법을 제시하였다.

    하지만 기존 연구는 1차 논리 공식에 부여할 가중치 학습에 관련된 계산량 줄이기와 지역해 탈피에 초점을 두었으므로 도메인 지식에 기반을 두지 않고 마코프 논 리네트워크에 필요한 1차 논리를 생성하는 연구는 전무 하다. 데이터 분석을 할 때 도메인 지식이 필요하지 않다 면 다양한 분야에 마코프 논리네트워크를 적용할 수 있 으며, 표준화된 모형을 생성할 수 있게 해 준다.본 연구 에서는 이에 착안하여 연관분석(association analysis)을 통 해 얻은 연관규칙을 이용하여 마코프 논리네트워크의 1 차 논리 공식을 생성하고 해당 규칙의 가중치를 학습하 는 방법을 제시한다.

    연관분석은 방대한 데이터 속에 주목할만한 숨겨진 규 칙을 찾는 데 유용한 잘 알려진 방법으로, 연관분석을 통 해 생성한 규칙들을 연관규칙이라 한다. 연관규칙은 항목 사이의 관계를 조건부와 결과부로 나누어 {A(조건부) ⇒ B(결과부)}형태로 표현하고, ‘A조건에 만족하는 관측치는 B그룹으로 분류된다’와 같이 해석된다[11]. 연관분석은 도메인 지식에 의존하지 않는 방법론이므로 마코프 논리 네트워크에 포함될 1차 논리를 생성할 때와 해당 규칙의 가중치를 학습할 때 연관규칙을 적용한다면 도메인 지식 이 필요치 않고 또한 가중치 학습에 필요한 계산량이 줄 어든다. 본 연구에서 제안하는 방법을 예시하고 성능을 평가하기 위해서 실제 데이터집합(data set)을 이용하여 실 험을 수행한다. 수행 결과는 대표적인 분류기법인 k-nn(knearest neighbor), 의사결정나무(decision tree), 판별분석 (discriminant analysis)을 통한 분류결과와 비교한다.

    본 연구는 다음과 같이 구성된다. 제 2장에서는 1차 논 리와 마코프 네트워크에 대해 설명하고 이를 결합한 마 코프 논리네트워크에 관해 설명한다. 또한 마코프 논리네 트워크의 가중치를 학습하기 위한 방법에 대해 설명한다. 제 3장에서는 연관규칙에 대해 설명하고, 연관규칙을 평 가하기 위한 관련 연구들을 소개한다. 제 4장에서는 연관 규칙을 이용하여 마코프 논리네트워크에서의 1차 논리 규칙을 생성하고 가중치를 학습하는 방법을 제안한다. 제 5장에서는 본 연구에서 제안하는 방법의 성능을 평가하 기 위해 실제 데이터에 적용하는 과정에 대해 설명한다. 마지막으로 제 6장에서 본 연구를 정리한다.

    2.마코프 논리네트워크

    여기서는 연구내용을 이해하기 위해서 마코프 논리네 트워크의 개념과 관련 용어들을 간단히 소개한다. 마코 프 논리네트워크의 개념과 적용방법, 적용 예 등에 대한 보다 자세한 설명은 Richardson과 Domingos[12]의 연구 를 참고하기 바란다.

    2.11차 논리

    명제논리는 여러 명제의 옳고 그름에 대한 결정을 다 루기 위한 논리인데, 명제들을 연결하기 위하여 연산자 들을 사용한다. 명제논리에서는 명제가 최소 단위이므로 명제의 내부구조에 대한 분석은 이루어질 수 없다는 한 계가 있다. 예를 들어, ‘A는 동물이다’와 ‘B는 동물이다’ 라는 두 명제는 완전히 별개의 사실이며, 이것으로부터 A와 B는 유사하다는 사실을 발견할 수 없다. 따라서 ‘모 든 동물은 호흡한다’라는 명제를 추가해도, 이 세 명제로 부터 A와 B는 호흡한다는 사실을 유도할 수 없다. 즉, 명 제논리는 지식표현을 일반화할 수 없다는 문제가 있다[14].

    1차 논리는 명제논리를 확장한 개념으로, 최소 단위로 술어(predicate)를 사용함으로써 앞서 지적한 명제논리의 문제를 해결할 수 있다. 술어는 도메인 내에서 객체의 특 성(attributes) 혹은 객체 간의 관계를 나타낸다. ‘A는 B이 다’, ‘A는 B가 아니다’, ‘A는 B를 한다’ 등의 명제에서 ‘B’를 술어라고 한다. 예를 들어, 친구 관계, 흡연 여부 등이 술어이다. 앞의 두 명제를 1차 논리식으로 표현하 면 다음과 같다 : ‘A는 동물이다 : animal(A),’ ‘B는 동물 이다 : animal(B)’. 여기서 A와 B는 모두 animal이라는 공통된 술어의 수식을 받고 있다. 이 두 논리식에 ‘모든 동물은 호흡을 한다’라고 하는 1차 논리식 ∀x{animal(x) → breathe(x)}이 추가되면 breathe(A)와 breathe(B)가 모 두 참임을 유도할 수 있다.

    1차 논리 지식베이스는 1차 논리 형태로 나타내어진 공식들의 집합이다[3]. 여기서 공식은 ∀(모든)와 ∃(존재 한다) 등의 술어 기호를 사용하여 표현한 논리구조이다. 1차 논리 공식들은 상수(constant), 변수(variable), 함수(function), 그리고 술어를 이용하여 표현한다. 상수는 관심 있는 도메인에서의 객체(object)를 나타내며, ‘철수’, ‘영희’ 등 이 상수이다. 변수는 관심 있는 도메인의 객체의 범위를 나타내며, 소문자 x, y, z, … 등으로 나타낸다. 함수는 객 체의 집합으로부터 다른 객체의 집합으로의 사상(mapping) 이며, ‘~의 부모’, ‘~의 친구’ 등이 함수이다.

    2.2마코프 네트워크

    앞서 설명한 1차 논리 지식 베이스 내의 공식 간의 결 합을 네트워크 형태로 나타내기 위해 마코프 네트워크와 결합한 모델이 마코프 논리네트워크다. 마코프 네트워크 (Markov network)는 변수들의 결합확률분포를 네트워크 형태로 나타내는 모델로, 방향성이 없는 그래프(undirected graph) G와 포텐셜 함수(potential function) φk 로 구성 된다. 그래프의 노드 i는 확률벡터 X = (X1, X2, …, Xn) 에 서 확률변수 Xi 의 값을 나타내고 노드 i와 노드 j를 연결 하는 에지는 확률변수 XiXj 에 어떤 관계가 존재함을 의미한다. 에지의 가중치는 노드 간의 관계의 강도를 나 타낸다. 색인 k는 네트워크 내에서 클리크(clique) k를 나 타낸다. 클리크는 모든 노드가 완전히 연결된 부분 그래 프를 나타내는데, 한 클리크 내의 노드들에 해당하는 확률 변수들은 서로 의존적이며 클리크 간에는 서로 독립이다. 이러한 클리크의 특성을 이용하여 확률벡터 X 에 대한 결 합확률분포는 다음과 같이 클리크의 포텐셜 함수의 곱으 로 표현한다[8].

    P X = x = 1 z k φ k x k
    (1)

    여기서 x{k} 는 클리크 k의 상태(configuration)를 나타내 는 값이며, 포텐셜 함수인 φk(·) 는 사용자가 정의하는 특징함수이다. Z는 정규화 함수(normalization function)이 며, 다음과 같이 계산한다.

    z = x X   k k φ k x k
    (2)

    정규화 함수는 포텐셜 함수값들의 곱인 Πkφk (φ{k})이 확률값의 범위(0~1)를 벗어나는 것을 방지하기 위해 사용한다. 마코프 네트워크는 대개의 경우 선형로그모형 (log-linear model)로 변환하는데, 이때 포텐셜 함수는 개별 클리크의 상태의 가중합을 나타내는 함수를 사용한다.

    P X = x = 1 z exp j w j f j x
    (3)

    여기서, wj 는 클리크 j에 부여된 가중치이고, fj 는 클 리크 j의 상태를 나타내는 실함수이다. 식 (1)에서 보듯 이, 가능한 모든 클리크에 각각의 특징을 부여할 수 있는데, 마코프 논리네트워크에서는 클리크의 상태를 논리 함수 (logic function) 등을 사용하여 표현한다[2].

    2.3모델 정의

    마코프 논리네트워크는 마코프 논리와 마코프 네트워 크를 결합한 형태이다. 마코프 논리 L은 (Fi, wi) 의 집합 으로 Fi 는 1차 논리 i의 공식이며, wiFi 에 실수값으로 주어지는 가중치이다. 마코프 논리네트워크는 L에 있는 모든 1차 논리 공식의 진릿값을 나타내는 이진형 노드 (binary node)를 가진다. 즉, 노드의 값은 해당 공식이 참 일 때 1, 아니면 0을 가진다. 이 때, 노드의 값이 1인 노 드만 네트워크에 나타낸다. wiFi 의 가중치로, 공식의 중요도를 반영한다. 요약하면, 각 술어의 인자에 상수를 적용한 것이 각 노드를 구성하며, 하나의 공식을 함께 구 성하는 노드들끼리 마코프 논리네트워크에서 연결된다(즉, 클리크를 형성한다). 결과적으로 마코프 논리네트워크의 결합분포는 식 (3)을 바탕으로 다음과 같이 표현된다.

    P X = x = 1 z exp j = 1 F w j n j x
    (4)

    본 연구에서 클리크 j는 1차 논리 공식 Fj 를 의미하므 로 nj = (1차 논리식 Fj 가 참인 훈련집합 내의 데이터의 수)로 정의된다. 예를 들어, 가중치가 각각 w1, w2 인 두 개의 공식(F = 2)으로 구성된 마코프 논리네트워크가 있 을 때, 데이터셋 x 가 공식 1은 r 회 만족하고 공식 2는 s 회 만족한다면 n1 = r, n2 = s 가 된다.

    L에 포함된 두 상수와 관련된 한 가지의 공식이라도 참이라면, 마코프 논리네트워크의 두 노드 사이에 에지를 생성한다. 예를 들어, ‘∀xSmokes(x) ⇒ Cancer(x)(흡연은 암을 유발한다)’와 ‘∀x∀yFriends(x, y) ⇒ (Smokes(x) ⇔

    Smokes(y))(친구들 간에는 비슷한 흡연 습관이 있다)’라 는 공식이 있고 해당 공식을 ‘영희(A)’와 ‘철수(B)’라는 상수에 적용한 마코프 논리네트워크가 있다고 하자. A가 흡연을 하므로, ‘Smokes(A) ⇒ Cancer(A)’라는 공식이 참 이 되고, Smokes(A)와 Cancer(A)을 연결하는 에지를 생성 한다. 이러한 방식으로 마코프 논리네트워크를 도식화하 면 <Figure 1>과 같다. 이러한 도식을 통해 ‘영희가 흡연 한다면 영희의 친구인 철수 역시 흡연을 할 것이고, 결국 철수는 암에 걸릴 것이다’ 등의 사실을 파악할 수 있다.

    2.4추론 및 학습

    마코프 논리네트워크에서의 추론은 주어진 근거(evidence), 즉 데이터에 기반해 참인 공식(마코프 네트워크 의 클리크에 해당)들의 가중치의 합을 가장 크게 만드는 진릿값 할당을 찾는 것이다[6]. 추론에 많이 사용되는 알 고리즘으로는 SAT(Satisfiability) solver 알고리즘과 마코 프체인 몬테 카를로(Markov chain Monte Carlo, MCMC) 방법이 있다[1].

    마코프 논리네트워크 학습은 구조 및 가중치 학습으 로 나눌 수 있는데, 본 논문에서는 가중치 학습 방법에 관해 관심을 두고 있으므로 가중치 학습 방법에 대해서 만 언급한다. 가중치 학습은 추론과는 반대로 마코프 논 리네트워크에 포함된 노드들의 진릿값이 주어졌을 때 이 를 가장 잘 표현할 수 있는 가중치를 계산하는 것이다. 이는 로그 가능도(log likelihood)를 최대화하는 가중치를 구하는 것과 같은데, Hwang et al.[6]에서는 조건부 가능 도에 대한 그래디언트(gradient) 방법을 제시하였지만 많 은 계산량을 요구하므로 근삿값을 쓰고 있다. 이러한 문 제를 해결하기 위해 본 연구에서는 계산량이 많지 않은 가중치 학습 방법을 사용한다.

    3연관규칙

    연관규칙의 중요도를 평가하기 위한 척도로 잘 알려 진 지지도(S(A ⇒ B)), 신뢰도(C(A ⇒ B)) 그리고 향상도 (L(A ⇒ B))는 다음과 같다.

    S A B = Pr A B ,
    C A B = Pr A B Pr A ,
    (5)
    L A B = Pr A B Pr A × Pr B

    Park[10]은 각 항목집합의 주변 발생확률을 고려하여 객관적이고도 정확한 연관성 정도를 파악하기 위해 표준 화된 연관성 평가기준을 다음과 같이 제시하였다.

    S ST A B = S A B max P A + P B 1 , 1 n min P A , P B , P B A max P A + P B 1 , 1 n
    (6)
    C ST A B = C A B L.B.C U.B.C L.B.C
    (7)
    L ST A B = L A B L.B.C U.B.L L.B.L
    (8)

    식 (7)에서 U.B.C(Upper Boundary of Confidence)는 min 1, Pr B Pr A , Pr B A Pr A ,, L.B.C(Lower Boundary of Confidence) 는 max 1 + P B P A , 1 P A , 1 nP A 이며, 식 (8)에서 U.B.L(Upper Boundary of Lift)은 min 1 Pr A , 1 Pr B , Pr B A Pr A Pr B , L.B.L(Lower Boundary of Lift)은 max 1 Pr b + 1 Pr A 1 Pr A Pr B , 1 nPr A Pr B 이다.

    Son과 Kim[13]은 연관규칙의 여러 평가 기준을 동시에 고려하기 위해 Weighted Support-Confidence-Lift(WSCL) 이란 척도를 제안하였다. WSCL은 식 (9)와 같이 가중치, 지지도, 신뢰도, 그리고 향상도의 곱으로 나타낸다. 여기 서 가중치는 사용자가 정한다.

    WSCL = Weight × Support × Confidence × Lift
    (9)

    4.제안 알고리즘

    제 4장에서는 연관규칙을 이용한 마코프 논리네트워 크에서의 1차 논리 공식 생성 및 가중치 학습 방법에 관 한 구체적인 절차를 <Figure 2>에서 나타난 순서에 따라 제시한다.

    4.1연관규칙 생성 및 주요 연관규칙 파악

    1차 논리 공식을 구성하기 위한 첫 단계로, 연관분석 을 수행하여 연관규칙 목록을 작성하고 Park[10]이 제안 한 표준화 방법을 이용하여 각 연관규칙의 평가기준을 표준화한다. 표준화된 평가기준인 SST, CST, LST 를 바탕 으로 WSCL을 계산하여 WSCL의 값이 임계치보다 큰 규칙들을 1차 논리 공식으로 선정한다.

    4.2데이터간 유사도 계산 및 이웃 정의

    연관규칙의 수가 너무 적으면 모든 데이터를 커버할 수 없으며, 연관규칙의 수가 지나치게 많으면 모형의 복 잡도가 증가한다. 연관규칙의 수를 적절하게 유지하면서 동시에 모든 데이터를 만족시키기 위해 데이터 간의 유 사도를 계산하고 유사도가 임계치 이상인 경우를 이웃 (neighbor)으로 정의하고, 이들 이웃끼리는 결과변수(target variable)의 값이 같다는 공식을 식 (10)과 같이 만들고 이를 1차 논리 지식베이스에 추가한다.

    x yNe x,y Cover_Type x Cover_Type y
    (10)

    이 때, 결과변수의 값은 다수결(majority voting)로 정 한다. 동점 상황이 발생한다면 각 결과변수 값을 가지는 이웃들의 유사도를 합하여 결과변수 값을 할당한다.

    4.31차 논리 공식 생성 및 가중치 학습

    제 4.1절에서 생성한 주요 연관규칙과 4.2에서 생성한 공식 (10)을 1차 논리 공식들의 집합으로 구성한다. 이 때, 연관규칙에서 나온 공식의 가중치는 WSCL값으로 설정하 고, 공식 (10)의 가중치는 연관규칙에서 나온 공식의 가중 치보다 작게 설정한다. 이는 다른 모든 공식을 적용한 후 결과변수의 값을 파악할 수 없는 데이터는 이웃 관계를 이용하여 결과변수의 값을 파악하기 위함이다.

    4.4마코프 논리네트워크 구성

    마지막 단계에서는 제 4.3절에서 구성한 1차 논리 공식 과 가중치를 바탕으로 마코프 논리네트워크를 구성한다. 즉, 훈련 집합의 데이터에서 각각의 공식을 만족하는 경 우의 수를 계산하여 식 (2)에서 제시한 정규화 함수 Z값 을 계산하여 식 (3)을 완성한다.

    5.제안 알고리즘의 적용예와 결과 비교

    이 장에서는 제안하는 알고리즘을 예시하고 그 성능 을 판단하기 위해 실제 데이터에 적용하여 실험하고 기 존의 다른 방법과 비교한다.

    5.1데이터

    실험에 사용한 데이터 셋은 UCI ML Repository의 ‘Forest Cover Type’와 ‘Qualitative Bankruptcy’이다. ‘Forest Cover Type’은 땅의 기울기, 고도 등의 총 54개의 설명변수를 이 용하여 숲을 구성하고 있는 7가지 지형을 예측하는 것을 목적으로 하고 있으며, 관측치 개수는 총 581,012개이다. 지 형이 Type 1과 Type 2인 경우가 대다수를 차지하고 있어, 지형이 Type 1과 Type 2인 데이터만을 이용하여 훈련 집합 과 검증 집합을 생성한다. 훈련 집합에는 75,000개의 데이 터가 포함되어 있고, 검증 집합에는 50,000개의 데이터가 포함되어 있다. 우선, 모든 변수를 범주형 변수로 변환한다. 변수의 단위가 각도(degree)이면 n(n = 1, 2, 3, 4) 사분면에 속하는 경우 범주형 변수의 n번째 값으로 변환하였다. 그 외의 경우에는 <Table 1>과 같이 변환한다. 그리고 나서 모든 범주형 변수를 이진형 변수로 변환하였다.

    ‘Qualitative Bankruptcy’는 산업 위험, 신용도 등의 총 6개의 설명변수를 이용하여 특정 회사가 파산할 것인지, 혹은 파산하지 않을 것인지를 예측하는 것을 목적으로 하고 있으며, 관측치 개수는 총 250개이다. 훈련 집합에 는 총 200개의 데이터가 포함되어 있고, 검증 집합에는 총 50개의 데이터가 포함되어 있다. 모든 설명변수가 범 주형(Positive, Average, Negative)이므로 데이터 변환이 필 요하지 않다.

    5.2결과

    5.2.1Forest Cover Type

    연관분석을 통해 주요 연관규칙을 선정하고 이를 <Table 2>와 같이 1차 논리 형태로 변환하였다. 주요 규칙을 선 정하기 위한 임계치는 0.7을 사용하였다.

    이 실험에서 사용한 데이터는 비대칭 이진 속성(asymmetric binary attribute)을 가지기 때문에 이웃을 정의하기 위한 두 레코드 x와 y간의 유사도는 다음의 자카드(Jaccard) 계수를 이용한다[15].

    J x , y = f 11 f 01 + f 10 + f 11
    (11)

    여기서 f01 은 데이터 x가 0일 때 데이터 y가 1인 값을 가지는 속성의 수를, f10 는 데이터 x가 1일 때 데이터 y 가 0인 값을 가지는 속성의 수를, f11 은 데이터 x가 1일 때 데이터 y도 1인 값을 가지는 속성의 수를 나타낸다. 자카드 계수가 0.9 이상인 경우를 이웃으로 정의한다. 즉, 두 노드 x와 y의 유사도가 0.9 이상이면 Ne(x,y) 이 참이 된다. 이웃인 경우는 91%의 확률로 같은 지형을 갖 는다는 사실을 확인하였으며, 이를 바탕으로 식 (12)와 같은 공식을 생성하였다. 이 공식의 가중치는 다른 규칙 의 가중치의 최소값인 0.79보다 적당히 작은 0.5로 설정 하였는데, 이는 다른 모든 공식을 적용한 후 지형을 파악 할 수 없는 데이터는 이웃 관계를 이용하여 지형을 파악 하기 위함이다.

    x yNe x,y Cover_Type x Cover_Type y
    (12)

    훈련 집합 내에서 공식이 참인 경우의 수를 계산하여 이를 ni 로 하여 식 (2)의 Z값을 계산한 후 완성된 모델은 식 (13)과 같다.

    P X = x = exp i = 1 F w i n i x 67326.12
    (13)

    이 모델로 어떤 레코드의 결과변수 값(지형이 Type 1이 면 z = 1, Type 2이면 z = 2) 을 예측하는 것은 z = 1 일 때 만족하는 공식들의 가중치 합 i = 1 F w i n i z = 1 z = 2 일 때 만족하는 공식들의 가중치 합 i = 1 F w i n i z = 2 을 비교 하는 것과 같다. 이와 같은 방식으로 검증 데이터에 포함 된 숲의 지형을 예측하였고 그 결과를 나타내는 혼동행렬 은 <Table 3>과 같다.

    k-nn, 의사결정 나무, 판별분석을 수행하여 본 연구에 서 제안하는 방법과 비교하였다. 정분류율(Accuracy)과 재현율(Recall)을 기준으로 비교한 결과는 <Table 4>와 같다.

    제안한 방법은 k-nn과 의사결정 나무보다 정분류율과 재현율이 높지만 판별분석보다는 낮았다. 하지만 본 연 구에서 제안하는 방안은 판별분석에 비해 좋은 설명력을 가지고 있다. 예를 들어, 네트워크 형태의 도식을 통해 종속 변수가 특정한 값을 가지는 이유에 관해 설명이 가 능하고 특정한 값을 가질 확률을 제시할 수 있다. 이에 반해, 판별 분석은 차원이 증가하면 도식으로 표현이 어 렵다는 단점이 있다. 또한, 판별 분석은 데이터의 정규성 (normality)을 가정하지만, 마코프 논리네트워크에서는 데 이터에 대한 가정이 필요치 않다. 이러한 점을 고려하였 을 때, 본 연구에서 제안하는 방안이 분류기로서 양호한 성능을 나타냄을 알 수 있다.

    완성된 모델을 사용하는 방법을 예시하기 위하여 임 의로 선정한 데이터(레코드 #18)를 적용해 본다. 레코드 #18의 속성값은 다음과 같다.

    Elevation = 2, Wildness_Area = 1, HillShade_Noon = 3, Aspect = 2, Slope = 2, … , Soil_Type = 30

    #18을 <Table 2>의 공식들과 식 (12)의 공식에 적용한 결과 만족여부는 <Table 5>와 같다. 이에 따라 i = 1 F w i n i z = Type 1 i = 1 F w i n i z = Type 2 를 비교해보자 z = Type 1 라고 가정했을 때 만족하는 공식은 없으므로 i = 1 F w i n i z = Type 1 = 0 이고, z = Type 2 라고 가정했을 때 3, 4, 6번째 공식을 만족하므로 i = 1 F w i n i z = Type 2 는 3, 4, 6번째 공식의 가중치의 합인 3.467538과 같다. 따라서 #18의 z값은 2라고 보는 것이 합당하므로 #18의 결과변 수 값은 2(즉, Type 2)이다.

    #18을 중심으로 마코프 논리네트워크의 일부를 <Figure 3>과 같이 도식화할 수 있다. 우선 #18은 공식 3을 만족 하므로, 공식 3에 포함된 Wilderness_Area_1(18) 노드와 Cover_Type 2(18) 노드를 생성한다. 같은 방법으로 공식 4, 5에 포함된 노드들을 생성한다. 공식 6을 이용하여 #18과 이웃 관계에 있는 데이터들을 나타낸다. 예를 들어, #788 은 #18과 이웃 관계에 있으므로 Ne(18,788)이라는 노드를 생성한다. 한편 #788의 결과변수 값은 2이므로 Covertype 2 (18) 노드와 연결한다. 이때, 노드는 중복되지 않게 생성 한다.

    이렇게 만들어진 네트워크는 다음과 같이 해석할 수 있다. #18은 Wilderness_Area_1(18), Elevation2(18)와 Hillshad_ Noon4(18)을 만족하므로 결과변수가 Covertype 2값을 갖 는다고 해석할 수 있다. 물론, 이웃들이 Covertype 2를 만족하므로 18번 데이터 역시 Covertype 2값을 갖는다고 해석할 수도 있다. 특정 노드를 시발점으로 하여 에지를 따라 순차적인 해석 역시 가능하다. 예를 들어, #10048의 결과변수가 Covertype 2값을 가지므로 그 이웃인 #18 역시 Covertype 2값을 가지며, Covertype 2를 가지므로 Elevation 2 (18)를 만족한다고 할 수 있다. 또한, 가중치는 에지의 강 도를 나타내므로, 가중치가 가장 높은 4번 공식을 만족 할 확률이 다른 공식을 만족할 확률보다 높다.

    5.2.2Qualitative Bankruptcy

    연관분석을 통해 주요 연관규칙을 선정하고 이를 <Table 6>과 같이 1차 논리 형태로 변환하였다. 주요 규칙을 선 정하기 위한 임계치는 1.3을 사용하였다.

    모든 설명 변수가 N(Negative), A(Average), P(Positive) 값을 가져, N을 -1로, A를 0으로, P를 1로 변형하여 데이 터 맨하탄 유사도를 다음과 같이 계산하였다.

    M p,q = 1 1 + i n p i q i
    (14)

    맨하탄 유사도가 1인 경우를 이웃으로 설정하였고, 그 결과 각 레코드당 평균 이웃수는 2.97개로 나타났다. 또 한, 이웃끼리 같은 클래스를 가질 확률은 1로 나타났다. 즉, 이웃인 경우에는 모두 같은 클래스를 갖는다. 이를 바탕으로 식 (15)와 같은 공식을 생성하였다. 이 공식의 가중치는 다른 규칙의 가중치의 최소값인 1.343보다 적 당히 작은 1로 설정하였는데, 이는 다른 모든 공식을 적 용한 후 클래스를 파악할 수 없는 데이터는 이웃 관계를 이용하여 클래스를 파악하기 위함이다.

    x yNe x,y Class x Class y
    (15)

    훈련 집합 내에서 공식이 참인 경우의 수를 계산하여 이를 ni 로 하여 식 (2)의 Z값을 계산한 후 완성된 모델은 식 (16)과 같다.

    P X = x = exp i = 1 F w n n i x 606.0786
    (16)

    이 모델로 어떤 레코드의 결과변수 값을 예측하는 것은 (class = NB) 일 때 만족하는 공식들의 가중치 합 i = 1 F w i n i class = NB 과 class = B 일 때 만족하는 공식들의 가중치 합 Σ wini(class = B) 을 비교하는 것과 같다. 이를 이 용하여 검증 데이터에 포함된 class를 예측하였고 그 결 과를 나타내는 혼동행렬은 <Table 7>과 같다.

    k-nn, 의사결정 나무, 판별분석을 수행하여 본 연구에서 제안하는 방법과 비교하였다. 정분류율과 재현율을 기준 으로 비교한 결과는 <Table 8> 과 같다.

    k-nn과 본 연구에서 제안하는 방법은 정확도와 재현율 모두 100%였고, 의사결정나무와 판별분석은 정확도가 각 93.5%와 98%였다. 도식화 방법과 해석 방법은 제 5.2.1절 을 참고하기 바란다.

    6.결 론

    본 연구에서는 마코프 논리네트워크의 1차 논리 공식 을 구성하기 위하여 연관규칙을 적용하였다. 연관규칙들 이 모든 데이터를 커버할 수 있도록 연관규칙의 수를 적 절히 조절하기 위해 데이터 간 자카드 계수에 의한 유사 도를 계산하여 이웃을 정의하였다. 연관규칙으로부터 생 성된 1차 논리의 가중치를 학습하기 위해 WCSL을 사용 하였다. 구성된 1차 논리를 통하여 마코프 논리네트워크 를 완성하였다.

    본 연구에서는 마코프 논리네트워크를 학습할 때, 발 생하는 두 가지의 문제점을 해결하기 위한 새로운 방안 을 제시하였다는 것에 의의가 있다. 첫 번째 문제점은 1 차 논리의 지식베이스를 구성할 때 도메인 지식에 기반 하여 생성해야 한다는 점과 두 번째 문제점은 1차 논리 공식의 가중치를 학습하는 데 많은 계산량이 필요하다는 점이다. 이를 해결하기 위해서 연관규칙과 이웃의 정의 를 이용하여 1차 논리를 구성하고 해당 가중치를 계산하 였다.

    하지만 본 연구에서 제안하는 방법은 클래스 분포가 한 클래스로 치우친 데이터 셋을 사용할 때, 좋은 결과를 내지 못할 수 있다는 한계가 있다. 이는 적은 빈도의 클 래스를 포함하고 있는 연관 규칙의 지지도가 낮아, 주요 연관 규칙으로 선정되지 않을 수 있기 때문이다. 또한, 유사도에 적용된 가중치가 객관적으로 설정되지 않았다 는 한계점도 가지고 있다.

    추후 연구과제로는 각 규칙을 만족하지 않을 때 감점을 매겨, 클래스 분포가 균일하지 않더라도 좋은 결과를 낼 수 있는 모형 개발이 필요하다. 또한, 유사도에 적용된 가 중치를 설정하는 객관적인 방법을 개발하는 것이 있다.

    Figure

    JKISE-38-74_F1.gif

    Markov Logic Network Applying the Formulas

    JKISE-38-74_F2.gif

    Procedure of Suggested Algorithm

    JKISE-38-74_F3.gif

    Part of Markov Logic Network Model

    Table

    Criteria for Data transformation

    Result of Association Rule Analysis 1

    Confusion Matrix of Suggested Method Result 1

    Overall result1

    18th Data Property

    Result of Association Rule Analysis 2

    Confusion Matrix of Suggested Method Result 2

    Overall result2

    Reference

    1. Domingos P , Lowd D (2009) Markov Logic : An Interface Layer for Artificial Intelligence , Morgan and Claypool,
    2. Domingos P , Kok S , Lowd D , Poon H , Richardson M , Singla P (2008) Probabilistic Inductive Logic Programming, Springer,
    3. Geneserth MR , Nilsson NJ (1987) Logical Foundations of Artifical Intelligence , Morgan Kaufmann San Mateo,
    4. Getoor L , Tasker B (2007) Introduction to Statistical Relational Learning, MIT Press, Cambridge,
    5. (2009) Max-Margin Weight Learning for Markov Logic Networks , Proceedings of the European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases, pp.564-579
    6. Hwang KB , Bong SY , Ku HS , Paek EO (2010) Semantic Document-Retrieval Based on Markov Logic , KIISE Transactions on Computing Practices, pp.663-667
    7. Kok S , Domingos P (2009) Learning Markov Logic Networks Structure via Hypergraph Lifting , Procceding ICML of the 26th Annual International Conference on Machine Learning, pp.505-512
    8. Kolaczyk E (2009) Statistical Analysis of Network Data, Springer,
    9. Lowd D , Domingos P (2007) Efficient Weight Learning for Markov Logic Networks , Knowledge Discovery in Database: PKDD, pp.200-211
    10. Park HC (2010) Standardized Evaluation Method Based on the Association Rule Mining , Journal of the Korean Data and Information Science Society, Vol.21; pp.891-899
    11. Park JS , You WK , Hong KH (1998) Association rule discovery and its application , Journal of KIISE, Vol.16; pp.37-44
    12. Richardson M , Domingos P (2005) Markov Logic Networks , Machine Learning, Vol.62; pp.107-136
    13. Son JE , Kim SB (2014) Rule Selection Method in Decision Tree Models , Journal of the Korean Institute of Industrial Engineers, Vol.40; pp.375-381
    14. So GH (1990) Symbolic logic, Kyungmoon Publishers,
    15. Tan PN , Steinbach M , Kumar V (2006) Introduction to data mining, Addison Wesley,