본문 바로가기
PAPER

Traffic accident detection and condition analysis based on social networking data

by 스꼬맹이브로 2022. 12. 29.
728x90
반응형
SMALL

Traffic accident detection and condition analysis based on social networking data

Ali, Farman, et al. Accident Analysis & Prevention 151 (2021): 105973.

 

[Introduction]

 

교통사고는 실시간으로 감지 및 분석이 이뤄져야 한다.

그 이유는 여행자와 교통 흐름에 많은 영향을 끼치기 때문이며 교통사고로 인한 부상자와 국가 비용또한 매년 급증하고 있기 때문이다.

 

그래서 본 논문에서는 온톨로지기반의 LDA와 양방향 LSTM을 사용하여 효율적으로 분석하는 스마트 프레임워크를 제안한다.

본 논문은 교통 관련 정보를 식별하기 위해서 문장에 자동으로 레이블을 지정한다.

또한 온톨로지 기반의 이벤트 식별 시스템을 구현함으로써 교통 이벤트를 정확하게 추출한다.

마지막으로 감정분석을 통해 교통 이벤트의 컨디션을 분류한다.

 

[Methodology]

본 논문에서 제안하는 기법의 전체 구조는 다음과 같다.

제안하는 기법의 전체 구조도

총 5단계로 이루어져 있으며 각각의 단계에 대하여 설명한다.

1. Query-based Crawling

서로 다른 API를 사용함으로써 다양하고 많은 데이터를 수집할 수 있다.

그렇기 때문에 본 논문에서는 두 가지 소셜 미디어를 통해 수집을 진행하였다.

트위터, 페이스북 모두 미국에서 가장 인기가 많은 도시인 뉴욕, 로스엔젤레스, 시카고를 선정하여 데이터를 수집하였다.

<트위터>

  • 500개의 키워드로 구성되어 있는 가장 많이 사용되는 50개의 쿼리를 통해 수집하였다.
  • REST API, Streaming API를 통해 일반 사용자의 트윗을 수집하였다.
  • Get users/search API, Get statuses/user_timeline API를 통해 교통부서 공식 계정의 트윗을 수집하였다.
  • 총 60만개의 교통 이벤트와 관련된 트윗을 수집하였다.

<페이스북>

  • 데이터 수집을 위해 Facebook의 일부 교통 부서 페이지를 분석했다.
  • 이벤트 감지를 위한 정확한 트래픽 정보가 포함된 관리자가 게시한 게시물만 고려하였다.
  • 트래픽 이벤트에 대한 5000개의 게시물을 수집했다.

2. Data preprocessing

사람들은 소셜 미디어에서 매우 다양한 방법으로 정보를 공유하기 때문에(예: 해시태그, 특수 문자, 사용할 수 없는 단어) 비정형 데이터를 정형화하여 정확한 분석을 도모한다.

 

토큰화는 N-gram tokenization을, 불용어 제거는 자바에서 제공하는 Rainbow 핸들러를 사용하였다.

또한 모두 소문자로 변경하고 접미사 삭제 알고리즘을 사용하여 어간을 추출한다.

마지막으로 Stanford tagger CoreNLP를 사용하여 POS tagging을 수행한다.

 

3. OLDA-based topic modeling

 

온톨로지는 온톨로지 언어 툴인 Protege를 사용하여 구성하였다.

온톨로지 구축을 위해서는 전문 지식이 필요하기 때문에 200개 이상의 교통 이벤트 기사를 사용하여 키워드 및 정보를 추출하고 온톨로지를 구축하였다.

LDA를 통해 문서 별 토픽을 추출한다.

LDA는 비지도 학습이며, 생성된 토픽에 대한 레이블이 존재하지 않는다.

온톨로지는 이벤트 타입이 명시되어 있어 LDA 를 통해 얻은 토픽 클러스터를 통해 이벤트 타입을 결정한다.

 

자동 레이블링 방식은 다음과 같다.

먼저 LDA를 통해 토픽 클러스터를 구성하고 단어를 DL query(Discription Logic query)를 통해 연관 단어를 얻는다.

DL query란 구조화되고 형식화된 표현 방식 언어를 말하며 온톨로지의 기반이 되는 언어이다.

문서 단어와 DL query 결과인 연관 단어를 통해 TF-IDF를 계산하여 이 값을 유사성의 가중치로 사용한다.

유사성은 각 단어의 분포와 가중치를 곱한 값을 다 더한 결과로, 총 합이 4가 넘으면 Traffic으로 넘지 않으면 다음 단어를 기준으로 다시 계산한다.

끝 단어까지 계산했을 때에도 유사성이 4가 넘지 않는다면 이 문서는 Non-Traffic으로 지정한다.

 

소셜 네트워크는 비공식적이므로 정보 추출이 어렵다.

때문에 지오파싱을 사용한 엔티티 추출 방법을 사용한다.

즉, 데이터 탐색 후 텍스트 데이터에서 위치 이름을 식별하여 좌표로 변환한다.

 

다음으로 SentiWordNet(SWN)을 사용하여 모든 단어에 극성 점수를 할당한다.

SentiWordNet 예시

동사, 형용사, 부사를 검색해서 점수를 할당하고 각 분류마다 점수를 합산한다.

긍정 점수가 중립, 부정 점수보다 크면 긍정을, 부정 점수가 중립, 긍정보다 크면 부정을, 중립 점수가 긍정, 부정 점수보다 크면 중립을 부여한다.

 

4. Document representation

트래픽 이벤트 데이터를 표현하기 위해 word2vec 및 FastText 모델이라는 두 가지 모델을 학습했다.

 

5. Classfication

교통사고 관련 텍스트 분류를 위해 딥러닝 모델을 사용한다.

 

[Experiments]

LDA 토픽 개수를 정하기 위한 실험 결과이다.

100회, 200회, 400회, 600회 반복하여 테스트를 수행한 결과, 토픽이 12개일 때 가장 정확도가 높게 나왔다.

다음은 제안된 OLDA와 다른 클래스 라벨링 접근법의 비교 결과이다.

LDA, Supervised LDA, Ontology LDA 세 가지를 비교했으며 Ontology LDA가 정확도 80%, F-Measure가 77.1%로 가장 좋은 결과를 보였다.

다음은 교통 이벤트 컨디션 예측 결과이다.

워드 임베딩과 모델 별 결과를 보면 FastText와 BiLSTM이 가장 좋은 결과를 보인다.

전체 데이터 셋을 통한 결과에서도 OLDA+FastText+BiLSTM이 가장 좋은 결과를 보이는 것을 확인하였다.

다음은 계산 비용에 대한 결과이다.

각 단계 별로 2.2초, 4.1초, 5초, 6.3초가 소요되었으며 본 논문에서 제안하는 방식이 가장 오래 걸린 것을 볼 수 있다.

그 이유는 Word2Vec는 사전에 알고 있는 단어만 분석이 가능하지만 FastText는 사전에 모르는 단어까지 분석이 가능하기 때문에 시간이 더 소요되는 점이 있다. 

또한 LSTM은 단방향으로 계산하지만 BiLSTM은 양방향으로 계산을 수행하기 때문에 시간이 조금 더 소요된다.

 

[Conclustions]

본 논문에서는 OLDA와 BiLSTM을 활용한 실시간 교통 모니터링 프레임워크를 제안하였다.

제안하는 기법은 운송 관리 및 사망자의 수를 절감하는 데 도움을 줄 수 있으며 이 기법을 통해 교통 흐름을 빠르게 복원할 수 있다는 장점이 있다.

 

향후 연구로는 정보 추출 및 토픽 모델링의 성능을 향상시킬 것이며 Bert모델을 학습하여 테스트를 수행해볼 예정이다.

728x90
반응형
LIST