리뷰에 별점이, 논문에 연도가 붙어 있다면 그 정보를 버릴 이유가 없다.
무엇이 문제인가
일반적인 토픽모델링은 문서의 텍스트만 보고 토픽을 뽑는다. 그런데 실제 데이터에는 텍스트 옆에 별점, 작성 연도, 집단 구분 같은 메타데이터가 이미 붙어 있는 경우가 많다. 이 메타데이터를 무시하고 토픽만 추출한 뒤, 나중에 결과표를 별점별·연도별로 나눠서 눈으로 비교하는 방식으로 분석을 끝내는 경우를 종종 본다. 이렇게 하면 토픽 자체가 메타데이터를 반영해 추정된 것이 아니기 때문에, 별점이 높은 문서와 낮은 문서에서 토픽 비중이 정말 다른지를 통계적으로 확인하지 못한 채 그래프만 보고 다르다고 서술하게 된다.
어떻게 하는가
STM, 즉 구조적 토픽모델(Structural Topic Model)은 문서에 붙은 메타데이터, 예를 들어 별점이나 연도, 집단 같은 정보를 토픽을 추정하는 단계에 직접 결합하는 방법이다. 토픽을 먼저 뽑고 메타데이터로 사후에 나누는 것이 아니라, 메타데이터가 토픽 비중 추정 자체에 들어간다는 점이 일반 토픽모델과 다르다. 이 구조 덕분에 메타데이터에 따라 토픽 비중이 실제로 차이가 나는지를 통계적으로 검정할 수 있다. 여기서 중요한 것은 어떤 메타데이터 변수를 투입할지를 아무렇게나 정해서는 안 된다는 점이다. 별점을 넣을지, 연도를 넣을지, 집단 구분을 넣을지는 왜 그 변수가 토픽 비중과 관련이 있다고 볼 수 있는지에 대한 이론적 근거를 먼저 밝히고 선택해야 한다.
심사위원이라면 여기를 본다
메타데이터를 모델에 넣어놓고도 그 메타데이터가 토픽 비중에 미치는 효과를 검정하지 않으면, 심사위원은 텍스트와 메타데이터를 왜 굳이 결합했는지 그 의미가 불분명하다고 지적한다. 메타데이터를 넣는 것 자체가 목적이 아니라 메타데이터에 따른 차이를 검정하는 것이 목적이므로, 결합만 해두고 검정 결과를 보고하지 않으면 분석 절차의 절반만 수행한 셈이 된다. 또한 왜 그 메타데이터 변수를 골랐는지에 대한 이론적 근거가 본문에 없으면, 변수 선택이 자의적이라는 지적으로 이어진다.
마치며
STM은 메타데이터를 토픽 추정에 결합해 메타데이터에 따른 토픽 비중 차이를 통계적으로 검정하는 방법이며, 그 힘을 쓰려면 어떤 메타데이터를 왜 넣는지에 대한 이론적 근거와 그 효과에 대한 검정 결과를 함께 갖춰야 한다.
텍스트마이닝 분석 설계가 필요하다면 텍스트마이닝 분석 페이지에서 진행 방식을 확인할 수 있다. 방법론 노하우는 뉴스레터 「강의실의 AI」 구독 시 받아볼 수 있다.