[20260806 특별 세미나] Log Anomaly Detection: LogBERT & LogGPT

페이지 정보

profile_image
작성자 민재
댓글 0건 조회 26회 작성일 26-08-27 15:22

본문

[일시] 2026.08.06.

[세미나 주제]
Log Anomaly Detection: LogBERT & LogGPT

[발표자]
김민재

[요약]
본 발표에서는 시스템이 남기는 기록에서 장애나 침해를 조기에 잡아내는 로그 이상 탐지를 다루지만 이상 사례가 드물고 레이블도 없어 학습에 쓸 수 있는 것이 정상 로그뿐이고 이를 서로 다른 언어 모델로 푸는 두 논문 LogBERT와 LogGPT를 비교 분석하였다. 둘 다 정상 패턴을 학습해 두고 벗어나면 이상으로 보지만 로그 시퀀스를 어떤 모델로 볼지에서 갈린다. LogBERT는 가운데를 가리고 앞뒤를 같이 보는 인코더를 쓰고 LogGPT는 앞부분만 보고 다음을 예측하는 디코더를 쓴다.

LogBERT는 RNN이 주류였던 분야에 BERT를 가져왔다. 로그 한 줄에는 고정 문구와 블록 ID 같은 변수가 섞여 있는데 변수를 그대로 두면 값이 바뀔 때마다 다른 단어로 취급이 되기 때문에 파서로 변수 자리를 치환해 틀만 남긴다. 한 줄로는 판정이 안 되므로 여러 줄을 묶어 시퀀스 단위로 보게 된다. 기존 방식은 순서를 세지 못하거나 단방향이라 뒤쪽 문맥을 놓쳤고 시퀀스끼리 공유하는 패턴도 배우지 않았다. LogBERT는 두 가지를 같이 학습하는데 무작위로 가린 자리를 앞뒤 문맥으로 맞히고 시퀀스 대표 벡터를 정상들의 평균점 쪽으로 끌어당긴다. 탐지할 때는 학습과 같은 비율로 가린 다음 상위 후보 밖으로 나간 자리가 일정 개수를 넘으면 시퀀스를 이상으로 본다.

LogGPT는 로그가 앞에서 뒤로 흐르는 데이터인데 양방향으로 가운데를 맞히는 방식은 그 흐름을 거스르고 마스킹 비율에 따라 결과도 흔들린다는 문제의식에서 출발해 다시 생성형으로 돌아가지만 창을 잘라 보던 기존 방법과 달리 앞부분 시퀀스 전체를 조건으로 놓는다. 남은 문제는 학습과 탐지가 서로 다른 것을 요구하는거지만 학습 단계에서는 정답 키 하나에 확률을 최대한 몰아주도록 유도하는 반면 탐지 단계에서는 그 키가 1등인지를 따지지 않고 상위 K 안에만 들어 있으면 정상으로 처리한다. 그래서 탐지 규칙을 그대로 보상으로 옮겨서 실제 다음 키가 상위 K 안이면 +1을 밖이면 -1을 주고 모델 자신을 정책으로 삼아 강화학습으로 미세 조정한다. 하나만 맞히라고 강요하지 않고 후보 집합을 인정하는 방식이라 정상 로그가 원래 갖는 변동성까지 담을 수 있다. 탐지할 때는 한 위치라도 상위 K를 벗어나면 시퀀스 전체를 이상으로 보고 K는 고정된 개수가 아니라 전체 로그 키 종수에 대한 비율로 지정한다.

[Q&A]

Q : 강화학습을 뺀 버전이 이미 모든 baseline을 상회하는데 그러면 실제 기여는 강화학습이 아니라 GPT를 로그 데이터로 사전학습한 것 아닌가요?
A : 맞는 지적입니다. 강화학습의 기여는 HDFS에서만 뚜렷하고 BGL과 Thunderbird는 소수점 셋째 자리 차이이고 논문도 강화학습 없는 버전이 baseline을 넘는다고 인정합니다. 성능의 대부분은 시퀀스 전체를 조건으로 쓰는 backbone과 파서 기반 로그 키 어휘화에서 나옵니다.

Q : 로그가 시간순으로 계속 쌓일 텐데 몇 개씩 끊나요? 시간으로 자르나요?
A : 데이터셋마다 다릅니다. HDFS는 로그가 애초에 세션 ID로 묶여 있어 그 단위가 시퀀스 하나가 되고 BGL과 Thunderbird는 1분 time window로 자릅니다.

Q : 10개짜리 시퀀스에서 하나 가리는 것과 100개짜리에서 하나 가리는 건 난이도가 다른데 마스킹 개수가 길이와 무관하게 고정인가요?
A : 개수가 아니라 비율입니다. LogBERT는 학습에서 쓴 마스킹 비율을 추론에도 그대로 적용하니 길이가 길면 마스킹 자리도 비례해 늘어납니다. 다만 이상 키가 몇 개를 넘으면 이상으로 볼지의 임계값은 절대 개수라 길이에 비례하는 것과 그렇지 않은 것이 섞여 있어 긴 시퀀스일수록 판정이 관대해집니다.

Q : 이름이 Volume of Hypersphere Minimization인데 내용은 중심까지의 거리를 줄이는 것뿐이여서 이 분야에서 실제로 쓰는 표현인가요?
A : 논문이 Deep SVDD에서 가져왔다고 밝히고 있어서 지어낸 이름은 아닙니다. 다만 Deep SVDD에는 반지름을 직접 최적화하는 soft-boundary 버전과 중심을 고정하고 거리 제곱 평균만 줄이는 one-class 버전이 있는데 LogBERT가 쓴 건 후자라 수식에 부피 항이 없습니다. 이름과 수식이 어긋난다는 것은 맞습니다.

Q : 상위 K 판정이 미분 불가능해서 강화학습을 썼다는 건데 미분 가능한 top-k나 ranking 방법은 왜 안 썼나요?
A : 논문은 대안을 검토하지 않았습니다. 강화학습을 정당화하며 쓴 건 모델이 자기 예측으로부터 학습하고 피드백에 따라 행동을 조정할 수 있어 적합하다는 한 문장뿐이고 미분 불가능성을 근거로 든 적도 없습니다.

[관련 논문]
LogBERT: Log Anomaly Detection via BERT
LogGPT: Log Anomaly Detection via GPT


[녹화 영상]
https://us06web.zoom.us/rec/share/GBvvDtUHhSL_VcAWq0ccjRn0aB1ku-rUyiJSkOOlTgAIU2c16EaNGJ42aDHrXu4y.YTatx7Dah1HBsWRE

첨부파일

댓글목록

등록된 댓글이 없습니다.