[논문 리뷰] Representation Learning for Resource Usage Prediction
이 논문은 컴퓨팅 시스템에서 향후 자원 사용량을 예측하기 위해 시스템 호출 시퀀스와 자원 사용 통계를 통합된 잠재 공간에 통합하는 표현 학습 방법을 제안한다. 시스템 호출에 대해 word2vec 방식의 임베딩을 사용하고, 병합된 특징에 대해 LSTM을 훈련시킴으로써, 역사적 맥락과 다양한 시스템 이벤트를 활용할 경우 히우리스틱 기반 기준보다 향상된 예측 정확도를 달성한다.
Creating a model of a computer system that can be used for tasks such as predicting future resource usage and detecting anomalies is a challenging problem. Most current systems rely on heuristics and overly simplistic assumptions about the workloads and system statistics. These heuristics are typically a one-size-fits-all solution so as to be applicable in a wide range of applications and systems environments. With this paper, we present our ongoing work of integrating systems telemetry ranging from standard resource usage statistics to kernel and library calls of applications into a machine learning model. Intuitively, such a ML model approximates, at any point in time, the state of a system and allows us to solve tasks such as resource usage prediction and anomaly detection. To achieve this goal, we leverage readily-available information that does not require any changes to the applications run on the system. We train recurrent neural networks to learn a model of the system under consideration. As a proof of concept, we train models specifically to predict future resource usage of running applications.
연구 동기 및 목표
- 히우리스틱 기반 접근 방식보다 뛰어난 성능을 보이는 일반적이고 데이터 기반의 미래 자원 사용 예측 모델을 개발하는 것.
- 통합 히우리스틱 기반의 프로세스 스케줄링 및 자원 할당의 한계를 극복하기 위해 텔레메트리 데이터로부터 시스템 전용 행동을 학습하는 것.
- 특히 시스템 호출 시퀀스와 자원 통계를 포함한 이질적인 시스템 텔레메트리 데이터를 기계 학습을 위한 공동 표현으로 통합하는 것.
- 반복 신경망을 통해 시간적 의존성을 포착함으로써 CPU 및 I/O 사용량에 대한 정확한 장기 예측을 가능하게 하는 것.
- 원시 시스템 이벤트에서의 표현 학습이 전통적인 모니터링 히우리스틱보다 더 뛰어난 예측 성능을 낼 수 있음을 입증하는 것.
제안 방법
- 고정된 시간 간격(예: 1초 윈도우) 동안 집계된 프로세스별 CPU 및 메모리 사용량, 디스크 I/O, 네트워크 I/O 등의 시스템 텔레메트리 수집.
- strace를 사용해 시스템 호출 시퀀스를 캡처하고, 시간 윈도우 내의 각 시퀀스를 표현 학습을 위한 '문장'으로 간주.
- word2vec에 영감을 받은 스킵그램 모델을 적용해 개별 시스템 호출에 대한 조밀한 벡터 임베딩을 학습하여 의미적 및 시간적 관계를 포착.
- 시스템 호출의 고정 크기 벡터 표현과 자원 사용 통계를 결합해 LSTM의 입력 벡터로 통합.
- 장기 예측을 위해 향후 i 초 동안의 자원 사용량(예: CPU 활용도)을 예측하도록 장기 기억 전이(LSTM) 네트워크를 훈련하고, RMSE를 최소화.
- 선택적으로 전체 모델 아키텍처 내에서 시스템 호출 임베딩을 엔드 투 엔드로 훈련하거나, 사전 훈련 단계로 별도로 수행.
실험 결과
연구 질문
- RQ1시스템 호출 시퀀스는 시스템 모델링을 위한 의미적 및 시간적 관계를 포착할 수 있는 저차원 공간에 효과적으로 임베딩될 수 있는가?
- RQ2시스템 호출 임베딩과 자원 사용 통계를 결합할 경우, 통계만을 사용할 때보다 향후 자원 사용 예측 정확도가 얼마나 향상되는가?
- RQ3예측 오차는 예측 수평선(즉, 얼마나 먼 미래를 예측하느냐)에 따라 어떻게 변화하는가? 역사적 맥락은 이를 완화할 수 있는가?
- RQ4다양한 시스템 워드로드에서 훈련된 단일이고 일반적인 기계 학습 모델이 다양한 애플리케이션 유형과 시스템 행동에 대해 잘 일반화될 수 있는가?
- RQ5원시 시스템 이벤트에서의 표현 학습이 전통적인 히우리스틱 기반 자원 예측 방법보다 성능이 뛰어나게 되는가?
주요 결과
- 시스템 호출 임베딩과 자원 사용 통계를 결합한 제안된 모델은 기준 히우리스틱 방법보다 향후 CPU 사용량 예측의 루트 평균 제곱 오차(RMSE)가 낮다.
- 더 긴 역사적 맥락이 제공될수록 예측 정확도가 향상되며, 이는 장기적인 시간적 동역학을 LSTM 모델이 효과적으로 포착할 수 있음을 시사한다.
- 충분한 역사적 데이터가 제공될 경우, 장기적인 미래 예측에서 오차가 감소함을 확인하여 효과적인 장기 의존성 학습이 이루어졌음을 나타낸다.
- 스킵그램 모델을 통해 학습된 시스템 호출 임베딩은 I/O 집약적 또는 CPU 집약적 단계와 같은 기능 패턴을 효과적으로 포착하며, 이는 자원 사용량 예측에 유용하다.
- strace를 통한 시스템 호출 추적은 최대 몇 퍼센트 내외의 최소한의 오버헤드만을 유발하므로 실세계 구현에 실용적이다.
- 통합 임베딩과 예측 학습을 함께 수행하는 엔드 투 엔드 훈련 방식은 가능성은 있으나, 별도로 사전 훈련한 임베딩도 강력한 성능을 보였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.