Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 20, No. 11, pp.101-116
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 30 Nov 2022
Received 20 Sep 2022 Revised 06 Oct 2022 Accepted 09 Oct 2022
DOI: https://doi.org/10.14801/jkiit.2022.20.11.101

딥러닝 기술에 기반한 사용자 이동 경로의 이상치 탐지 기법

이강준* ; 정현준** ; 이석훈**
*군산대학교 소프트웨어학과
**군산대학교 소프트웨어학과 교수(교신저자)
Anomaly Detection Method of User Trajectories based on Deep Learning Technologies
Kangjun Lee* ; Hyunjun Jung** ; Sukhoon Lee**

Correspondence to: Sukhoon Lee and Hyunjun Jung Dept. of Software Science & Engineering, Kunsan National University, Korea Tel.: +82-63-469-8914 , Email: leha82@kunsan.ac.kr, junghj85@kunsan.ac.kr

초록

이동 경로 데이터는 각종 모바일 디바이스를 이용하여 GPS 위치를 연속적으로 갖는 데이터를 의미하며, 이러한 이동 경로 데이터가 기계 학습에 활용되기 위해서는 데이터 검수 및 정제가 중요하다. 이 중 이상치 탐지 기술은 데이터셋의 이상 데이터를 찾아 데이터의 품질을 향상시켜 기계 학습의 성능을 향상시킨다. 본 논문은 사용자 이동 경로에 대한 이상치를 유형별로 기술하고, 5가지 딥러닝 모델(CNN, DNN, LSTM, Bi-LSTM, LSTM 오토인코더)을 사용하여 이상치를 탐지하는 모델을 제안한다. 또한, 5가지 딥러닝 모델 중 가장 적합한 모델을 선정하기 위하여 실제 이동 경로 데이터셋을 각 모델에 학습시키고 이상치를 탐지하여 그 성능을 측정한다. 비교 평가 결과, LSTM 오토인코더 모델이 다른 모델에 비해 이상치 탐지를 위한 F1-score가 가장 높았으며 안정적인 성능을 보였다.

Abstract

Trajectory data refers to data having a continuous GPS location using various mobile devices, and data inspection and refinement are important in order for such trajectory data to be utilized for machine learning. The Anomaly detection technology improves the performance of machine learning by finding outliers in the dataset and improving the quality of the data. This paper describes outlier types from user trajectories and proposes a model for detecting outliers using 5 deep learning models(CNN, DNN, LSTM, Bi-LSTM, LSTM-autoencoder). In addition, in order to select the most suitable model among the 5 deep learning models, the actual trajectory dataset is trained on each model, and its performance is measured by detecting outliers. As a result of the comparative evaluation, the LSTM-autoencoder model had the highest F1-score for anomaly detection compared to other models and showed stable performance.

Keywords:

anomaly detection, outlier detection, trajectory, deep learning, data quality

Ⅰ. 서 론

최근 모바일 디바이스 및 센서 기술의 확산으로 인해 이동 경로 데이터가 전례 없는 속도로 급증하고 있다. 이러한 이동 경로 데이터는 각종 모바일 디바이스를 이용하여 동물이나 차량, 사람 등에 의해 GPS 위치를 측정하는 방식으로 데이터가 생성되며 그 종류 또한 다양하다[1][2]. 무수히 많은 이동 경로 데이터는 실시간으로 쌓이기 때문에, 실제 서비스로 적용하기 위해서는 데이터 품질을 신뢰할 수 있어야 한다[3].

이동 경로 데이터는 경로 예측, 교통 상황 분석, 행동 분석 등 다양한 서비스에서 활용될 수 있으며, 최근에는 딥러닝 분야에 주로 사용된다[4]. 특히 딥러닝 기술은 데이터의 품질이 매우 중요하므로, 데이터 검수는 딥러닝 학습의 성능을 높이기 위한 중요한 프로세스이다[5]. 이동 경로 데이터의 검수 및 분석을 위해서는 데이터의 양이 충분한지, 시퀀스(Sequence)의 연관성과 좌표의 간격, 올바른 경로인지 등을 확인하는 작업이 요구된다[6].

이러한 모든 사항을 고려하여 데이터 품질을 진단 및 검수하기 위해서는 사람이 직접 하기는 양이 너무 많으며, 규칙 기반으로 자동화하여 품질을 검수하기에는 복잡하여 한계가 있다. 이동 경로 데이터는 시퀀스 데이터이므로 데이터 검수 시 순차적 상관관계를 고려해야 하지만 기존의 연구들은 이를 고려하지 않는다[7]-[9].

이동 경로 데이터는 검수 작업에 앞서 데이터 수집 방식에도 차이가 있다. 이뿐만 아니라 사용되는 분야에 따라서 전처리 방식에도 차이가 있으며, 데이터 전처리 시 상당한 비용과 시간을 투자해야 한다[10]. 사용자 이동 경로의 경우 이동 수단에 따라서 이동 속도가 데이터별로 상이하다. 또한, 이동 경로 데이터는 사람별, 날짜별, 시간별로 이동하는 경로가 다르고 경로의 길이조차 다르다.

이처럼 이동 경로 데이터는 다른 데이터와는 달리 이동성의 패턴을 식별하기가 까다롭고, 그 특징 또한 모호하다. 이러한 이동 경로의 이상치(Outlier)는 정의를 내리기가 어려울뿐더러, 정확한 표준도 정의되어 있지 않다[11].

이와 같은 문제를 해결하기 위해 이동 경로 데이터의 이상치 탐지에 대한 연구들이 진행되어왔다[12][13]. 이상치 탐지 기술은 데이터셋의 이상 데이터를 찾아 데이터의 품질을 향상시켜 기계 학습의 성능을 향상시킨다.

한편, [14]는 필터와 알고리즘을 조합하여 직접 수집한 이동 경로 데이터를 정제하였다. 하지만 이 연구는 이상치 탐지를 위해 단순히 GPS의 위치 데이터만을 이용하여 시간, 거리, 속도, 각도 등의 조건 필터를 적용하였을 뿐 이동 경로 전체의 패턴을 분석하지는 않는다. 예를 들어, 하나의 데이터 안에 두 개 이상의 이동 경로가 섞여 있는 패턴 등은 탐지하지 못한다.

[15]는 이동 경로의 전체 패턴을 확인하기 위해, 출발지와 목적지가 정해져 있는 데이터를 이용하여 유사도 측정 기반 클러스터링 방식의 이상치 탐지 기법을 제안한다. 이러한 데이터는 경로가 특정 범위로 정해져 있으므로, 사용자가 일반적인 경로로 이동하지 않는다면 이상 경로로 판별할 수 있다. 이는 경로 간 거리를 비교하는 단순한 방식만으로도 이상 경로를 탐지할 수 있다. 하지만, 출발지와 목적지가 여러 개인 이동 경로 데이터는 단순한 패턴이 아닌 다양하고 복잡한 패턴의 이동 경로를 지닐 수 있으므로 단순한 알고리즘만으로는 이상치를 탐지하기 힘들다. 그러므로 이상치 탐지를 위하여 사람이 정의하지 못하는 이동 경로의 복잡한 패턴까지 분석할 수 있는 딥러닝 기반의 기계 학습 모델이 요구된다.

본 논문은 딥러닝 기술에 기반한 사용자 이동 경로 데이터의 이상치 탐지 기법을 제안한다. 이를 위하여 사용자 이동 경로 데이터에 대한 이상치를 정의하고 유형별로 기술한다. 또한, 이상치 탐지를 위하여 제안 기법을 5가지 딥러닝 모델(CNN, DNN, LSTM, Bi-LSTM, LSTM 오토인코더)을 활용하여 기술한다. 이후, 실제 사용자 이동 경로 데이터셋을 이용하여 각 딥러닝 모델별로 이상치 탐지의 성능을 측정하고, 어떤 모델이 제안 기법에서 이상치 탐지에 가장 적합한지를 확인한다.

제안 기법은 딥러닝을 사용함으로써 사용자 이동 경로 데이터에서 사람이 식별하지 못할 수 있는 패턴의 이상치를 식별하는 것이 가능하다.

탐지한 이상치는 인공지능 학습용 데이터의 정확도를 향상 시키는 데 도움을 주고, 의사결정 서비스의 질을 높이는 데 활용 가능하다. 또한, 데이터의 이상치를 찾아냄으로써 데이터 검수 기능을 하여 데이터 품질을 보장하는데 도움을 준다[16].

본 논문의 구성은 다음과 같다. 제2장에서 이상치 탐지 기법의 관련 연구를 소개하고, 제3장에서는 본 논문에서 제안하는 사용자 이동 경로의 이상치 탐지 기법을 기술한다. 제4장에서는 실험 방법 및 실험 결과에 대한 비교 평가를 기술하며, 마지막으로 제5장에서는 결론을 기술한다.


Ⅱ. 관련 연구

이 장에서는 시퀀스 데이터의 이상치 탐지 기법들과 이동 경로에 사용되는 딥러닝 기반의 이상치 탐지 기법들에 대한 관련 연구를 기술한다.

2.1 시퀀스 데이터의 이상치 탐지

[17]은 무기체계에서의 군수와 정비 이력 등에서 누락된 기록이 있거나 정상적이지 않은 데이터가 입력되는 등 야전 운용 데이터의 이상치와 결측치(Missing value)를 찾아내고 처리하는 연구이다. 이 연구는 단순히 선형 회귀를 사용하여 이상치를 찾아내었기 때문에 날짜별로 기록된 야전 운용 데이터의 경우, 시퀀스 데이터의 특성인 순차적 상관관계를 고려하지 못한다.

[18]은 네트워크 침입, 도로 교통, 온라인 트래픽, 당뇨병 진단 데이터 등을 CNN(Convolution Neural Network) 모델을 사용하여 이상치를 탐지하였다. 시계열 데이터로 이루어져 있는 데이터의 시계열을 예측하고 예측한 값에 대한 오류를 기반하여 이상치를 탐지하였다. CNN 모델은 주로 컴퓨터 비전에서 사용되지만, 시계열 데이터를 분석하는 데도 사용한다.

[19]는 수냉식 냉각기 작동 데이터에서 이상치를 탐지하고 분류하는데 DNN(Deep Neural Network) 기반 모델을 사용하였다. 이 연구는 오토인코더(Autoencoder)와 가우시안 혼합 모델(Gaussian mixture model)을 사용한 딥러닝 프레임워크에서 나온 데이터로 DNN에서 이상치를 분류한다.

[20]은 심전도(ECG) 데이터에 대해 이상치를 탐지하여 부정맥을 감지하는 연구이다. 사람 심장의 건강을 측정한 데이터는 시계열 데이터로 이루어져 있어 시간 간격을 고려할 수 있는 모델인 LSTM(Long Short-Term Memory) 모델을 사용하였다.

[21]은 여러 가지의 산업 시계열 데이터의 이상치를 탐지하기 위해 데이터를 양방향으로 학습하는 Bi-LSTM(Bidirectional LSTM) 기반의 모델을 사용하였다. 이 연구는 시계열 데이터의 이상치를 탐지하기 위해 GAN(Generative Adversarial Network) 모델과 Bi-LSTM 모델을 결합한 프레임워크를 사용하여 시계열의 특징 상관관계를 고려하면서 재구성 손실 및 판별 손실을 통해 이상치를 탐지한다.

[22]는 시퀀스 데이터를 임의로 만들어 딥러닝 모델인 LSTM 오토인코더로 이상치를 탐지하였다. 이상치 탐지 시, 시퀀스 데이터의 순서뿐만 아니라 데이터 발생 시간 간격을 특징으로 고려하여 이상치를 판단하였다. 하지만 해당 연구는 실제 수집된 데이터가 아닌 가상으로 데이터를 만들었기 때문에, 시퀀스 데이터의 복잡성까지는 구현하기 어려우며 실제 시나리오에 적용했을 때의 유용성을 판단하기 어렵다.

[23]은 이상치 탐지 시 LSTM 오토인코더와 그래프 오토인코더를 결합한 모델을 사용한다. LSTM 오토인코더에서 시퀀스 간의 순서를 학습하고, 그래프 오토인코더에서는 시퀀스 간의 시간 간격을 학습한다. 이 연구 또한 데이터를 가상으로 생성하여 실험을 진행하였기에 실제 수집된 시퀀스 데이터에서 발견되는 이상치의 특징까지는 구현하는 데 한계 있다. 따라서 실제로 수집된 시퀀스 데이터에 적용하였을 때 이상치를 잘 탐지하는지는 알 수 없다.

2.2 이동 경로 데이터의 이상치 탐지

[24]는 택시 이동 경로 데이터의 이상치를 탐지하기 위해 자주 가는 택시의 경로를 그리드(Grid)화 하고 각 방향 벡터, 밀도, 주행거리를 고려한다. 하지만 이 연구는 이상치를 탐지하기 위해 빈도수가 높은 경로만을 사용하므로 다른 경로에 대해서는 이상치를 탐지하기 어렵다. 한편, 기존의 많은 연구들은 이 연구와 같이 이동 경로를 간소화하기 위하여 이동 경로의 그리드화를 이용한다.

[25]는 이동 경로 데이터의 전체 경로와 부분 경로에 대한 이상치 탐지를 위해 운전자의 운전행동 및 운전 선호도에 기반한 확률 모델을 사용한다. 하지만 이 연구의 확률 모델은 이동 경로의 시퀀스를 고려하지 않고, 이상치를 선형으로 분리하므로 데이터의 복잡성을 모두 고려하기 어렵다.

딥러닝은 사람이 발견하기 어려운 이동 경로의 복잡한 특징 분석이 가능하므로, 최근 이동 경로의 이상치 탐지 기법들은 다양한 딥러닝 기술들을 활용하고 있다. 그리고 그 중에서 이동 경로 데이터는 그 특성상 시퀀스의 순서를 고려해야 하므로 RNN(Recurrent Neural Network) 계열의 모델을 사용하는 것이 적합하다[26].

따라서, [13]은 공항 내에서 보행자의 이동 경로를 보고 의심스러운 행동을 자동으로 감지하기 위해 LSTM 오토인코더 모델을 사용한다. 공항 내의 보안을 위해 CCTV로 수집되는 감시 영상에서 이상 현상을 딥러닝을 기반하여 감지한다. 이동 경로의 이상 현상을 실시간으로 발견함으로써 모니터링하는 직원의 부담을 줄인다.

앞선 연구들은 이동 경로 데이터가 차량 및 보행자 등과 같은 동일 이동 수단에 기반하여 수집된 데이터가 대부분이었다. 따라서, 본 논문은 도보, 뛰기, 차량 이용 등의 다양한 이동 수단에도 적용 가능한 이상치 탐지 모델을 연구하고자 한다.


Ⅲ. 이동 경로의 이상치 탐지 기법

이 장은 사용자 이동 경로 데이터의 이상치 탐지에 관해 기술한다. 사용자 이동 경로 데이터와 이를 위한 이상치 탐지를 정의하고, 제안 기법의 구조를 보인다. 이후 딥러닝 학습을 위한 데이터 전처리와 모델 학습의 구조에 관해 기술한다.

3.1 사용자 이동 경로 데이터

본 논문은 사용자의 이동 경로를 기반으로 이상치를 탐지하기 위하여 본 연구에 사용하는 데이터를 설명하고, 사용자 이동 경로의 특징을 정의한다.

본 논문에서 실험을 위한 데이터는 출발지와 목적지가 뚜렷하게 존재하고 이동 경로가 명확히 보이는 경로 예측이 주목적인 데이터이다. 실험을 위해 사용되는 DSEM-Trajectory 데이터는 국내 한 대학에서 59명의 대학생을 대상으로 스마트 워치를 이용하여 수집한 라이프로그 데이터이다[27]. 2018년 7월을 시작으로 하여 2020년 1월까지 약 1년 6개월 동안 수집된 데이터셋이며, 사용자 이동 경로, 심박수, 행동 유형, 3축 가속도 데이터 등을 포함하고 있다.

해당 데이터셋의 컬럼은 id, userid, time, set_id, set_seq, x, y, z, HR, lat, lon, alt, acttype으로 총 13개로 구성되었다. 표 1은 본 논문에서 사용하는 사용자 이동 경로 데이터의 테이블을 보이며, userid, time, set_id, set_seq, lat, lon으로 총 6개의 컬럼을 사용한다. 이는 사용자 이동 경로에 해당하며, 59명의 사용자에 대해 총 35,234개의 이동 경로를 사용한다. 이 데이터셋은 [14]에서 제시한 필터들을 활용하여 정제되었고, 추가로 사람이 수동 정제를 통해 데이터를 검증한 데이터이다.

Table of user trajectory data

하지만 수동 정제를 진행했음에도 정제 기준의 모호함, 정제 작업자의 숙련도 등에 따라 여전히 이상치가 존재한다. 따라서 본 논문은 필터와 사람이 잡아내지 못하는 이상치를 탐지하기 위해 DSEM-Trajectory를 실험 데이터셋으로 선정한다.

3.2 이동 경로의 이상치 유형

이동 경로의 이상치는 데이터 수집 시 센서에 의해 발생하거나, 데이터 정제 시 정제 과정에서 오류가 발생한다. 본 논문은 이동 경로 데이터의 특성을 고려하여 이상치를 점 이상치(Point outlier), 집단적 이상치(Collective outlier), 상황적 이상치(Contextual outlier)로 구분한다[28].

그림 1은 사용자 이동 경로의 3가지 이상치 유형을 보인다. 그림 1(a)는 점 이상치의 예시로 일반적인 경로에서 좌표가 극한점을 가지는 개별 인스턴스를 말한다. 여기서 극한점은 사용자가 가는 진행방향과는 무관하게 현재 경로에서 멀리 떨어진 곳에 좌표가 찍힌 경우이다.

Fig. 1.

Examples of outlier types (a) Point outlier, (b) Collective outlier, (c) Contextual outlier

그림 1(b)는 집단적 이상치의 예시로 이동 경로가 목적지를 향해 한 방향으로 가지 않고 좁은 지점을 불규칙적으로 반복하며 돌아다니는 경우이다. 넓은 범위가 아닌 좁은 범위를 반복하여 돌아다니는 경우는 좌표가 목적지와 무관하게 자주 바뀌는 경로를 말하며, 사용자 이동 경로 데이터의 목적과는 거리가 멀다.

그림 1(c)는 상황적 이상치의 예시로 경로가 앞뒤 시퀀스의 맥락을 고려하였을 때 중간에 불일치하는 지점이 발생하는 경우이다. 이는 하나의 시퀀스 데이터에서 두 개 이상의 경로가 분리되어 있지 않고 합쳐져 있음을 말한다.

이상치 정의 시 점 이상치는 거리와 시간 차이를 구하여 구별할 수 있다. 하지만 극한점이 아닌 이상치인 상황적 이상치와 집단적 이상치는 시퀀스의 맥락을 하나씩 확인해야 발견할 수 있는 이상치이므로 판단하기가 모호하고, 검수 시간 또한 오래 걸리므로 구분하기가 어렵다. 이러한 이상치를 다양한 딥러닝 모델을 사용해서 탐지하여 단순한 알고리즘으로 찾을 수 없는 이상치를 탐지한다.

3.3 제안 이상치 탐지 기법

그림 2는 본 논문에서 제안하는 이상치 탐지 기법의 구조를 보인다. 제안 기법은 데이터를 모델에 학습하기 위한 전처리 과정과 모델 학습을 통한 이상치 탐지 부분으로 구성된다.

Fig. 2.

Proposed method for detecting outliers in user trajectory

사용자 이동 경로에 대해 이상치를 탐지하기 위한 데이터는 위도와 경도로 이루어진 시퀀스 데이터이다. 이 데이터는 지도상에서 좌표로 이루어져 있으며, 학습을 위해 전처리 과정에서 그리드로 변환한다.

모델 학습은 CNN, DNN, LSTM, Bi-LSTM, LSTM 오토인코더 모델을 사용한다. 사용자 이동 경로를 CNN 기반 모델에 학습하는 경우 데이터의 공간정보를 유지한 채 학습을 하는 특성으로 인해 시퀀스 데이터보다는 그리드를 행렬(Grid matrix)로 변환하여 학습한다. 그 외의 DNN, LSTM, Bi-LSTM, LSTM 오토인코더 기반 모델들은 1차원 형태의 입력 데이터가 필요하므로 그리드를 벡터화(Grid Vector)하여 학습한다.

학습된 모델은 출력으로 정상과 이상치를 분류하며, LSTM 오토인코더의 경우 재구성 오차를 계산한 후에 정상과 이상치를 분류한다.

3.4 데이터 전처리

이동 경로 데이터는 GPS로 수집된 데이터로 이루어져 있으며, 지도상에서의 연속적인 좌표이다. 사용되는 데이터의 위도와 경도는 소수점 6번째 자리까지 구분하기 때문에, 아주 근사한 수치의 좌표도 다른 경로로 분류될 수 있다. 따라서 비슷한 경로를 같은 경로로 인식하기 위해서는 이러한 위도, 경도 정보를 간소화를 해야 한다[29].

본 논문은 학습하기 전 전처리 단계에서 위도, 경도로 이루어진 사용자 이동 경로 데이터를 그리드로 변환한다. 그리드는 지도상에서 일정 범위마다 정사각형으로 나눈 면적이다. 그리드의 크기는 위도 및 경도를 기준으로 가로, 세로 66.72m의 길이로 표시한다. 각 그리드의 넓이는 4,451.55m2로 설정한다. 그리드의 경로 표현을 위하여 지도상에서 경로가 그림 3과 같이 있는 경우, 일정한 크기의 그리드에 따라서 좌표가 해당하는 부분만 그리드를 표현한다.

Fig. 3.

Grid expression of a trajectory

그림 4는 CNN 모델이 학습하기 위한 그리드 행렬의 전처리를 보인다. 입력 데이터를 준비하기 위한 추가적인 전처리로 지도상에서 좌표가 있는 그리드는 1로 지정한다. 그 외의 그리드는 0으로 지정한 후 이를 행렬로 처리하여 그리드 행렬을 생성한다.

Fig. 4.

Grid matrix

CNN을 제외한 DNN, LSTM, Bi-LSTM, LSTM 오토인코더 모델은 그리드 벡터를 입력 데이터로 사용하여 학습을 진행한다. 그림 5는 해당 모델들의 입력 데이터를 위한 그리드의 벡터화 과정을 보인다.

Fig. 5.

Grid vector

각 그리드에 인덱스 번호인 Gi를 지정한다. 그 후 좌표에 해당하는 그리드 인덱스를 G65 → G54 → G53 → G52 → G41 → Gn 와 같이 경로의 이동 순서에 맞게 1차원 벡터로 생성한다. 1차원 벡터로 생성된 데이터 중에서 같은 그리드 인덱스가 불필요하게 연속적으로 나온 경우, 중첩을 제거하고 하나의 토큰으로 설정한다. 딥러닝 학습 전, 학습의 원활한 최적화를 위해 그리드 벡터를 최소-최대 정규화(Min-max normalization)를 하여 그리드 인덱스를 0과 1 사이의 범위로 제한한다.

3.5 모델 학습

사용자의 이동 경로 데이터에 대한 이상치를 탐지하기 위해 사용되는 모델은 총 5가지로 CNN, DNN, LSTM, Bi-LSTM, LSTM 오토인코더 기반의 모델들을 사용한다. 각각의 모델을 그림으로 보이고, 모델에 대한 구조에 관해 기술한다.

3.5.1 CNN 기반 모델

CNN은 합성곱 신경망이라고도 하며, 합성곱 레이어(Convolution layer)와 풀링 레이어(Pooling layer)로 이루어진 딥러닝 모델이다. 학습 시 1차원 형태의 데이터인 벡터를 입력으로 사용하는 것이 아닌, 행렬 형태의 입력 데이터를 사용한다.

합성곱은 2차원의 3x3 커널을 적용하고, 풀링 방식은 최대 풀링(Max pooling)을 사용한다. 그리고 중간에 벡터화를 하기 위해 플래튼(Flatten) 레이어를 적용한 후, 완전 연결 계층(Fully-connected layer)을 쌓아 분류한다.

그림 6은 CNN 기반 모델 구조로, 이동 경로 데이터를 행렬로 변환하여 입력으로 받아 입력층에는 32채널의 합성곱와 ReLU 활성화 함수를 사용한다. 은닉층에는 64채널의 합성곱와 ReLU 활성화 함수, 2X2 사이즈의 풀링 레이어, 과적합 방지를 위한 25%의 드롭아웃(Dropout) 레이어 적용, 플래튼으로 벡터화, 128개 노드의 완전 연결 계층와 ReLU 활성화 함수, 드롭아웃 레이어 50% 적용으로 구성된다. 출력층은 시그모이드(Sigmoid)로 이진 분류하여 정상과 이상치를 구분한다.

Fig. 6.

CNN based model structure

손실 함수는 정상과 이상치를 구분하는 이진 분류를 하므로 식 (1)과 같은 BCE(Binary Cross Entropy)를 사용하고, 최적화 기법은 Adam을 사용한다. 식 (1)의 Y는 라벨의 정답 값을 뜻하고, Ŷ는 라벨의 예측값을 뜻한다.

BCE= -1ni=1nYilog Yi^+1-Yilog1-Yi^(1) 
3.5.2 DNN 기반 모델

DNN은 하나의 입력층 및 출력층과 여러 개의 은닉층으로 이루어진 ANN(Artificial Neural Network)이다. 본 논문에서는 DNN 기반의 모델로 가장 기본적인 형태의 딥러닝 모델인, 덴스 레이어(Dense layer)라고도 불리는 완전 연결 계층을 사용한다.

본 연구에서 사용한 DNN 기반의 모델 구조는 그림 7과 같다.

Fig. 7.

DNN based model structure

입력층은 256개의 노드로 이루어진 덴스 레이어와 활성화 함수는 ReLU이다. 은닉층은 256개 노드의 덴스 레이어와 활성화 함수 ReLU, 과적합 방지를 위한 드롭아웃 레이어 25% 적용, 128개 노드의 덴스 레이어와 활성화 함수 ReLU, 드롭아웃 레이어 50%를 적용하여 구성한다. 출력층은 정상과 이상치를 이진 분류하기 위해 시그모이드를 사용한다.

손실 함수는 정상과 이상치를 구분하는 이진 분류를 하므로 식 (1)과 같은 BCE를 사용하고, 최적화 기법은 Adam을 사용한다.

3.5.3 LSTM 기반 모델

LSTM은 입력 데이터의 시퀀스를 고려하는 모델로, 주로 시계열 데이터에 사용하는 모델이다. 이 모델은 RNN의 한 종류의 모델이며, 순환 신경망이라고 불리는 RNN은 입력 및 출력을 시퀀스 단위로 처리한다. 이러한 RNN은 데이터의 길이가 길어지면 과거의 정보가 뒤로 갈수록 전달되지 못하는 장기 의존성 문제(Long-term dependencies)를 지닌다. 이를 위해 LSTM 모델은 기억 셀(Memory cell)을 추가하여 이 문제를 해결한다.

본 연구에서는 그림 8과 같이 LSTM 기반 모델의 입력층에 임베딩 레이어(Embedding layer)로 구성한다. 해당 모델은 순환 신경망 모델이므로 임베딩 레이어에서 가변 길이의 입력 데이터가 패딩 되어있는 부분을 마스킹(Masking)하여 불필요한 부분을 무시한다. 입력층 다음으로 드롭아웃 레이어를 50% 준다. 그 후 셀 사이즈가 32인 LSTM 레이어를 쌓고, 다시 셀 사이즈가 16인 LSTM 레이어를 쌓은 후 출력층에는 시그모이드를 사용하여 정상과 이상치를 이진 분류한다.

Fig. 8.

LSTM based model structure

손실 함수는 정상과 이상치를 구분하는 이진 분류를 하므로 식 (1)과 같은 BCE를 사용하고, 최적화 기법은 Adam을 사용한다.

3.5.4 Bi-LSTM 기반 모델

양방향 LSTM이라고도 불리는 Bi-LSTM은 양방향성을 갖는 LSTM 모델이다. 기존 LSTM 계층에 역방향으로 학습하는 LSTM 계층이 추가로 있다. 이 모델은 정방향과 역방향을 고려하여 데이터를 처리하므로, 입력 시퀀스가 주어졌을 때 시퀀스의 반대인 경우도 학습이 가능해진다. 이는 데이터의 길이가 길어질 경우에, 역방향에서도 학습하므로 양방향으로 정보를 전달하여 성능이 저하되지 않는다.

본 연구에서 사용하는 Bi-LSTM 기반 모델은 그림 9와 같다. 입력층의 임베딩 레이어에서 가변 길이의 입력 데이터가 패딩 되어있는 부분을 마스킹하여 불필요한 부분을 무시한다.

Fig. 9.

Bi-LSTM based model structure

드롭아웃 레이어를 50%를 적용하며, 은닉층에는 16셀 사이즈의 LSTM 레이어, 16셀 사이즈의 Bidirectional LSTM 레이어로 구성한다. 출력층은 시그모이드로 이진 분류를 한다.

손실 함수는 정상과 이상치를 구분하는 이진 분류를 하므로 식 (1)과 같은 BCE를 사용하고, 최적화 기법은 Adam을 사용한다.

3.5.5 LSTM 오토인코더 기반 모델

LSTM 오토인코더는 다른 실험 모델과는 다르게 비지도 학습(Unsupervised learning)방식이다. 오토인코더는 인코더(Encoder)와 디코더(Decoder)로 구성되어 있으며, 입력 데이터를 인코더에서 학습하면 출력으로 나오는 latent representation은 디코더의 입력이 된다. 디코더의 출력은 인코더의 입력 데이터에 대해 재구성을 하며, 원본 입력 데이터와 출력에 대해 차이를 비교하는 학습 모델이다.

그림 10은 본 논문에서 사용하는 LSTM 오토인코더 기반 모델의 구조이다. 인코더 부분에서 입력 데이터를 받을 때 패딩된 부분을 마스킹한다. LSTM 셀과 드롭아웃 레이어를 20% 적용하여 출력으로 latent representation이 나온다. 그 후 다시 디코더의 입력으로 들어가 64셀 사이즈의 LSTM 셀과 20% 비율의 드롭아웃 레이어를 적용한 후 덴스 레이어를 거쳐 출력으로 원본 데이터에 대해 재구성한 데이터가 나온다.

Fig. 10.

LSTM-autoencoder based model structure

재구성한 데이터는 원본 데이터와 비교하여 오차율이 임계값(Threshold)을 넘지 않으면 정상으로 구분하고, 넘으면 이상치로 구분한다. 비지도 학습 모델이므로 재구성한 경로와 원본 데이터 경로의 차이를 구하는 손실 함수로 식 (2)와 같은 MSE(Mean Square Error)를 적용하고, 최적화 기법은 Adam을 사용한다. 식 (2)의 Y는 라벨의 정답 값을 뜻하고, Ŷ는 라벨의 예측값을 뜻한다.

MSE=1ni=1nY^i-Yi2(2) 

Ⅳ. 실험 및 결과

4.1 실험 방법

실험을 위해 Python 3.7.11과 Tensorflow-gpu 2.0.0을 사용하여 구현되었다. 모델 학습을 위한 하드웨어는 NVIDIA GeForce GTX 1080 Ti 2개의 그래픽 카드를 장착하였고, Intel(R) Core(TM) i7-6850K 3.60 GHz CPU를 사용하였으며 64GB RAM이 탑재된 서버를 사용하였다.

실험을 위한 데이터 준비로 DSEM-Trajectory 데이터셋을 이용하여 세 종류의 데이터셋을 생성하였다. 딥러닝 기반의 이상치 탐지를 위한 데이터로 사용자 이동 경로의 이상치를 정의한 후, 정상과 이상치를 라벨링 하였다. 라벨링 시 이동 경로는 시퀀스 데이터이므로 좌표를 하나씩 확인하여 경로의 순서를 고려하였다.

세 종류의 데이터는 정상과 이상치를 분류하였고, 그 외에 정상과 이상치로 분류하기 모호한 데이터는 제외하였다. 제외한 데이터의 경우 경로가 중간에 끊기진 않지만, 데이터의 길이가 매우 길거나 같은 거리를 왕복하는 경우 정상과 이상으로 구분하기 애매하여 제외한다. 실제 지도상에서 이동 경로가 무단횡단같이 도로를 가로지르는 등의 지나가면 안 되는 경우는 제외한다. 또한, 짧은 거리를 바로 가지 않고 불필요하게 크게 우회하는 경우 제외하였다. 이러한 데이터들은 DSEM-Trajectory 데이터 목적인 이동 경로 예측에는 불필요한 데이터이지만 이상치는 아니므로 학습에 제외하였다.

첫 번째 데이터셋(Dataset1)은 사용자 이동 경로 중 제외한 데이터에 그리드의 종류가 2~4개인 데이터를 추가로 제외하고 총 26,277개의 이동 경로가 있다. 이 경우에 그리드의 종류가 2~4개인 데이터 중 이상치가 아닌 데이터는 길이가 짧아 경로 데이터라고 보기 어렵다. 이러한 데이터는 이동 경로 학습 시 딥러닝 모델에 학습할 정도의 충분한 길이가 나오지 않기에 제외하였다. 또한, 그리드의 종류가 1개인 경우 이동 경로 데이터의 목적과는 부적합하다고 판단하여 이상치로 추가 분류하였다. 해당 데이터의 클래스 비율은 정상 데이터가 25,731개이고, 이상치가 546개이다. 학습용 데이터의 정상은 25,458개, 이상치는 273개이다. 시험용 데이터의 정상은 정상 273개, 이상치 273개이다.

두 번째 데이터셋(Dataset2)은 제외한 데이터에 그리드의 종류가 4개 이하인 데이터를 추가로 제외하여 총 26,169개의 이동 경로가 있다. 그리드가 4종류 이하의 데이터 중 이상치가 아닌 데이터들은 그리드의 종류가 1개인 것도 포함하여 데이터셋에서 제외하였다. 이 경우에는 실제 좌표에서는 어느 정도 길이의 이동 경로로 이루어져 있지만, 그 길이가 매우 짧아 그리드로 변환 시 충분한 길이의 학습 데이터가 되지 않아 제외하였다. 해당 데이터의 클래스 비율은 정상 25,731개, 이상치 438개이다. 학습용 데이터의 정상은 25,512개, 이상치는 219개이다. 시험용 데이터의 정상은 정상 219개, 이상치 219개이다.

세 번째 데이터셋(Dataset3)은 사용자 이동 경로 중 제외한 데이터에 추가로 그리드의 종류가 5개 이하인 데이터까지 제외하였다. 이 데이터셋의 이동 경로 개수는 총 23,955개이다. 이 경우에 그리드의 종류가 5개까지는 학습하기에 충분한 길이의 데이터가 나오지 않는다고 판단하여 이상치가 아닌 5개 이하인 데이터는 제외하였다. 해당 데이터의 클래스 비율은 정상 23,955개, 이상치 421개이다. 학습용 데이터의 정상은 23,745개, 이상치는 211개이다. 시험용 데이터의 정상은 정상 210개, 이상치 210개이다.

학습 시 그리드 벡터의 길이는 각 경로마다 다르므로 최대 경로에 맞춰 패딩(Padding)을 넣어 가변 길이의 데이터를 고정 길이로 맞춰 주었다. 이때, 패딩 방식은 제로 패딩(Zero padding)을 적용하였다. LSTM, Bi-LSTM, LSTM 오토인코더 모델의 경우, 순환 신경망 모델임을 고려하여 데이터 입력 시 패딩된 부분에 마스킹을 적용한다.

CNN, DNN, LSTM, Bi-LSTM 모델의 출력층 함수인 시그모이드로 정상과 이상치를 구분할 때, 최적의 결과를 도출하기 위하여 임계값을 조정한다. LSTM 오토인코더 모델의 경우 원본 데이터와 재구성 데이터를 비교하여 계산한 오차율을 통해 이상치를 구분할 때도, 임계값을 최적의 결과로 조정한다. 원본 데이터를 재구성하기 위해서는 학습 과정에서 정상 데이터의 특징만을 가지고 학습을 진행하게 되며, 재구성 시 정상 데이터의 특징과 멀어지면 이상치로 분류하게 된다. 이러한 이유로 학습 시 학습용 데이터에서 정상 데이터만을 가지고 학습을 진행하며, 시험용 데이터는 이상치 탐지 시 정상과 이상치를 구분한다.

4.2 실험 결과 및 비교 평가

본 논문에서 실험한 5가지 모델의 성능 비교를 위한 척도로는 정밀도(Precision), 재현율(Recall), 그리고 F1-score를 사용한다. 이 실험에서 정밀도는 모델이 이상치 데이터라고 분류한 것 중에서 실제 이상치로 맞춘 비율을 말하며 식 (3)과 같다. 재현율은 실제 이상치 데이터 중 모델이 이상치 데이터로 예측한 것이며 식 (4)와 같다.

precision=   (3) 
recall=           (4) 

이 실험은 데이터셋에 대하여 모든 이상치를 탐지해내는 것이 목표이므로 재현율이 가장 중요하다고 할 수 있다. 하지만 재현율이 높더라도 정밀도가 낮을 경우 이상치가 맞든 아니든 수많은 데이터를 이상치로 탐지하게 되고 이는 품질 관리 시 데이터 확인 및 정제에 높은 비용을 초래되는 것으로 연결될 수 있다.

따라서 본 논문은 종합적인 평가 결과로 F1-score를 활용하며 그 측정은 식 (5)와 같다.

F1-score=2precisionrecallprecision+recall(5) 

F1-score는 정밀도나 재현율 중 하나라도 성능이 낮을 경우 F1-score 성능이 같이 낮아진다. 이는 F1-score가 정밀도와 재현율의 조화 평균으로 계산되므로, 두 값이 차이가 날수록 낮아지고, 비슷할수록 높아진다.

실험 진행은 가중치 초기화(Weight initialization), 드롭아웃 등의 랜덤 확률을 고려하여 3가지 데이터셋과 5가지 모델에 대해 각각 10번씩 실험을 진행하였다. 실험마다 정밀도, 재현율, F1-score를 측정하고 평균을 내어 각 모델의 성능을 평가하였다.

그림 11은 Dataset1을 사용하여 5가지의 딥러닝 모델의 이상치 탐지에 대한 비교 평가를 보인다. Dataset1의 경우 재현율은 DNN이 93.71%로 가장 높은 성능을 지녔으며, 두 번째로 재현율이 높은 모델은 LSTM 오토인코더 모델로 90.63%의 성능을 보인다. 반면에, 정밀도는 DNN이 72.75%로 가장 낮은 성능을 보이지만, LSTM 오토인코더 모델은 88.67%로 가장 높은 성능을 보인다. F1-score가 가장 높은 모델은 LSTM 오토인코더로 88.67%의 성능을 보였다. 다른 모델들은 가장 높은 LSTM 오토인코더 모델과 최소 6.7% 이상의 성능 차이를 보인다.

Fig. 11.

Comparative evaluation of the Dataset1

그림 12는 Dataset2를 사용하여 5가지의 딥러닝 모델의 이상치 탐지에 대한 비교 평가를 보인다. Dataset2의 재현율은 DNN이 89.31%로 가장 높은 성능을 지녔으며, 두 번째로 높은 LSTM 오토인코더는 87.31%로 2%의 차이를 보인다. 정밀도의 경우 Dataset1의 실험과 같이 DNN이 가장 낮은 성능을 보이며 68.17%의 정밀도를 보인다. 이와 반대로, LSTM 오토인코더의 경우 정밀도가 86.25%로 가장 높은 수치를 지녔다. 정밀도는 다른 모델의 경우 LSTM 오토인코더 모델과 최소 9.63%의 차이, 최대 18.08%의 차이로 전 실험과 비슷하게 큰 차이를 보인다. F1-score는 LSTM 오토인코더 모델이 86.68%로 가장 높은 성능을 보인다. 다른 모델의 경우, 두 번째로 높은 DNN이 77.22%로 LSTM 오토인코더 모델과 9.46%의 큰 차이를 보인다. CNN 모델은 재현율, 정밀도가 전체적으로 높은 수치는 아니지만 서로 비슷한 값을 가지므로 F1-score가 76.33%이며 세 번째로 높다.

Fig. 12.

Comparative evaluation of the Dataset2

그림 13은 Dataset3에 대한 5가지 모델의 성능 비교 평가를 보인다. 재현율은 LSTM 오토인코더가 89.90%로 가장 높은 수치를 지녔다. 두 번째로 재현율이 높은 DNN은 89.86%를 보인다. 정밀도는 LSTM 오토인코더가 87.76% 수치로 가장 높다. 반면에 LSTM의 정밀도는 68.10%, DNN의 정밀도는 68.45%로 매우 낮은 수치를 보인다. F1-score는 LSTM 오토인코더 모델이 88.26%로 가장 높은 성능을 보인다. 두 번째로 높은 모델은 DNN 모델로, F1-score가 77.47%이며 가장 높은 LSTM 오토인코더 모델과 10.79%의 차이가 난다.

Fig. 13.

Comparative evaluation of the Dataset3

기본적으로는 이상치 탐지에서 재현율이 중요하며, LSTM 오토인코더가 재현율이 높은 편이고 DNN 역시 재현율이 높다. 하지만 F1-score는 세 데이터셋 모두 LSTM 오토인코더의 가장 높게 측정되었다.

표 2는 각 데이터셋에 대한 모델별 F1-score를 보인다. Dataset1을 사용한 실험이 전체 평균으로 봤을 때 가장 높은 성능을 보인다.

F1-score by dataset

이는 사용자 이동 경로 데이터의 이상치 탐지를 위한 데이터 전처리 방식이 가장 적합하다는 것을 알 수 있다. 딥러닝 모델 성능의 경우 LSTM 오토인코더 모델이 Dataset1 뿐만 아니라, 모든 데이터셋에서 가장 우수한 성능을 보인다. 그 외의 모델들은 모든 데이터셋의 평균 성능이 비슷하다.

한편, 이 실험을 진행하면서 동일한 설정값을 쓰는 동일 모델이더라도 랜덤 값이 적용되는 초기 가중치 설정, 드롭아웃의 확률에 따라 그 성능이 차이가 많은 모델들이 있었다. 이는 학습용 데이터셋의 클래스 불균형이 심하며, 특히 한번 정제되었던 데이터셋의 특성상 이상 이동 경로의 수가 매우 적기 때문인 것으로 분석되었다.

예를 들어, 그림 14는 Dataset1을 대상으로 5가지 모델이 최적화된 동일 설정으로 10번의 실험을 진행한 F1-score 및 그 평균을 보인다. 그림 14에서 차트 안의 점들이 선에 가까울수록 모델의 학습 결과는 안정적이고, 각 점들이 선과 멀수록 해당 모델은 불안정한 것으로 볼 수 있다.

Fig. 14.

F1-score distribution chart according to the number of experiments in the Dataset1

표 3은 이 실험에서 진행한 3가지 데이터셋 및 5가지 모델을 10번씩 반복하여 학습한 결과로 측정된 F1-score의 평균과 분산을 보인다.

Mean and variance of F1-score by dataset

CNN, LSTM, Bi-LSTM 모델은 분산의 값으로 보아 성능의 변화가 크다. 해당 모델의 경우 본 실험에서 사용한 데이터와 같이 데이터의 양이 충분하지 않을 때 안정적이지 못하다. 특히 Bi-LSTM 모델은 분산 값이 가장 큰 것으로 보아 F1-score의 변화 폭이 크며, 랜덤에 의한 초기 가중치 설정값과 드롭아웃 등에 민감하다는 것을 알 수 있다.

반면에 LSTM 오토인코더와 DNN 모델은 세 데이터셋에 대한 분산 최댓값이 각각 0.66, 1.22로, 다른 세 모델들에 비해 성능의 변화가 적어 안정적인 것으로 평가된다. 특히, LSTM 오토인코더 모델은 세 데이터셋 모두 F1-score 평균이 가장 높으므로, 사용자 이동 경로의 이상치 탐지를 위한 가장 적합한 모델로 평가된다.

그 이유로, LSTM 오토인코더는 비지도 학습방식으로 학습 시 정상 데이터만을 사용하고, 테스트 시 이동 경로 데이터의 중요 특징만을 압축하여 데이터를 재구성한다. 그 결과 랜덤 함수에 의한 초기 가중치 설정 및 드롭아웃에도 그 결과가 유사하게 측정되어 가장 안정적인 결과를 보이는 것으로 분석된다.


Ⅴ. 결 론

사용자 이동 경로 데이터셋을 가지고 데이터 품질을 검수하는 과정에서 사람이 실수하거나 인식할 수 없는 이상치가 있을 수 있다. 이러한 문제를 해결하기 위해 본 논문은 딥러닝 기술에 기반하여 사용자 이동 경로 데이터의 이상치 탐지 기법을 제안하였다.

이를 위해 경로 예측을 위한 데이터로 DSEM-Trajectory 데이터를 사용하였고, 해당 데이터에 대해 이상치를 정의하였다. 그 후 5가지(CNN, DNN, LSTM, Bi-LSTM, LSTM 오토인코더) 딥러닝 모델을 사용하여 이동 경로의 이상치를 탐지하였다. 그 결과 LSTM 오토인코더 모델이 평균 F1-score가 88.67%로 가장 높은 성능을 보였고, 이는 사용자 이동 경로 데이터의 특성을 잘 고려하며 이상치 탐지에 안정적이다는 것을 알 수 있다. 실험을 통해 Dataset1에서 LSTM 오토인코더 모델로 이상치를 탐지한 결과 시험용 데이터의 이상치 273건 중 248건을 탐지해내었다.

실제로 데이터를 직접 확인한 결과 DSEM-Trajectory는 35,234개의 이동 경로가 필터링 정제기법과 수동으로 검수를 마쳤음에도 불구하고 546개의 이상치가 추가로 존재한다는 것을 발견하였다.

따라서 사용자 이동 경로의 데이터 품질을 보장하기 위해 필터링 정제기법과 사람이 수동으로 검수하는 것은 한계가 있다. 이는 데이터 품질의 신뢰성을 저해시키는 결과를 초래한다. 이를 해결하기 위해 딥러닝 기반의 이상치 탐지를 하여 추가적인 검수를 함으로써 데이터 품질의 신뢰성을 높이게 된다.

제안 기법의 이상치 탐지는 경로 예측, 교통 상황 분석, 행동 분석 등 다양한 서비스에서 활용되는 이동 경로 데이터의 품질을 보장할 수 있다. 또한, 본 연구에서 사용한 이동 경로 데이터를 제안 기법의 이상치 탐지로 데이터의 품질을 높인 후에 경로 예측에 사용하였을 때, 더 높은 성능을 기대할 수 있다.

향후 연구로 본 논문에서 가장 높은 성능을 보였던 LSTM 오토인코더 모델을 개선하여 성능을 높이고, 이상이 있는 데이터의 이상치 지점을 시각화하여 데이터 분석 및 정제에 활용할 예정이다.

Acknowledgments

본 연구는 환경부/환국환경산업기술원 지중환경오염위해관리기술개발사업(2022002450002)으로 수행되고 있습니다

References

  • S. M. Jung, J. H. Kim, I. K. Kim, H. S. Lee, S. W. Lee, and H. S. Oh, "Autumn migration of Black-faced Spoonbill(Platalea minor) tracked by wild-tracker in East Asia", Korean Journal of Environment and Ecology, Vol. 32, No. 5, pp. 478-485, Oct. 2018. [https://doi.org/10.13047/KJEE.2018.32.5.478]
  • L. Lin, W. Li, H. Bi, and L. Qin, "Vehicle Trajectory Prediction Using LSTMs With Spatial–Temporal Attention Mechanisms", IEEE Intelligent Transportation Systems Magazine, Vol. 14, No. 2, pp. 197-208, Mar. 2022. [https://doi.org/10.1109/MITS.2021.3049404]
  • Y. Liu, K. Zhao, G. Cong, and Z. Bao, "Online Anomalous Trajectory Detection with Deep Generative Sequence Modeling", 2020 IEEE 36th International Conference on Data Engineering (ICDE), Dallas, TX, USA, pp. 949-960, Apr. 2020. [https://doi.org/10.1109/ICDE48307.2020.00087]
  • Z. Feng and Y. Zhu, "A Survey on Trajectory Data Mining: Techniques and Applications", IEEE Access, Vol. 4, pp. 2056-2067, Apr. 2016. [https://doi.org/10.1109/ACCESS.2016.2553681]
  • C. Yun, H. Shin, S. -Y. Choo, and J. Kim, "An Evaluation Study on Artificial Intelligence Data Validation Methods and Open-source Frameworks", Journal of Korea Multimedia Society, Vol. 24, No. 10, pp. 1403–1413, Oct. 2021. [https://doi.org/10.9717/kmms.2021.24.10.1403]
  • H. S. Kim, J. H. Kang, H. W. Moon, and J. G. Lee, "Anomalous Trajectory Detection Based on Seq2Seq Auto-Encoder", Journal of Korean Society for Geospatial Information Science, Vol. 28, No. 1, pp. 35-40, Mar. 2020. [https://doi.org/10.7319/kogsis.2020.28.1.035]
  • C. Chen, D. Zhang, P. S. Castro, N. Li, L. Sun, S. Li, and Z. Wang, "iBOAT: Isolation-Based Online Anomalous Trajectory Detection", IEEE Transactions on Intelligent Transportation Systems, Vol. 14, No. 2, pp. 806-818, Jun. 2013. [https://doi.org/10.1109/TITS.2013.2238531]
  • J. -G. Lee, J. Han, and X. Li, "Trajectory Outlier Detection: A Partition-and-Detect Framework", 2008 IEEE 24th International Conference on Data Engineering, Cancun, Mexico, pp. 140-149, Apr. 2008. [https://doi.org/10.1109/ICDE.2008.4497422]
  • D. Zhang, N. Li, Z. -H. Zhou, C. Chen, L. Sun, and S. Li, "IBAT: detecting anomalous taxi trajectories from GPS traces", Proc. of the 13th international conference on Ubiquitous computing, pp. 99–108, Sep. 2011. [https://doi.org/10.1145/2030112.2030127]
  • S. Wang, Z. Bao, J. S. Culpepper, and G. Cong, "A survey on trajectory data management, analytics, and learning", ACM Computing Surveys (CSUR), Vol. 54, No. 2, pp. 1-36, Mar. 2022. [https://doi.org/10.1145/3440207]
  • R. Wu, G. Luo, J. Shao, L. Tian, and C. Peng, "Location prediction on trajectory data: A review", Big Data Mining and Analytics, Vol. 1, No. 2, pp. 108-127, Jun. 2018. [https://doi.org/10.26599/BDMA.2018.9020010]
  • N. Suzuki, K. Hirasawa, K. Tanaka, Y. Kobayashi, Y. Sato, and Y. Fujino, "Learning motion patterns and anomaly detection by Human trajectory analysis", 2007 IEEE International Conference on Systems, Man and Cybernetics, Montreal, Que., pp. 498-503, Oct. 2007. [https://doi.org/10.1109/ICSMC.2007.4413596]
  • G. Bouritsas, S. Daveas, A. Danelakis, and S. C. A. Thomopoulos, "Automated Real-time Anomaly Detection in Human Trajectories using Sequence to Sequence Networks", 2019 16th IEEE International Conference on Advanced Video and Signal Based Surveillance(AVSS), pp. 1-8, Sep. 2019. [https://doi.org/10.1109/AVSS.2019.8909844]
  • S. Kim and S. Lee, "Clustered Noise Filtering Based Trajectory Refinement Method", Journal of KIIT., Vol. 18, No. 3, pp. 11-20, Mar. 2020. [https://doi.org/10.14801/jkiit.2020.18.3.11]
  • X. Wang, K. Tieu, and E. Grimson, "Learning semantic scene models by trajectory analysis", European Conference on Computer Vision, pp. 110-123, May. 2006. [https://doi.org/10.1007/11744078_9]
  • K. M. Sunderland, D. Beaton, J. Fraser, D. Kwan, P. M. McLaughlin, M. Montero-Odasso, A. J. Peltsch, F. Pieruccini-Faria, D. J. Sahlas, R. H. Swartz, ONDRI Investigators, S. C. Strother, and M. A. Binns, "The utility of multivariate outlier detection techniques for data quality evaluation in large studies: an application within the ONDRI project", BMC Medical Research Methodology, Vol. 19, No. 1, pp. 102, May 2019. [https://doi.org/10.1186/s12874-019-0737-5]
  • I. S. Kim and W. Jung, "Method of Processing the Outliers and Missing Values of Field Data to Improve RAM Analysis Accuracy", Journal of Applied Reliability, Vol. 17, No. 3, pp. 264-271. Sep. 2017.
  • M. Munir, S. A. Siddiqui, A. Dengel, and S. Ahmed, "DeepAnT: A Deep Learning Approach for Unsupervised Anomaly Detection in Time Series", IEEE Access, Vol. 7, pp. 1991-2005, 2019. [https://doi.org/10.1109/ACCESS.2018.2886457]
  • V. Tra, M. Amayri, and N. Bouguila, "Outlier detection via multiclass deep autoencoding Gaussian mixture model for building chiller diagnosis", Energy and Buildings, Vol. 259, pp. 111893, Mar. 2022. [https://doi.org/10.1016/j.enbuild.2022.111893]
  • S. Chauhan and L. Vig, "Anomaly detection in ECG time signals via deep long short-term memory networks", 2015 IEEE International Conference on Data Science and Advanced Analytics(DSAA), Paris, France, pp. 1-7, 2015. [https://doi.org/10.1109/DSAA.2015.7344872]
  • F. Kong, J. Li, B. Jiang, H. Wang, and H. Song, "Integrated Generative Model for Industrial Anomaly Detection via Bi-directional LSTM and Attention Mechanism", IEEE Transactions on Industrial Informatics, pp. 1, May 2021. [https://doi.org/10.1109/TII.2021.3078192]
  • J. Lee and K. Y. Lee, "An Anomalous Sequence Detection Method Based on An Extended LSTM Autoencoder", The Jounal of Society for e-Business Studies, Vol. 26, No. 1, pp. 127-140, Feb. 2021. [https://doi.org/10.7838/jsebs.2021.26.1.127]
  • J. Lee and K. Y. Lee, "An Effective Detection Method of Anomalous Sequences Considering the Occurrence Order and Time Interval of the Elements", Journal of KIISE, Vol. 48, No. 4, pp. 469-478, Apr. 2021. [https://doi.org/10.5626/JOK.2021.48.4.469]
  • Y. Ge, H. Xiong, C. Liu, and Z. -H. Zhou, "A Taxi Driving Fraud Detection System", 2011 IEEE 11th International Conference on Data Mining, Vancouver, BC, Canada, pp. 181-190, Dec. 2011. [https://doi.org/10.1109/ICDM.2011.18]
  • H. Wu, W. Sun, and B. Zheng, "A Fast Trajectory Outlier Detection Approach via Driving Behavior Modeling", Proc. of the 2017 ACM on Conference on Information and Knowledge Management, pp. 837-846, Nov. 2017. [https://doi.org/10.1145/3132847.3132933]
  • H. Wang, J. Feng, L. Sun, K. An, G. Liu, X. Wen, R. Hu, and H. Chai, "Abnormal trajectory detection based on geospatial consistent modeling", IEEE Access, Vol. 8, pp. 184633-184643. Oct. 2020. [https://doi.org/10.1109/ACCESS.2020.3028847]
  • S. Kim, E. Lee, and S. Lee, "Method of Data Quality Evaluation for Improving Data Quality of DSEM-Trajectory", The Journal of Korean Institute of Information Technology, Vol. 20, No. 8, pp. 7-18, Aug. 2022. [https://doi.org/10.14801/jkiit.2022.20.8.7]
  • K. H. Lai, D. Zha, J. Xu, Y. Zhao, G. Wang, and X. Hu, "Revisiting time series outlier detection: Definitions and benchmarks", Thirty-fifth Conference on Neural Information Proc. Systems Datasets and Benchmarks Track(Round 1). Jun. 2021.
  • S. Nam and S. Lee, "User Similarity-based Path Prediction Method", Journal of KIIT., Vol. 17, No. 12, pp. 29-38, Dec. 2019. [https://doi.org/10.14801/jkiit.2019.17.12.29]
저자소개
이 강 준 (Kangjun Lee)

2017년 3월 ~ 현재 : 군산대학교 소프트웨어학과 학부생

관심분야 : 인공지능, 이상치 탐지, 데이터 분석

정 현 준 (Hyunjun Jung)

2008년 : 삼육대학교 컴퓨터과학과(학사)

2010년 : 숭실대학교 컴퓨터과학과(공학석사)

2017년 : 고려대학교 컴퓨터·전파통신공학과(공학박사)

2017년 8월 ~ 2020년 8월 : 광주과학과기술원 블록체인 인터넷경제연구센터 연구원

2021년 ~ 현재 : 군산대학교 소프트웨어학과 교수

관심분야 : 블록체인, 데이터 사이언스, 센서 네트워크, 사물인터넷, 머신러닝

이 석 훈 (Sukhoon Lee)

2009년 2월 : 고려대학교 전자및정보공학부(학사)

2011년 2월 : 고려대학교 컴퓨터·전파통신공학과(공학석사)

2016년 2월 : 고려대학교 컴퓨터·전파통신공학과(공학박사)

2016년 3월 ~ 2017년 3월 : 아주대학교 의료정보학과 연구강사

2017년 4월 ~ 현재 : 군산대학교 소프트웨어학과 부교수

관심 분야 : 사물인터넷, 메타데이터, 센서 레지스트리, 시맨틱 웹, 경로 예측

Fig. 1.

Fig. 1.
Examples of outlier types (a) Point outlier, (b) Collective outlier, (c) Contextual outlier

Fig. 2.

Fig. 2.
Proposed method for detecting outliers in user trajectory

Fig. 3.

Fig. 3.
Grid expression of a trajectory

Fig. 4.

Fig. 4.
Grid matrix

Fig. 5.

Fig. 5.
Grid vector

Fig. 6.

Fig. 6.
CNN based model structure

Fig. 7.

Fig. 7.
DNN based model structure

Fig. 8.

Fig. 8.
LSTM based model structure

Fig. 9.

Fig. 9.
Bi-LSTM based model structure

Fig. 10.

Fig. 10.
LSTM-autoencoder based model structure

Fig. 11.

Fig. 11.
Comparative evaluation of the Dataset1

Fig. 12.

Fig. 12.
Comparative evaluation of the Dataset2

Fig. 13.

Fig. 13.
Comparative evaluation of the Dataset3

Fig. 14.

Fig. 14.
F1-score distribution chart according to the number of experiments in the Dataset1

Table 1.

Table of user trajectory data

userid time set_id set_seq lat lon
GAH0001 2019-07-11 23:15:56 GAH0001-2019-07-11-00000001 1 35.945528 126.682223
GAH0001 2019-07-11 23:16:01 GAH0001-2019-07-11-00000001 2 35.945509 126.683209
GAH0001 2019-07-11 23:16:16 GAH0001-2019-07-11-00000001 3 35.945468 126.683178
GAH0001 2019-07-11 23:16:21 GAH0001-2019-07-11-00000001 4 35.945465 126.683176
GAH0001 2019-07-11 23:16:50 GAH0001-2019-07-11-00000001 5 35.945466 126.683177
... ... ... ... ... ...

Table 2.

F1-score by dataset

F1-score (%) Dataset
1
Dataset
2
Dataset
3
Average
CNN 78.21 76.33 77.20 77.25
DNN 81.97 77.22 77.47 78.89
LSTM 81.73 75.28 75.47 77.49
Bi-LSTM 78.80 74.43 73.77 75.66
LSTM-autoencoder 88.67 86.68 88.26 87.87
Average 81.88 77.99 78.43  

Table 3.

Mean and variance of F1-score by dataset

F1-score (%) Dataset1 Dataset2 Dataset3
Average Variance Average Variance Average Variance
CNN 78.21 7.09 76.33 7.00 77.20 3.34
DNN 81.97 1.03 77.22 1.17 77.47 1.22
LSTM 81.73 1.77 75.28 7.48 75.47 10.30
Bi-LSTM 78.80 17.26 74.43 13.73 73.77 14.62
LSTM-autoencoder 88.67 0.54 86.68 0.51 88.26 0.66