Skip to main content
QUICK REVIEW

[논문 리뷰] Performance Evaluation of Apache Spark MLlib Algorithms on an Intrusion Detection Dataset

Ramin Atefinia, Mahmood Ahmadi|arXiv (Cornell University)|2022. 12. 10.
Network Security and Intrusion Detection인용 수 4
한 줄 요약

이 논문은 침입 탐지용으로 Apache Spark MLlib의 성능을 CSE-CIC-IDS2018 데이터셋에서 여섯 가지 기계학습 알고리즘을 사용해 평가한다. Spark는 나이브 베이즈와 랜덤 포레스트에 특히 뛰어난 훈련 속도 향상을 제공하며, 분산 하이퍼파rameter 튜닝을 통해 100% 정확도를 유지한다. 최적의 확장성은 8개의 워커 노드까지 관찰되었다.

ABSTRACT

The increase in the use of the Internet and web services and the advent of the fifth generation of cellular network technology (5G) along with ever-growing Internet of Things (IoT) data traffic will grow global internet usage. To ensure the security of future networks, machine learning-based intrusion detection and prevention systems (IDPS) must be implemented to detect new attacks, and big data parallel processing tools can be used to handle a huge collection of training data in these systems. In this paper Apache Spark, a general-purpose and fast cluster computing platform is used for processing and training a large volume of network traffic feature data. In this work, the most important features of the CSE-CIC-IDS2018 dataset are used for constructing machine learning models and then the most popular machine learning approaches, namely Logistic Regression, Support Vector Machine (SVM), three different Decision Tree Classifiers, and Naive Bayes algorithm are used to train the model using up to eight number of worker nodes. Our Spark cluster contains seven machines acting as worker nodes and one machine is configured as both a master and a worker. We use the CSE-CIC-IDS2018 dataset to evaluate the overall performance of these algorithms on Botnet attacks and distributed hyperparameter tuning is used to find the best single decision tree parameters. We have achieved up to 100% accuracy using selected features by the learning method in our experiments

연구 동기 및 목표

  • Apache Spark의 분산 컴퓨팅 프레임워크를 활용해 침입 탐지용 기계학습 모델의 훈련을 가속화하기 위해.
  • SVM 및 심층 결정 트리와 같은 자원 집약적인 알고리즘에서 발생하는 메모리 병목 현상을 클러스터 기반 병렬 처리로 해결하기 위해.
  • 대규모 네트워크 트래픽 데이터에서 여섯 가지 MLlib 알고리즘—로지스틱 회귀, SVM, 나이브 베이즈, 단일 결정 트리, 랜덤 포레스트, 그래디언트 부스팅 트리—의 확장성과 성능을 비교하기 위해.
  • 수동 하이퍼파rameter 튜닝을 대체하여 더 높은 모델 효율성을 확보하기 위해 분산형, Spark 네이티브 하이퍼파rameter 튜닝 접근법을 도입하기 위해.
  • 빅데이터 환경에서 이상 기반 침입 탐지에 가장 뛰어난 확장성과 정확도를 보이는 알고리즘을 식별하기 위해.

제안 방법

  • CSE-CIC-IDS2018 데이터셋에 대해 기계학습 모델의 훈련을 분산하기 위해 워커 노드 7개와 마스터 노드 1개로 구성된 Spark 클러스터를 사용하였다.
  • 차원 수를 줄이고 모델 효율성을 향리하기 위해 'learner' 방법을 사용해 핵심 특징을 선택하여 데이터셋을 전처리하였다.
  • 단일 결정 트리의 하이퍼파rameter를 최적화하기 위해 Spark의 CrossValidator 및 TrainValidationSplit 도구를 활용한 분산 하이퍼파rameter 튜닝을 적용하였다.
  • 로지스틱 회귀, LinearSVC, 베르누이 및 다항 나이브 베이즈, 단일 결정 트리, 랜덤 포레스트, 그래디언트 부스팅 트리의 여섯 가지 MLlib 알고리즘을 훈련시켰다.
  • 워커 노드 수(1~8개)를 다양하게 설정하여 훈련 시간, 정확도, 정밀도, 재현율, F1-스코어를 측정하여 확장성과 성능을 평가하였다.
  • 특징 공학, 모델 훈련, 예측 파이프라인 통합을 간소화하기 위해 Spark의 DataFrame API를 사용하였다.

실험 결과

연구 질문

  • RQ1Apache Spark의 병렬 처리 기능은 대규모 침입 탐지 데이터셋에서 기계학습 모델의 훈련 시간을 어떻게 향상시키는가?
  • RQ2Spark 클러스터에서 여러 워커 노드에 분산 배포되었을 때, 어떤 MLlib 알고리즘이 가장 높은 확장성과 속도 향상을 보이는가?
  • RQ3Spark에서의 분산 하이퍼파rameter 튜닝은 수동 튜닝에 비해 더 높은 모델 정확도와 효율성을 달성할 수 있는가?
  • RQ4워커 노드 수가 증가할수록 메모리 집약적인 알고리즘인 SVM과 심층 결정 트리의 모델 정확도와 훈련 시간에 어떤 영향을 미치는가?
  • RQ5어느 알고리즘이 다양한 클러스터 구성에서 뛰어난 확장성과 함께 높은 정확도(예: 100%)를 달성하는가?

주요 결과

  • 나이브 베이즈는 독립적 확률 계산 덕분에 가장 높은 속도 향상을 보였으며, 워커 노드 수에 따라 선형적인 확장성을 보였다.
  • 로지스틱 회귀의 훈련 시간은 단일 노드일 경우 4653.09초에서 3노드 클러스터일 경우 2436.68초로 감소하여 효과적인 병렬 처리가 이루어졌음을 입증하였다.
  • 서포트 벡터 머신과 단일 결정 트리의 경우 통신 오버헤드와 알고리즘적 제약로 인해 3~4개의 워커 노드를 초과하면 수익 감소 현상이 나타났다.
  • 그래디언트 부스팅 트리는 8개 노드에서 2045.21초의 훈련 시간 동안 정밀도, 재현율, F1-스코어가 각각 99.6%로 높은 정확도를 기록하였으며, 중간 수준의 확장성은 확보하였다.
  • 랜덤 포레스트는 랜덤 서브스페이스 선택으로 인해 분류 결과의 변동성이 높았지만, 클러스터 크기 변화에 관계없이 안정적인 성능을 유지하였다.
  • 최고의 모델은 선택된 특징과 튜닝된 하이퍼파rameter를 사용해 100% 정확도를 달성하였으며, Spark 기반 하이퍼파rameter 튜닝의 효과성을 확인하였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.