Top > Info > Data Mining > 2-2. 기억기반추론(Memory-Based Reasoning)


▷▶ 기억기반추론(Memory-Based Reasoning)

 

사람들은 그들의 지난 경험에 의해 결정을 내리는데 익숙하다. 누군가가 군중 속에서 한 얼굴을 떠올린다면 그들은 그들의 경험에 의해 그가 아는 얼굴을 떠올릴 것이다. 의사가 병을 진단할 때는 그들은 그들이 경험했던 비슷한 환자나 증상을 현재의 상황에 적용할 것이다. 또한 분석가가 보험료를 타내기 위한 사기인지 아닌지를 판별할 때도 그들은 종종 앞선 비슷한 경우의 경험으로 사기인지 아닌지를 판별한다. 군중 속에서 얼굴을 구별하거나 병을 진단하거나 또는 보험의 사기 여부를 구별하거나 비슷한 과정을 거친다. 첫번째는 비슷한 경우를 경험으로부터 밝혀낸 다음 이러한 경험으로부터 정보를 찾아낸 정보를 적용한다. 이것이 바로 기억 기반 추론(Memory-Based Reasoning ,MBR)의 핵심이며 직접적인 데이터 마이닝 기술과 비슷한 경험을 이용한다. 데이터 베이스의 알고 있는 레코드를 유지함으로써 MBR은 이웃한 새로운 레코드를 찾아내고 그 이웃들은 분류와 예측에 쓰이게 된다.

MBR이 흥미를 끄는 것 중의 하나는 그 능력이 데이터를 그 자체로 이용한다는 것이다. 다른 데이터 마이닝 테크닉과는 달리 이것은 레코드의 포맷에 개의치 않는다. 오직 다음의 두 가지에 관심이 있다. 두 레코드간의 거리를 나타내는 distance function과 답에 도달하기까지의 결과를 조합한 combination function이 그것이다. 이들 함수들은 거의 모든 레코드들의 표준 데이터 타입으로 손쉽게 정의되어 있다. 또한 그들은 지리적 위치, 이미지, 복잡한 문자열등과 같이 일반적으로 다른 분석기법으로 다루기 힘든 데이터 형태를 다룰 수 있다. 이 장에서는 사례를 통해 MBR의 뉴스 기사에서의 성공적인 적용을 보이게 되는데 하나의 예로 문장으로만 된 뉴스 기사에서 주제 코드를 정하는데 잇점이 있다는 예를 보이게 될 것이다.

MBR은 또한 보다 일반적으로 비즈니스 환경에서 찾아지는 관계형 데이터에 알맞다. 거리와 조합 함수는 비즈니스 환경에서의 복잡한 레코드와 때로는 어떤 필드에서 누락된 값들을 처리하는 데서 필요로 하기도 한다. MBR의 적용은 많은 곳에서 일어난다.

 

 

MBR의 간편성은 다른 테크닉에 비해 파워와 장점을 가지고 있다. 정의의 모호함은 MBR이 거의 모든 형태에 적용할 수 있도록 하는 것이다. 관계형 데이터베이스에 있는 데이터를 위해서는 비록 실행이 이슈가 아니지만 SQL 을 이용해서 그 기술을 만족할 수 있다. 또 다른 강점은 그것의 적용범위에 있다. 과거 데이터를 통해 새로운 데이터를 만들 수 있을 뿐 아니라 MBR는 지난 데이터의 새로운 범주와 새로운 정의를 내릴 수도 있다. MBR은 또한 오랜 기간에 걸친 훈련이나 정해진 포맷에 따라 입수되는 메시지 없이도 좋은 결과를 제공해 준다.

이러한 장점들은 비용이 뒤따른다. MBR은 많은 자원을 소모하는 경향이 있다. 왜냐하면 많은 양의 과거 데이터가 그들의 이웃을 찾기 위해 반드시 읽혀져야 하기 때문이다. 새로운 레코드를 분류하기 위해서는 가장 가까운 이웃 데이터를 찾기 위해 모든 과거의 레코드를 요구할 수 있다. 새로운 레코드를 분류하는 것은 과거의 데이터로부터 가장 인접한 이웃을 찾는 것이라 할 수 있다, 이미 훈련된 neural network 이나 decision tree로부터 적용하는 것보다 훨씬 많은 시간이 소요된다. 새로운 기술의 포인트는 과거 데이터의 크기를 줄이는 방법이다. 좋은 거리 함수나 조합 함수를 만드는 것은 그리 어렵지가 않은데도 불구하고 최적의 함수를 찾는 것은 어느 정도의 노력이 필요하다.

 

어떻게 MBR이 수행되는가?

간단한 분류 문제에서 어떻게 MBR이 적용되는가 보자. 4장에서 소개된 극장관람객 데이터를 보면 이 예에서는 오직 네 개의 가장 인기 있는 영화가 이용되었다. MBR을 연령대와 출처에 따라 도시화하는 가장 좋은 방법이 그림 9-1에 나와 있다.

그림 9.2는 역시 세명의 알려지지 않은 응답자를 포함한 스캐터 그래프이다. 그래프를 이용하면 새로운 응답자에 인접한 세 이웃들을 쉽게 찾아낼 수 있다. 예측을 위해서 새로운 응답자들이 본 최근 영화를 각각의 가까운 이웃이 본 최근영화라 하자. 오리지날 데이터에 대한 원칙이나 오랜 훈련기간 없이 이 프로세스는 실행 된다. 이 최근접 이웃 접근(The nearst neighbor approach)은 매우 지역적이다. 오직 새로운 기록과 흡사한 기록만이 가장 최근에 본 영화중 가치를 지정하여 어떤 역할을 할 것이다.

이 예는 매우 간단하다. 그러나 MBR의 주요 요소를 보여준다. MBR은 지금 까지 있었던 일들에 대한 자료의 데이터 베이스에서 가장 비슷한 경우를 찾아냄으로써 응답자들을 위해 알려지지 않은 카테고리를 결정지어준다. MBR은 두 경로가 있다. 인식경로(learning phase)는 역사적 데이터베이스를 만들어낸다. 예측경로(prediction phase)는 MBR을 새로운 경우에 적용시킨다. MBR이 문제해결에 적용되는 중요 쟁점 세가지는,

MBR은 다음 두 가지 모두 사용된다.

분류- 영화를 계속 보면서 선례의 영화 데이터에 개별적인 카타고리를 할당하고,

예견- 계속되는 가치의 할당.

 

과거 자료의 결정

  과거 자료(historical records)는 -수련과정(training set)이라고도 일컬어지기도 한다- 이용 가능한 자료의 부분집합이다. 수련과정은 과제에 관한 것들을 모두 커버할 넉넉한 자료의 공급이 필요하다. 그러나 무작위 샘플은 그것들을 모두 커버한다고 적절한 것은 아니다. 어떤 일부의 영화는 많은 관객을 동원하고 많은 수의 인기 없는 영화는 겨우 적은 수의 관객을 동원한다. 그러므로 모든 영화를 샘플로 활용한다는 것은 문제가 된다. 적절한 자료란 빈도수가 중요하다. 다른 예로 좋은 자료가 되기 위해서 심장병은 간암에 비해 빈도수가 높고, 새로운 이야기 소재로 컴퓨터산업에 관한 것이 플라스틱에 관한 것이 빈도수가 높은 것들과 같이 자료는 대략 통계량이 형평성을 지녀야 한다.

 

과거 자료의 표현

  예측을 하는데 MBR이 예측을 위해 쓰이는 데는 그것이 어떻게 컴퓨터로 나타내어질 수 있느냐에 달려있다. 스캐터 그래프를 이용한 접근법은 적은 수의 간단한 데이터를 이용하여 작업하는 사람에게 유용하지만 컴퓨터로 잘 맞지 않는다. 그 간단한 근접한 점들을 찾아내는 방법은 알려지지 않은 경우들의 거리를 알아내야만 한다. 실험의 횟수가 증가할수록 새로운 기록으로 이웃을 찾는데 더 많은 시간을 필요로 한다.

몇몇 특화된 데이터베이스, 예를 들어 도식화된 정보는 기록들이 서로 비슷하게 나타난다. 문자 데이터베이스 역시 비슷한 기능을 가진다. 점차, 이런 기능들은 연관 데이터 베이스로 나타난다. 그 밖에도 많은 효율적인 기능들이 있다.

MBR을 보다 효율적으로 만드는 방법은 과거자료에서 기록(record)의 수를 줄이는 것이다. 그림 9.3는 위 의 다이아몬드, 아래의 사각형 두 지역의 경계를 잘 보여준다. 이 그래프에는 40개의 점이 있지만 사실 거의 모두 redundant 하다. 그림 9.4는 겨우 8개의 점을 있을 뿐이지만 같은 결과를 보여준다. Training set의 크기는 MBR에 많은 영향을 미친다.

이 자료의 수가 줄어든 것을 해석할 것인가? 가장 실용적인 방법은 다른 카타고리를 포함한 자료를 찾아내는 것이다. 다른 카타고리의 클러스터들이 떨어져 있다면 일은 쉬워진다. 그러나 다른 카타고리의 클러스터들이 중첩되고, 어떻게 정의 내리기 어려운 상황이라면 MBR의 결과는 형편 없이 될 것이다. 최근의 리서치는 최적의 “support records”를 찾아내는 것이다. 만약 그런 최적의 set를 찾아낸다면 스프래드쉬트의 칸수를 줄일 수도 있고, MBR을 적절히 적용하기 위해 고성능 컴퓨터를 쓰지 않아도 될 것이다.

 

Distance Fuction, Combination Fuction, 과 이웃 수의 결정

이 세가지는 MBR 이 얼마나 좋은 결과를 얻어내느냐의 열쇠이다. 같은 과거 자료는 이 세가지 요소에 따라 예측을 위한 매우 유용하거나 혹은 전혀 유용하지 않은 결과를 도출할 수 있다. 다행히, 단순거리함수와 조합함수는 문제를 일으키지 않는다.

 

 

예제: 뉴스 기사의 분류

이 예제에서는 뉴스 기사에 분류코드를 지정하기 위 해 MBR이 이용되었다. 이 예제의 결과는 MBR이 다루기 어려운 수백가지 카타고리와 데이터 문제에 연관된 사람들과 자유로운 문장에 이용된 것을 보여준다.

 

코드는 무엇인가?

Dow Jones는 다른 많은 뉴스꺼리와 마찬가지로 그 이야기의 목차에 따라 뉴스 기사에 코드가 된다. 이런 코드는 이용자가 관심있어 하는 기사를 찾는 것을 돕는다. 예를 들어 산업 분석가 가 “자동화산업” 라는 코드로 관련 기사내용을 찾을 수 있다. 이 장에서는 여섯 가지 범주만 이야기 하자, 정부기관, 산업, 사장부문, 제조, 지역, 그리고 주제. 이 자료들은 training set에 따라 361개의 분리된 코드를 가진다. (표9.1) 그 코드의 수와 유형은 기사의 다양함에 따른다. 거의 대다수 기사내용은 지역과 주제어를 포함한다. 그리고 평균적으로 기사마다 세 영역정도의 범주에 포함된다. 한편으로는, 대체로 정부와 생산물 코드에 포함되는 이야기는 거의 없다.

MBR 적용

MBR이 어떻게 뉴스 기사 코드 지정을 쉽게 해 주는지 설명한다. 중요 단계를 보면

결과

MBR은 다른 방법으로 해결할 수 없는 어려운 문제를 해결해 줄 수 있다. 거의 모든 테이타 마이닝 기법들은 문자 데이터를 동시에 카테고리로 묶어서 분류할 수 없다. 문자 서치의 경우 숙련된 편집자가 하는 것과 비교될 수 있다. 그러나 이것은 비슷한 효과를 내지만 훨씬 빠르고 신속한 결과를 준다.

 

거리의 측정

작은 마을로 여행을 갈 때 그 곳의 날씨를 알고 싶어 한다. 그런데 일기 예보는 큰 도시를 기준으로 하기 때문에 작은 마을의 날씨정보나 날씨를 알 수 있는 소스가 될만한 것이 없다. 이럴때는 큰 도시의 날씨정보로 그 근처의 작은 도시의 정보를 알 수 있는 것이다. 이것이 바로 MBR의 날씨 예측의 예이다. 이럴 경우 거리는 두 도시간의 지리적인 거리이다.

 

무엇이 거리함수인가?

거리함수를 기호로는 d(A,B)로 나타내는데 그것의 포인트는 다음의 4가지이다.

1. 두 점 사이의 거리는 항상 정의되고 거리함수는 항상 음수가 아닌 실수이다.

                 d(A,B) >= 0

 

2. 한 점 그 자신의 거리는 항상 0 이다.

                  d(A,A) = 0

 

3. A에서 B까지의 거리나 B에서 A까지의 거리는 같다.

                 d(A,B) = d(B,A)

 

4. A 에서 B까지의 거리는 A에서 C까지의 거리와 C에서 B까지의 거리를 합한 것보다 항상 크거나 같다.

                d(A,B) >= d(A,C)+ d(C,B)

 

거리를 정의하는 방법은 여러가지가 있는데 단순히 합하는 법과 표준화하여 합하는 것 그리고 유클리디안 거리법(Euclidean distance)가 있다.

 

MBR의 장점

곧바로 이해할 수 있을만한 결과를 제공한다.
특별한 연관관계 없는 데이터들이나, 풀기힘든 자료 유형에까지 적용된다.
거의 모든 분야에 효과적으로 수행된다
최소의 노력으로고 Training set을 유지할 수 있다.

 

단점

대형 장비가 필요하다.
데이터 처리와 보관을 위해 대형의 저장시스템이 필요하다.
정보의 선택 여부에 따라 전혀 다른 결과가 도출될 수 있다.

 

기억기반추론의 적용시기

기억기반추론은 예측과 분류 모두에 유용한 직접적인 데이터마이닝 기법이다. 다른 기법과 비교하면 데이터의 패턴이 매우 부분적일 경우 매우 잘 적용된다. 그래서 기억기반추론은 예측과 분류를 목적으로 정보를 부분적으로 통합하는데 강한 능력이 있는 기법이다. 데이터가 복잡하면 복잡할수록 부분적인 패턴은 전체패턴을 지배하는 경향이 있는데 이러한 많은 다른 환경에서 기억기반추론은 유용하다.


Top > Info > Data Mining > 2-2. 기억기반추론(Memory-Based Reasoning)