기고 I

뉴스 요약 서비스를 위한 학습 데이터 구축 및 도구 제작

줌 인터넷

자연어처리(NLP) 연구 분야 중 하나인 문서 요약(text summarization)은 글 속에 있는 글자와 문장들을 분석하여 요약문과 같이 글의 특징(feature)을 뽑아내는 주제이다. 문서 요약은 크게 추출적 방식(extractive approach)과 추상적 방식(abstractive approach) 두 가지 접근 방식으로 연구가 진행되고 있다. 추출적 방식은 입력으로 들어온 글 안에서 요약문에 해당하는 문장 혹은 문장의 위치를 추출하는 방식으로, 추출된 문장을 순서에 맞게 이어 붙여 간단하게 요약문을 생성해 낼 수 있다. 반면, 추상적 방식은 글의 내용을 파악하여 요약문에 해당하는 문장을 직접 생성해 내는 방식으로, 구현의 어려움은 있었지만 딥러닝 기술의 발달로 최근 들어 많은 연구가 진행되어 좋은 결과가 나오고 있다.

줌 인터넷에서는 추출적 방식을 이용하여 뉴스 문서 요약에 대한 연구를 진행하였고, 이를 이용한 뉴스 요약 서비스를 준비하고 있다. 뉴스 기사 문서는 블로그나 일반적인 웹문서에 비교해 볼 때 다음과 같은 특징을 가지고 있다.

전문 기자에 의해 작성되어 육하원칙에 의거하여 쓰여진 문서로 형식이 갖추어져 있고 문법적 오류가 거의 없다. 또 뉴스 기사의 제목은 본문 내용의 주제를 대표하며 본문에서는 해당 주제를 중복 없이 간결하게 표현한다.

따라서 뉴스 기사에 대한 문서 요약을 수행할 때 추출적 방식으로 하면 주제에 가까운 문장들을 쉽게 찾을 수 있고, 또 이 문장들을 연결하면 문서 요약이 가능하게 된다. 뉴스 기사는 사실에 기반한 정보를 제공해야 하므로, 생성적 요약 방식을 사용하는 경우 생성된 문장에서 사용된 단어와 표현이 원문과는 미묘한 차이를 보일 수 있어 좀 더 주의가 필요하게 된다. 이에 딥러닝에 기반한 추출적 방식의 뉴스 요약을 활용하여 뉴스 기사를 빠르고 한눈에 볼 수 있게 3줄로 보여주는 서비스를 준비하고 있다.

딥러닝을 이용한 뉴스 요약 기술을 개발하기 위해서는 모델 학습에 필요한 학습 데이터가 중요한 역할을 하게 된다. 주어진 뉴스 문서에 대한 요약문을 선정하는 것은 사람에 따라 다를 수 있는데, 뉴스 문서에 대한 이해가 높은 해당 분야 전문 인력의 판단이 뉴스 기사의 내용을 요약문 형태로 제공할 때 보다 정확한 정보를 제공할 수 있을 것이다. 이는 주관적 판단이 필요한 다른 유형의 학습 데이터 생성 작업 시에도 마찬가지로, 해당 데이터에 대한 도메인 지식을 가진 전문 인력의 참여가 높은 품질의 학습 데이터를 생성할 수 있다는 것을 쉽게 알 수 있다. 줌 인터넷에서는 뉴스 요약 학습 데이터 생성을 위해 연합뉴스와 뉴스 데이터 및 태깅 업무에 대한 제휴를 하고, 검증된 품질의 태깅 데이터를 확보하여 학습에 활용하였다.

01

자체 제작 태깅 툴


학습 데이터 생성을 위한 태깅 작업은 사람이 데이터 하나하나를 눈으로 확인하고 판단하여 처리해야 하는 것으로 많은 시간과 노력을 필요로 한다. 문서 요약을 위한 태깅 작업은 주어진 뉴스 문서를 읽고 해당 뉴스를 대표할 수 있는 문장들을 선택하여 중요도 정보와 함께 입력하여 저장하게 된다. 이때 태깅 작업에 사용하는 태깅 툴의 기능에 따라서도 작업의 효율성이 많이 달라질 수 있다. 좋은 태깅 툴을 선정하는 것은 빠른 작업 속도와 보다 정확한 정보 입력을 위해 중요한데, 태깅 툴을 제작하는 것 또한 시간과 노력을 들여야 하는 일이기 때문에 초기에는 오픈 소스로 공개된 프로그램을 찾아서 활용하도록 하였다.

인터넷상에 공개된 오픈 소스 태깅 툴도 적지 않은 수를 찾아볼 수 있는데, 쉽게 가져다 활용할 수 있는 반면 원하는 기능을 추가하기 위해서는 생각보다 많은 노력을 요구하는 경우가 많다. 이번 작업의 경우에도 초기에는 오픈 소스 문서 태깅 도구인 Doccano를 설치하여 학습 데이터 생성 작업을 하였다. 하지만 뉴스의 제목을 별도로 표시할 수 없는 등 필요한 기능이 충분하지 않고 사용자 인터페이스가 직관적이지 않아 뉴스 기사를 읽고 핵심 문장을 찾아 선택하여 입력하는 일련의 작업에 시간과 노력이 많이 필요로 하여, 보다 효율적이고 정확한 데이터 생성 작업을 위해 뉴스 요약문 선정을 위한 태깅 툴을 직접 제작하여 활용하게 되었다.


그림 1. Doccano 예시_ 문장을 드래그로 선택하고 미리 설정해 둔 태그를 클릭함으로써 태깅을 완료한다. 제목과 본문을 분리해서 보여줄 수 없고 내용 파악 및 문장 선택이 용이하지 않아 작업 효율이 떨어지고 피로도가 크다.
<그림 1. Doccano 예시_ 문장을 드래그로 선택하고 미리 설정해 둔 태그를 클릭함으로써 태깅을 완료한다. 제목과 본문을 분리해서 보여줄 수 없고 내용 파악 및 문장 선택이 용이하지 않아 작업 효율이 떨어지고 피로도가 크다.>

오픈 소스 태깅 툴을 사용하다 개선된 태깅 툴을 자체 제작하기로 결정하면서 가장 중요하게 고려한 사항은, 주어진 뉴스 기사의 내용을 한눈에 쉽게 이해할 수 있도록 하고 선택하고자 하는 문장을 지정하고 수정하는 데 최소한의 노력만 필요하도록 하였다. 대상 뉴스 기사는 인터넷 뉴스 페이지에서 보는 것과 같은 형식으로 이미지 및 단락 정보 등을 그대로 노출하여 기사의 내용을 보다 편하게 읽고 정확히 파악할 수 있도록 하였다. 또한 문장 선택 시 Doccano에서처럼 마우스를 드래그하여 처리하는 번거로움을 없애기 위해 주어진 뉴스 기사의 문장을 자동으로 분리해 내고, 분리된 문장 단위로 마우스에 반응하도록 사용자 인터페이스를 구성하여 단순한 클릭 한두 번으로 원하는 문장을 지정하고 수정할 수 있도록 하였다. 문장을 자동으로 분리해 내는 과정에서 자연어처리 기술을 활용하여 뉴스의 본문 내용과 관련이 없는 기타 정보들(기자/언론사명, 저작권 등 부가 문장)을 판별하여 제외하는 작업 또한 함께 진행하였다.


그림 2. 자체 제작 태깅 툴 예시, 일반 뉴스 서비스와 같은 형식의 뉴스 보기 기능이 있다뉴스 데이터 제공: 연합뉴스
<그림 2. 자체 제작 태깅 툴 예시, 일반 뉴스 서비스와 같은 형식의 뉴스 보기 기능이 있다뉴스 데이터 제공: 연합뉴스>

이렇게 뉴스 요약 문장 선별 작업에 최적화된 형태의 태깅 툴 개발을 통해 태깅 작업에 소요되는 시간이 상당히 줄어들었고, 태깅 작업자의 만족도 또한 올라가 더 나은 품질의 학습 데이터를 구축할 수 있음을 확인할 수 있었다.

학습 데이터 생성을 위한 태깅 툴의 역할은 단순히 대상 데이터를 보여주고 태깅 정보를 입력받는 것에서 발전하여, 작업자에게 더욱 적합한 정보를 제공하고 단순 반복 작업을 최소화할 수 있는 기술적 지원이 중요하다고 볼 수 있다. 또한 데이터 태깅 작업에 필요한 도메인 지식이 서로 다른 작업자 간에 태깅 결과물의 편차가 크지 않도록 보완하는 역할도 할 수 있다.

02

데이터셋 요약


구축한 뉴스 요약 데이터셋은 정치, 경제, 사회, 연예, 국제, 스포츠, IT 등 총 8개 카테고리의 뉴스 데이터로 구성하였다. 기사당 최대 3개의 요약문 위치(인덱스)가 학습을 위한 정답 데이터로 주어진다. 추출식 요약 모델을 위한 데이터셋이기 때문에 정답 라벨은 문장이 아닌 요약문에 선정될 문장의 위치로 주어진다. 구축된 데이터셋을 이용하면 전통적인 추출식 모델과 같이 본문만 이용하여 요약문을 추출하는 모델을 학습하거나, 혹은 제목까지 추가로 고려한 요약문 추출 모델 학습이 가능하다.

데이터셋을 구성하는 기사당 문장 개수 분포는 다음과 같다. 평균적으로 15.9문장을 가지며, 최소 1문장부터 최대 156문장까지 길어질 수 있다.


그림 3. 기사당 문장 개수 분포
<그림 3. 기사당 문장 개수 분포>

하지만 두괄식으로 서술되는 기사의 특성상 정답 인덱스는 10을 넘어가는 경우가 거의 없음을 확인할 수 있다.

그림 4. 정답 문장 위치(인덱스) 분포
<그림 4. 정답 문장 위치(인덱스) 분포>

WordPiece Tokenizer를 이용한 토큰화 결과 뉴스 기사를 구성하는 문장의 토큰 수 분포는 평균적으로 37.3개의 토큰 수를 가지며, 17.4의 표준편차를 가진다. 기사당 평균 문장 개수가 약 16개이기 때문에 문서당 평균 592개의 토큰을 가짐을 알 수 있다. 따라서 일반적인 트랜스포머 기반의 언어 모델을 이용하는 경우, 512개 이후의 토큰을 제거하거나 더 넓은 범위의 입력을 고려하고 싶은 경우엔 슬라이딩 윈도우 기법을 사용할 수 있다.

그림 5. 문장당 토큰 개수 분포
<그림 5. 문장당 토큰 개수 분포>

03

활용


본 데이터셋은 뉴스 본문의 주요 문장을 판단하는 데 있어 중요한 정보를 제공한다. 이를 통해 추출식/추상식 문서 요약뿐 아니라 제목 생성 등의 문제 해결까지 가능하다. 이외에도 앞선 문제 해결의 부산물을 통해 문서 내 주요점 맵(Saliency Map)을 얻을 수 있고, 다른 문제에 대한 해결을 위한 사전 정보로서 활용이 가능하다. 줌 인터넷에서는 구축된 뉴스 요약 데이터셋을 활용하여 추출식 문서 요약기를 구현하였다. 기존의 추출식 요약을 위한 데이터셋(CNN/Daily News)은 뉴스 기사의 제목은 포함되어 있지 않아 오직 본문들 간의 관계를 모델링하여 요약문을 생성해 내야 하는 한계가 있다. 하지만 줌 인터넷의 뉴스 요약 데이터셋은 뉴스 기사의 제목을 포함하고 있다. 요약문을 추출함에 있어 제목과 본문 문장 간의 관계까지 함께 모델링할 수 있다면, 제목에 담긴 뉴스의 핵심 주제를 공유하는 요약문을 선정하는 데 있어 더 유리할 수 있다.

04

개선 방향


뉴스 문서에 대한 이해가 높은 해당 분야 전문 인력의 판단으로 생성된 줌 인터넷 뉴스 요약 데이터셋은 문서 요약, 제목 생성 등 다양한 분야에서 연구 및 서비스로 이용 가능할 것이다. 더 나아가, 문서 속의 문장을 추출하는 ‘추출적 방식’에서 벗어나 전문 인력이 추상적으로 요약한 데이터셋을 구축한다면, 본문에 없는 단어와 표현을 통한 요약 문장, 제목 생성 등 ‘추상적 방식’의 딥러닝 모델 연구에 기여할 수 있을 것이다.

이전글 공유 다음글 목록