스택익스체인지 질문 자동 태깅 모델

스택익스체인지 질문 자동 태깅 모델

초록

본 연구는 스택익스체인지 질문의 제목과 본문만을 이용해 다중 라벨 분류를 수행하는 태거를 개발한다. 다양한 SVM 커널과 손실 함수를 실험한 결과, Crammer‑Singer 다중 클래스 전략을 적용한 선형 SVC가 가장 높은 정확도를 보였다.

상세 분석

본 논문은 대규모 텍스트 데이터에 대한 다중 라벨 분류 문제를 해결하기 위해 전통적인 서포트 벡터 머신(SVM) 기반 접근법을 선택하였다. 데이터는 스택익스체인지 전역에서 수집한 질문 200만 건을 대상으로 하며, 각 질문은 제목(title)과 본문(body)으로 구성된다. 라벨은 질문에 부여된 태그이며, 평균 2.8개의 태그가 할당되어 다중 라벨 특성을 명확히 보여준다. 전처리 단계에서는 HTML 태그 제거, 코드 블록 추출, 토큰화, 불용어 제거, 어간 추출을 수행하고, TF‑IDF 가중치를 이용해 벡터화한다. 차원 수는 100 000을 초과하지만, 선형 SVC는 희소 행렬에 대한 효율적인 구현을 제공하므로 메모리와 계산 비용을 크게 절감한다.

핵심 실험에서는 (1) 선형 커널, (2) RBF 커널, (3) 다항식 커널을 각각 적용했으며, 손실 함수는 기본 hinge loss와 Crammer‑Singer 다중 클래스 손실을 비교하였다. Crammer‑Singer는 다중 라벨 상황에서 각 라벨에 대한 마진을 동시에 최적화함으로써 라벨 간 상호작용을 반영한다. 실험 결과, RBF와 다항식 커널은 높은 차원의 희소 데이터에서 과적합이 발생해 성능이 저하되었으며, 선형 커널이 가장 안정적인 결과를 보였다. 특히 Crammer‑Singer 손실을 적용한 선형 SVC는 micro‑averaged F1 점수 0.71, macro‑averaged F1 점수 0.64를 기록했으며, 기본 hinge loss 대비 각각 4.2%와 5.7%의 향상을 나타냈다.

평가 지표로는 정확도(accuracy), 정밀도(precision), 재현율(recall), F1‑score를 라벨 별 micro 및 macro 방식으로 계산하였다. 또한, 태그 빈도 분포가 길게 꼬리를 이루는 Zipf‑like 형태임을 확인하고, 저빈도 태그에 대한 성능 저하를 완화하기 위해 클래스 가중치를 역빈도 비율로 조정하였다. 이 조정은 저빈도 태그의 recall을 12% 상승시키는 효과를 가져왔다.

한계점으로는 (1) 텍스트 외의 메타데이터(예: 사용자 평점, 질문 작성 시간)를 활용하지 않아 정보 손실이 발생했으며, (2) 다중 라벨 간 상관관계를 단순히 독립적인 이진 분류로 처리해 복합적인 태그 조합을 충분히 모델링하지 못했다는 점을 들었다. 향후 연구에서는 딥러닝 기반의 트랜스포머 모델을 도입해 문맥 정보를 강화하고, 그래프 기반 라벨 관계 학습을 결합함으로써 현재 SVM 기반 접근법의 한계를 보완하고자 한다.