• Tidak ada hasil yang ditemukan

STP 패턴 추출

Dalam dokumen 비영리 - S-Space - 서울대학교 (Halaman 107-112)

6. 목적지 예측

6.2. 제안 방법

6.2.2. STP 패턴 추출

개인별로 ST 경로 집합 ℒ을 위의 과정을 통해 확보하였다면, 다

음 과정은 이로부터 대상이 빈번하게 행하는 패턴을 확인하는 과정 이 필요하며, 본 섹션에서는 이를 STP 패턴을 추출을 통해 대상의 빈번 패턴을 파악해나가는 과정을 서술한다. 현대인의 생활은 1주일 의 생활 단위로 생활하는 경우가 다수이기 때문에 장소의 방문 패 턴에 주기적인 성향을 보이는 경우가 다수 존재한다. 일반적으로 주 중이냐 주말이냐의 여부에 따라 생활 패턴이 다르게 나타나고, 수행

98

하는 업무나 개인의 생활 주기에 따라 주중 내에서도 요일에 따라 다른 패턴을 보일 수 있다. 예를 들어 매주 금요일 저녁에는 상점을 방문하여 물품을 구매하는 행동을 하고, 다른 요일의 경우 상점에 들리지 않고 귀가하는 행동을 한다면, 상점을 방문하는 행동은 금요 일의 경우에만 장소를 예측할 때 사용해야 한다. 금요일 이외의 다 른 요일에 대해서는 이러한 정보를 활용하는 것이 오히려 목적지 예측에 방해가 될 수 있기 때문에 이를 구분하여 반영할 필요성이 있다. 사전적으로 정보가 주어지지 않을 상태에서 패턴을 발견하기 위해 일주일 단위 내에서 가능한 요일 조합들을 구성하여 요일 조

합별로 ST 경로들을 그룹화하여 관찰하는 방식으로 패턴을 발견하

고자 하였다.

[그림 26] ST 경로에서의 패턴 발견

요일 조합별로 그룹화된 ST 경로들의 집합이 주어졌을 때, 집합

내에서 공통적인 발생하는 패턴을 찾아내는 방법은 경로들 간에 공 통적으로 같은 장소에 방문한 겹치는 시간 구간이 존재하는지 확인

하는 것이다. 위의 [그림 26]는 이에 대한 설명을 보조하는 그림이

다. 그림에서 E1에서 E4의 공통 구간은 화요일과 목요일 10시에서

12시 사이에 발생함을 확인할 수 있으며 이와 같은 장소들이 하나

99

의 패턴을 구성한다. 이 때 패턴 선택의 기준이 되는 것은 주어진 로그로부터 얼마나 해당 패턴이 발생하였는지의 상대적 비율로 표

현한 패턴 지지도 (pattern support)로 지칭하며, 그룹 에 속하는

패턴의 패턴 지지도 는 아래의 수식과 같이 정의된다:

r =∑{ }ℐ( ; )

| |

데이터로부터 선정되는 패턴은 위의 패턴 지지도가 임계치 이상인 경우에만 빈번 패턴으로 인식하는 방법을 사용한다. 패턴의 반복이 많이 관찰될 수 있는 데이터 소스의 경우에는 위의 방식으 로 하여도 패턴을 찾을 수 있지만, 관찰할 수 있는 데이터 소스의 양이 한정적일 경우에는 패턴의 근거가 될 수 있는 데이터의 수가 부족하게 되거나, 방문시간대의 불규칙성에 의해 위의 방법을 통한 안정적인 패턴을 확보하기 어렵다. 실제 많은 경우 반복되는 주기가 주 단위 이상일 경우가 많이 때문에, 1개월 동안 확인하여도 4회 정 도만 관측할 수 있어, 해당 패턴에 대한 통계적으로 충분한 데이터 를 확보하는 것이 사실상 어려운 경우가 자주 발생할 수 있다. 게다 가 장기간의 이동 경로 관측을 통해 패턴을 확인한다 하더라도, 대 상의 행동 패턴이 좀 더 데이터가 충분히 확보되기 전에 변할 가능 성이 존재하기 때문에 일반적인 상황에서 목적지를 예측하기 위해 서는 이에 대한 보완책의 마련이 필요하다.

이러한 상황을 보완하기 위해 본 연구에서는 각 시간 구간에 대

해 선형 감쇄 (linear decay)형 완충 구간을 두는 휴리스틱 (heuristic)

을 제공함으로써 좀 더 유연하게 패턴을 탐색할 수 있는 수행하였

으며 이는 GPS 시스템의 오류를 보정하기 위해 수행하였던 완화 기

100

법[100]과 유사한 역할을 수행한다. 이 후 앞서 정의한 패턴 지지

도를 확인하여 특정 임계치 를 초과하면 빈번 패턴으로 분류하도 록 하였다, 이에 대한 알고리즘을 나타내면 다음의 [그림 27]과 같 다.

Input: , … , Output: P

for each group do ←

for each ST trajectory in group do ( ) = 0

for each in do

e ( ) = 1 < <

max(0,1 − (| − |, | − |)) otherwise end for

( ) = ( ) ( ) | ( ) ( )|

← ∪ { ( )}

end for

r(t) ←∑ ( )∈ ( )

| |

← 1; ξ ← 0

while ∃{t|r( ) ≥ , ∈ ( , ∞)} do ν ← ν + 1

τ ← min{ | ( ) ≥ , ∈ ( , ∞)} ; ←

101 τ ← min{ | ( ) < , ∈ ( , ∞)} ; ← ← ∫ ( )

← ( , , , ) ← ∪ { } end while ← ∪

end for

[그림 27] STP 패턴 추출 알고리즘

는 경로 내에 존재하는 ST 패턴 하나를 의미하고, e ( )는

해당 패턴에 대하여 선형 감쇄가 있는 시간축 t 대한 함수 형태로 변환한 것이다. ( )는 에 포함된 e ( )들의 최대값을 합쳐서 구성

한 함수로 사용자의 하루에 대한 ST 경로인 를 시간의 축 에 대

하여 해당 장소를 방문한 기록이 있으면 1의 값을 가지고, 방문 기 록이 없으면 0을, 그리고 방문한 기록 주변에 선형 감쇄가 있는 함 수의 형태를 지니게 된다. 이 때 불규칙적일 수 있는 방문시간을 보 완하기 위해 방문한 시점 주위로 기울기가 인 선형 감쇄 구간을 주도록 하였다. 는 ( )를 멤버로 하고 있는 함수의 셋으로 이들 함수를 바탕으로 패턴 지지도의 시간 에 대한 함수인 ( )를 도출 한다. 함수 ( )에서 값이 이상인 시간 구간 (τ , )에 대하여 구

간 내의 평균 패턴 지지도인 를 도출하여 번째 STP 패턴 를 그

룹 식별자 , 시간 구간인 (τ , )와 함께 STP 패턴을 표현하는 구성

요소로 사용한다. 이러한 일련의 과정을 통해 에는 그룹에 대한

STP 패턴들이 할당되며, 는 모든 그룹에 대한 들을 포함하는 셋

으로 정의되며 이 가 알고리즘의 최종 결과물인 STP 패턴들의 집

102 합이 된다.

하나의 STP 패턴은 ( , , , )로 구성되어 있으며, 이는 그룹으

로 표현된 주기성 정보와 시간, 그리고 패턴 지지도로 이루어진다. 추출된 패턴을 의미적으로 해석하면 대상이 주기적으로 반복적으로 방문하는 행동을 의미하며, 이 행동은 방문 시간대나 요일이 포함된 일상 행동에서의 패턴을 의미한다. 이러한 패턴을 구성한 이유는 같 은 장소를 방문하더라도 방문 시간대가 다르면 다른 의도를 가지고 있기 때문이다. 장소에 대해 서로 다은 의도로 방문을 하였기 때문 에 다음에 방문할 목적지도 이에 따라 달라질 수 있다. 장소를 방문 하였다는 것은 다음 목적지를 정하는 데에 중요한 판단 요소일 수

있다. 그렇기 때문에 STP 패턴은 목적지 예측을 하는 중요한 정보로

사용할 수 있다.

Dalam dokumen 비영리 - S-Space - 서울대학교 (Halaman 107-112)