shine's dev log

[논문] Detecting Malicious Social Robots with Generative Adversarial Networks 본문

논문

[논문] Detecting Malicious Social Robots with Generative Adversarial Networks

dong1 2022. 3. 2. 00:42

논문 제목 : Detecting Malicious Social Robots with Generative Adversarial Networks

 

 

0. Abstract

 

인터넷 환경에서 Malicious social robots들은 부정적이고 허위 정보를 인터넷 상에서 뿌리는 악행을 저지른다.

 

지금까지의 연구는 이러한 malicious robots들을 단순 classification을 통해 색출하려고 해왔지만, unbalanced 한 데이터셋 등의 문제 (malicious robots의 데이터가 너무 적음) 만족할만한 성과를 내지는 못하고 있다.

 

본 논문에서는 이러한 데이터셋 불균형의 문제를 해결하기 위해 GAN 네트워크를 통해 데이터를 생성한 뒤 학습하는 방안을 제안한다.

 

해당 제안의 타당성을 검증하기 위해 5가지의 oversampling 기법과 비교를 하였고, 그 결과 GAN을 이용한 방식이 가장 높은 F1 score 성능을 가짐을 보였다. 또한, imbalance degree가 15%가 넘지 않는 이상, GAN 을 사용한 방법이 잘 동작함을 보였다.

 

 

 

1. Introduction

 

사회적으로 나쁜 영향을 미치고 있는 malicious robots 문제를 해결하기 위해 여러 classification 모델들이 고안되었지만, 정상적인 사용자에 대한 데이터가 불균형하게 많은 데이터셋 문제 때문에 여러가지 어려움을 겪고 있다.

 

본 논문에서는 GAN을 이용해 이러한 데이터 불균형 문제를 해결하고 보다 정확한 모델 학습을 진행할 것이다. 전체 과정을 [그림 1]과 같다.

 

[그림 1] 전체 연구 진행 과정

 

 

 

2. Related work

 

다양한 연구에서 malicious robots을 탐지하기 위한 ML 기반 연구들이 수행되었다.

해당 연구들에서 사용한 feature로는, user metadata & content feature, N시간동안 친구 요청 및 응답 횟수, account 정보, 언어 정보 등을 사용하였으며, featrue 정보를 사용하지 않고 click stream 정보를 사용하기도 하였다.

 

또한 CNN + LSTM 모델을 사용해 모델을 구성하기도 하였고, 사용자 노드 간의 graph를 통해 sybil attack 을 탐지하는 연구 또한 수행되어왔다.

 

 

 

3. Social robot detection based on GANs

 

social robot detection 문제는 사실 binary classification 문제이다. social account의 집합 A = {a1, a2, ... , aA} 가 있을 때 각 account 들은 두개의 원소를 가지는 집합 C = {Cr, Cn} 둘 중에 하나로 분류된다. Cr은 robot account들을 나타내며, Cn 은 정상적인 사용자들의 account 를 나타낸다.

 

이 과정에서 Cr 의 데이터가 너무 적으므로 GAN을 통해 일종의 augmentation을 진행해준다. 전체 과정은 [그림 2]와 같다.

 

[그림 2] social robot detection framework

 

우선 Feature extraction 과정에서는 각 account를 잘 나타내주는 11가지의 feature를 선택하였다. 11가지의 feature로는 average number of topic tags, # of user mentions, # of links, # of retweets, # of favorites, ratio of followers, tweet source, similarity content, similarity of tweet length, similarity of punctuation usage, similarity of stop words 정보를 선정하였다.

 

 1) 이제 전체 데이터셋을 training set T와 test set S로 나눈 뒤, T를 C_0 라는 모델을 학습시킨다.

 

 2) 다음으로 T의 일부 데이터로 구성된 데이터셋 F를 이용해 GAN 네트워크인 G*를 학습시킨 뒤, random noise z를 G*을 통해 데이터셋 F`을 생성해낸다. 이제 F`과 T를 이용해 C_a 라는 모델을 학습시킨다.

 

즉, 그냥 원래 imbalance 한 데이터셋으로 학습시킨 모델 C_0와 GAN을 통해 balance를 맞춘 데이터셋으로 학습시킨 모델 C_a를 비교하는 것이다.

 

 

 

4. Experiments and analyses

 

[그림 3]과 같이 1971개의 정상적인 account와 462개의 social robot account로 이루어진 데이터셋을 통해 실험을 진행하였다.

 

[그림 3] dataset

 

모델의 성능을 평가하기 위한 지표로는 대표적으로 자주 쓰이는 Accuracy, Precision, Recall, F-measure 를 사용하였다.

 

본 논문에서 제안한 oversampling 기법인 GAN의 성능을 비교하기 위해, 다른 oversampling 기법들인 SMOTE, SMOTE-Borderline1, 2, SMOTE-SVM, ADASYN 과의 비교를 수행하였다.

 

GAN과 classification 모델의 최적의 성능을 위한 hyper parameter는 grid search 방식을 통해 선정하였다. D와 G를 학습시킨 learning curve 는 [그림 4]와 같다.

 

[그림 4] learning graph of D & G

 

실험은 다음 4가지 질문에 답하는 방향으로 수행되었다.

 

 

 4.1. GAN이 robot detection의 성능 향상에 도움을 주는가?

 

이를 검증하기 위해 다른 oversampling 기법과 GAN을 사용했을때의 성능 차이를 확인해보았다. 그 결과는 아래 [그림 5]와 같다.

 

[그림 5] experiment result 1

 

전체적으로 보았을 때, orginal 데이터셋에 비해 GAN 을 사용했을 때 더 좋은 성능을 내는 것을 확인할 수 있었다. 특히 accuracy 부분에서는 큰 차이를 보이지는 않았지만, F-measure 부분에서 기존의 데이터셋에 비해 7% 높은 성능을 확인할 수 있었다.

 

 

 4.2. GAN이 다른 oversampling 기법에 비해 성능이 좋은가?

 

이 역시 [그림 5]를 통해 확인해볼 수 있다. 대체적으로 다른 oversampling 기법들에 비해 좋은 성능을 나타내는 것을 확인할 수 있다.

 

 

 4.3. 어느정도 비율의 oversampling을 해야 가장 성능이 좋은가?

 

이를 알아보기 위해 (실제 test 데이터 속의 robots 데이터 수) : (oversampling을 통해 생성한 robots 데이터 수) 비율을 1:1, 2:1, 4:1, 6:1, 8:1 비율로 진행하여 각각의 데이터셋에 대해 실험을 진행하였다. 그 결과는 [그림 6]과 같았다.

 

[그림 6] experiment result 2

 

실험 결과, SMOTE-SVM과 GAN을 제외한 나머지 oversampling 기법들은 original 데이터에 비해 낮은 성능을 보이는 것을 확인할 수 있었다. 특히 GAN 방식이 가장 stable한 것을 확인할 수 있다.

 

 

 4.4. 기존의 데이터셋의 imbalance 비율에 의한 성능 차이는 어떠한가?

 

이를 알아보기 위해 기존의 데이터셋에서 실제 account와 robots 의 account 비율을 6%, 9%, 12%, 15%, 18%로 설정한 뒤, 각 oversampling 기법을 통해 oversampling 한 후 결과를 측정하였다. 그 결과는 [그림 7]과 같다.

 

[그림 7] experiment result 3

 

위 결과에서 알 수 있듯이, 기존 데이터셋에서 robots의 비율이 증가할수록 classification 성능은 대체적으로 감소하는 것을 확인할 수 있었다.

이는 기존 데이터셋에서 robots의 비율이 증가하면, oversampling의 위력이 약해지는 것으로 해석된다. 즉 굳이 oversampling하지 않고도 학습이 잘 진행되고, 오히려 oversampling 기법이 학습에 방해가 되는 것이다.

 

GAN은 기존 데이터셋에서 robots의 비율이 10% 남짓일 경우에도 다른 oversampling 기법에 비해 성능이 좋은 것을 확인할 수 있었다.

 

 

 

5. Conclusion

 

본 연구에서는 social robot account detection 과정에서 문제가 되었던 imbalance 데이터셋 문제를 해결하기 위해 oversampling 기법으로 GAN을 활용하였으며, 그 성능을 측정하기 위해 다른 oversampling 기법과 비교를 진행하였다.

 

그 결과, GAN이 가장 안정적이고 좋은 성능을 내는 것을 확인할 수 있었다.

 

 

Reference

Bin Wu, Le Liu, et al. "Detecting Malicious Social Robots with Generative Adversarial Networks." KSII Transactions on Internet and Information Systems (2019)