Korean Institute of Information Technology

Current Issue

The Journal of Korean Institute of Information Technology - Vol. 22 , No. 2

[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 20, No. 12, pp. 25-36
Abbreviation: Journal of KIIT
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 31 Dec 2022
Received 17 Oct 2022 Revised 08 Nov 2022 Accepted 11 Nov 2022
DOI: https://doi.org/10.14801/jkiit.2022.20.12.25

생성요약의 사실 불일치 문제 개선을 위한 관련성과 중복성을 고려한 손실 함수 기반의 KoBART 모델
구다훈* ; 온병원* ; 정동원*
*군산대학교 소프트웨어학과
*군산대학교 소프트웨어학과(교신저자)

Relevance and Redundancy-based Loss Function of KoBART Model for Improvement of the Factual Inconsistency Problem in Abstractive Summarization
Dahoon Gu* ; Byung-Won On* ; Dongwon Jeong*
Correspondence to : Byung-Won On and Dongwon Jeong Dept of Software Science & Engineering, Kunsan National University, 558, Deahak-ro, Gunsan, Jeollabuk-do, Korea Tel.: +82-63-469-8911, Email: bwon@kunsan.ac.kr, djeong@kunsan.ac.kr

Funding Information ▼

초록

최근 패션에 대한 관심이 커짐에 따라 수많은 리뷰 문서가 생성되고 있다. 리뷰 문서를 자동으로 요약할 수 있는 인공지능 모델은 소비자들이 제품에 대한 정보를 빠르게 찾을 수 있어 구매 의사결정에 도움을 줄 수 있다. 텍스트 요약 분야에서 사전학습된 시퀀스-투-시퀀스 모델이 널리 사용되고 있지만, 리뷰 원문과 생성요약문 사이의 사실 불일치 문제가 발생할 수 있어 모델의 성능을 저하시킨다. 이를 해결하기 위해 다양한 연구가 진행되었지만 사실 불일치 문제를 자주 일으키는 개체에 대해 고려되지 않았다. 따라서, 본 논문에서는 한국어 생성요약 모델인 KoBART를 기반으로 리뷰 원문과 요약문에서 개체 간의 관련성과 중복성을 고려한 손실 함수를 제안한다. 실험 결과에서, 제안 방안이 기존 KoBART 모델에 비해 사실 불일치 문제는 150% 개선하였고, ROUGE와 BERTScore 점수는 각각 8.14%와 1.23%로 크게 향상시켰다.

Abstract

Recently, as interest in fashion grows, numerous review documents have been posted in online platforms. Artificial intelligence models automatically summarizing the review documents can help consumers quickly find information about products and help them make purchase decisions. In the field of text summarization, pre-trained sequence-to-sequence models have been widely employed, but there is a factual inconsistency between the original review text and the generated summary, reducing the accuracy of the models. Various studies have been conducted to solve this problem without entities that frequently cause the factual inconsistency problem. Therefore, we propose a new multi-task loss function that considers both relevance and redundancy between the named entity of the original review text and the summary text based on KoBART, a Korean BART. Compared to KoBART model, the experimental results show that the proposed method improves the fact inconsistency problem by 150% and improves the overall performance of text summarization by 8.14% in ROUGE and 1.23% in BERTScore.


Keywords: abstractive summarization, factual inconsistency problem, KoBART, relevance, redundancy

Ⅰ. 서 론

국내 패션 시장이 성장하고 패션에 대한 소비자들의 관심이 증가함에 따라 다양한 제품에 대한 많은 리뷰 데이터가 생성되고 있다. 이러한 리뷰 데이터는 온라인 쇼핑몰, 소비자들의 SNS나 블로그, 카페 등에서 수집할 수 있다. 이를 효율적으로 활용할 수 있는 방안 중 하나로 자동 텍스트 요약 기술을 들 수 있다. 리뷰에 대한 요약문이 소비자들에게 제공된다면 제품에 대한 정보를 찾는데 소요되는 시간을 단축시킬 수 있다.

자동 텍스트 요약 기술은 추출요약(Extractive summarization)[1]과 생성요약(Abstractive summarization)[2][3]으로 분류될 수 있다. 추출요약은 원문 데이터에서 중요 정보를 포함하는 문장을 추출해 요약문을 생성하는 방식이다. 반면에 생성요약은 새로운 문장을 만드는 것에 초점을 둔다. 추출요약과 같이 추출된 문장을 그대로 사용하지 않고 원본 텍스트의 의미를 이해하여 새롭게 문장을 생성한다. 생성요약 기술은 전체적인 문맥을 이해하면서 문장이 자연스럽게 이어지도록 해야 하므로 추출요약보다 상대적으로 어려운 작업이라 할 수 있다.

최근 생성요약은 사전 학습된 시퀀스-투-시퀀스 모델이 등장하면서 상당한 발전을 이루게 되었다. 대표적인 모델로서 BART(Bidirectional and Auto-Regressive Transformers)[4]가 있으며 한국어 요약을 위한 모델로는 KoBART(Korean Bidirectional and Auto-Regressive Transformers)[5] 모델이 있다. KoBART 모델은 인코더-디코더(Encoder-decoder)로 구성된다. 인코더에서 원본 텍스트에 대한 정보를 인코딩한 후 디코더에 전달한다. 디코더에서는 전달받은 정보를 바탕으로 학습을 진행하고 최종적으로 요약문을 생성하게 된다. 하지만 KoBART는 텍스트에 노이즈를 추가하는 방식(Denoising)으로 학습하기 때문에 생성요약의 주요 문제인 사실 불일치 문제(Factual inconsistency problem)를 일으킬 수 있다.

생성요약의 사실 불일치 문제[6]란 원문 리뷰와 요약문 사이에 내용적인 불일치가 발생하는 것을 말한다. 이러한 문제는 다양한 말뭉치로 학습을 진행하기 때문에 숫자나 이름과 같은 고유명사 등의 특정 개체를 잘못 인식하는 형태로 나타날 수 있다. 예시는 표 1을 통해 확인할 수 있다.

Table 1. 
Example of a factual inconsistency problem
Input Review
안녕하세요. 오늘은 A 바지 리뷰입니다. 제 키는 180cm이고 몸무게는 78kg이며, L 사이즈 착용했습니다. 편한 착용감으로 5만원대에 구입 가능합니다. 이상으로 리뷰 마치겠습니다.
Reference Summary
180cm 78kg 기준 A 바지 L 사이즈는 착용감이 좋으며 5만원대에 구입이 가능하다.
Generated Summary
170cm 68kg 기준 A 바지 L 사이즈는 착용감이 좋으며 5만원대에 구입이 가능하다.

본 논문에서는 앞서 언급한 사실 불일치 문제의 특정 개체에 집중하여 문제를 개선하고자 한다. 이를 위해 먼저 원문 리뷰(Input review), 정답요약문(Reference summary), 그리고 생성요약문(Generated summary)에 개체명 인식(NER, Named Entity Recognition)[7]을 적용하여 사실 불일치를 자주 일으키는 개체(숫자, 고유명사, 패션 용어 등)를 추출한다. 이를 바탕으로 데이터 집합의 전체 단어 개수를 구해 개체 각각의 확률을 구하게 된다. 구한 확률 값으로 원문 리뷰와 생성요약문 간의 관련성(Relevance)과 중복성(Redundancy)을 정량화할 수 있는 엔트로피 기반의 사실 불일치 손실 함수(Factual inconsistency loss function)를 추가한 멀티태스크 손실 함수(Multi-task loss function)를 제안한다. 최종적으로 기존 KoBART의 손실 값인 교차 엔트로피(Cross entropy) 손실 값에 더해 학습을 진행한다. 그림 1은 본 연구의 제안 방안의 전체적인 형태를 보여준다.


Fig. 1. 
Proposed Factual inconsistency loss function

실험 데이터로는 다양한 개체명이 존재하는 패션 리뷰 데이터를 직접 구축하여 활용한다. 평가를 위한 지표로 사실 불일치 문제를 보이는 리뷰의 개수를 비교하였으며, 그 결과 150%의 성능 향상을 보였다. 또한, 전체적인 요약 성능 향상에 대한 평가를 위해 ROUGE 점수[8]와 BERTScore 점수[9]를 활용한다. 점수 비교 결과 ROUGE 점수에서 최대 8%와 BERTScore 점수에서 약 1% 향상되었다.

본 논문의 구성은 다음과 같다. 제2장에서는 KoBART 학습 과정과 사실 불일치 문제를 해결하기 위해 진행되었던 연구에 관해 기술한다. 제3장에서는 본 논문에서 제안하는 방안에 대해 자세히 기술한다. 제4장에서는 본 논문의 실험 환경과 결과를 기술한다. 마지막으로 제5장에서는 최종 결론 및 향후 연구에 관해 기술한다.


Ⅱ. 관련 연구
2.1 KoBART

KoBART[5]는 BART 기반의 한국어 생성요약 모델이다. BART[4]는 디노이징 오토인코더(Denoising autoEncoder)를 활용한 시퀀스-투-시퀀스 트랜스포머 구조를 사용한다. BART는 인코더-디코더 구조로 인코더는 양방향 트랜스포머 인코더를 사용하고, 디코더는 단방향 트랜스포머 디코더를 사용한다.

BART의 학습 과정은 손상된(노이즈) 문장들을 복구하는 방식으로 수행된다. 손상된 텍스트로 학습을 진행하여 디코더의 출력과 원본 텍스트의 손실 값을 줄이는 것을 목표로 한다. 다른 오토인코더 모델과 다르게 모든 종류의 노이즈를 적용할 수 있다. 인코더는 이러한 노이즈가 포함된 텍스트 정보를 디코더에 전달하며, 디코더에서는 전달받은 정보를 바탕으로 정답을 예측하는 방법으로 학습한다.

그림 2는 BART의 5가지 노이즈 기법을 도식화한 것이며 그 내용은 다음과 같다.


Fig. 2. 
Five noising methods of BART[4]

  • • 토큰 마스킹(Token masking) 기법은 랜덤 토큰을 마스킹하여 이를 복구하기 위한 값을 예측한다.
  • • 토큰 삭제(Token deletion) 기법은 토큰을 랜덤으로 삭제하여 이를 복구하는 방식으로, 삭제된 토큰이 지워졌는지 알지 못한다는 점이 토큰 마스킹과의 차이를 보인다.
  • • 텍스트 채우기(Text infilling) 기법은 입력 텍스트에서 포아송 분포 기반으로 텍스트 범위를 생성해 마스킹하여 모델이 얼마나 많은 토큰이 빠졌는지 예측한다.
  • • 문장 순열(Sentence permutation) 기법은 문서를 문장 단위로 나눈 후 섞어 문장의 원 순서를 찾는 방식이다.
  • • 문서 회전(Document rotation) 기법은 입력 텍스트에서 토큰 하나를 정해 해당 토큰부터 문장이 시작하게 한 후 모델이 원래 시작 위치를 찾도록 하는 방식이다.

이처럼 BART의 학습 과정은 손상된 문장을 복구하는 방식으로 이루어지기 때문에 요약문 생성 시 사실 불일치 문제를 일으킬 수 있다.

2.2 사실 불일치 문제

생성요약은 긴 텍스트에서 중요한 정보를 바탕으로 짧은 요약을 생성하는 것을 목표로 한다. 이에 관한 연구는 사전 훈련된 언어 모델을 통해 상당한 발전을 이루었다. 하지만 현재 생성요약 모델은 원본 문서에 없는 내용이나 특정 개체에 오류가 발생하는 사실 불일치 문제가 발생하고 있다. 이러한 문제를 해결하기 위해 현재 다양한 연구가 이루어지고 있다[10]-[18].

[10]은 사실 불일치 문제를 해결하기 위해 문장 선택 전략을 강화하는 방식으로 세 가지 보완 구성 요소(교정기, 대조기, 커넥터)를 제안한다. 먼저 교정기는 요약문에 존재하는 환각을 제거하고 대조기를 통해 비사실적 요약을 사실적 요약과 더 잘 구별하기 위한 대조 학습을 진행한다. 커넥터는 사전 훈련과 미세 조정된 값 사이의 간극을 메워 더 나은 지식의 전달을 돕는다. [11]은 약하게 지도된(Weakly-supervised) BERT 기반 모델을 제안한다. 해당 원본 문서와 생성된 요약 중 어느 값이 최종 결정에 있어 더 적합한지 설명하는 특수 모듈을 추가한 모델이다. [12]는 단일 또는 다중 마스킹 전략을 사용한다. 반복적 또는 자동 회귀적으로 개체를 교체해 가는 방식으로 잘못된 사실을 수정하는 데 초점을 맞추고 있다. [13]은 생성요약 모델에 의해 생성된 초기 요약을 취하여 원문 텍스트에 따라 수정된 최종 요약을 생성하는 방식을 제안한다. 모델에 의해 생성된 요약문에서 사실 오류를 식별하고 수정하여 편집하는 새로운 모듈을 제안하였다. [14]는 생성요약 모델이 만들어내는 사실 불일치 문제의 유형을 더 잘 이해하기 위해 수작업으로 대규모 평가를 수행하였다. 총 4가지((i) 생성요약 모델은 얼마나 자주 사실 불일치 문제를 일으키는가, (ii) 모델은 입력 문서에 존재하는 정보를 조작(내재적 사실 불일치)하거나 입력 문서에서 직접 잘못된 정보(외재적 사실 불일치)을 추가함으로써 환각을 일으키는가, (iii) 불충실할 때도 사실 불일치를 보이는 내용이 어느 정도 사실인가, (iv) 사실 불일치를 측정할 수 있는 자동 수단이 있는가) 질문에 대한 실험 평가를 진행하였다. [15]는 사실 일관성을 측정하기 위한 자동 모델 기반 평가 메트릭인 QAGS(Question Answering and Generation for Summarization)를 도입하였다. 해당 메트릭은 다른 자동 메트릭보다 원문과 요약문 간의 관련성이 잘 드러남을 입증하였다. [16]은 정답요약문을 긍정적인 훈련 데이터로 활용하고 잘못된 요약문을 자동으로 생성해 부정적인 훈련 데이터로 활용하였다. 이들을 더 잘 구별하기 위한 요약 시스템을 훈련하는 새로운 대조 학습 방안을 제시한다. 이를 위해 음성 샘플을 생성하는 전략을 설계하였다. [17]은 입력 데이터와 생성된 요약 사이의 단어 중첩을 최대화하는 방안을 제시한다. 이러한 최적화 전략을 통해 입력 데이터와 더 일치하는 요약문을 생성하고자 하였다. [18]은 문장 내의 각 요소가 학습되는 시기를 조사해 학습하기 어려운 토큰과 훈련 과정의 후반 단계에서 매우 빠르게 학습되는 토큰을 무시하는 방법을 제시한다. 무시되는 토큰들은 손실률이 높은 토큰들로 해당 토큰을 무시하는 방식을 활용해 요약문의 사실 불일치 문제를 개선하였다.

이처럼 생성요약의 사실 불일치 문제를 해결하기 위해 다양한 연구들이 진행되었다. 사실 불일치 문제는 주로 숫자나 사람의 이름과 같이 특정 개체명에서 많이 발생한다. 그러나 기존 연구들의 경우 이러한 개체명에 관점을 두지 않고 문장 단위 또는 토큰 단위 기반의 요약문 비교 방법을 제안하였다. 따라서 본 논문에서는 원문 리뷰, 정답요약문, 모델의 생성요약문에서 사실 불일치 문제를 자주 일으키는 개체명 간의 관련성과 중복성을 고려하는 사전 학습된 KoBART 모델의 멀티 태스크 손실 함수를 제안하는 점에서 기존 연구와 차별성이 있다.


Ⅲ. 제안 방안

본 논문의 제안 방안은 생성요약의 사실 불일치 문제가 특정 개체명에서 주로 발생한다는 점에 초점을 맞춘다. 원문 리뷰, 정답요약문, 생성요약문에서 사실 불일치 문제를 자주 발생시키는 개체들의 관련성과 중복성을 고려하는 사실 불일치 손실 함수를 구해 기존 손실 함수에 추가하는 멀티태스크 손실 함수를 제안한다. 이를 위해 3.1절에서는 사실 불일치 손실 함수에서 관련성을 고려한 교차 엔트로피 기반 손실 함수를 정의한다. 3.2절에서는 사실 불일치 손실 함수에서 중복성을 고려한 엔트로피 기반 손실 함수를 기술하고, 3.3절에서는 사실 불일치 문제를 보이는 개체명을 추출하여 개체의 확률값을 얻는 방법을 서술한다. 마지막으로 3.4절에서는 3.3절에서 구한 각 개체의 확률을 활용해 사실 불일치 손실 값을 구하고, 최종 멀티태스크 손실 함수를 구하는 방법을 기술한다.

3.1 관련성을 고려한 교차 엔트로피 기반 손실 함수

그림 3은 관련성을 측정하는 방법을 도식화한 것이다. 여기서 관련성이란 원문 리뷰와 정답요약문/생성요약문의 관련성이 얼마나 되는지를 의미한다. 사실 불일치 문제를 일으키는 개체가 겹치는 정도를 평가하여 많이 겹칠수록 관련성이 높다고 평가한다. 최종 관련성 값 2개를 구하여 두 값의 차로 관련성 손실 값을 구하며, 손실 값이 적을수록 요약문 간의 관련성이 높은 것으로 평가한다.


Fig. 3. 
Example of relevance between input review and summary texts

3.2 중복성을 고려한 엔트로피 기반 손실 함수

그림 4는 중복성을 측정하는 방법을 도식화한 것이다. 여기서 중복성이란 정답요약문과 생성요약문 간의 사실 불일치 문제를 일으키는 개체의 중복성이 얼마나 되는지를 의미한다. 정답요약문의 중복성을 평가한 값과 생성요약문의 중복성을 평가한 값의 차로 중복성 손실 값을 구한다. 손실 값이 작을수록 요약문 간의 단어 중복성이 높은 것으로 평가한다.


Fig. 4. 
Example of redundancy between generated summary and reference summary

3.3 사실 불일치 문제를 보이는 개체명 추출

이번 절에서는 3.1절과 3.2절에서 설명한 손실 값을 구하기 위해 사실 불일치 문제를 자주 보이는 개체를 추출하여 각 개체의 확률을 구하는 방법에 관해 설명한다. 그림 5와 같이 원문 리뷰, 정답요약문, 생성요약문에서 사실 불일치 문제를 일으키는 개체를 추출한다. 사실 불일치 문제를 일으키는 개체는 주로 숫자(신체 사이즈, 연도 등), 고유명사(브랜드명, 사람 이름 등), 패션 용어 등이 있다. 또한, 각 데이터 집합별로 전체 단어 개수를 계산한다. 이를 바탕으로 각 개체명의 개수를 분자로, 각 데이터 집합별 단어 개수를 분모로 하여 개체의 확률을 구한 후 최종 개체명 확률 집합을 구한다. 이때, 원문 리뷰의 개체명 확률 집합을 P1, 정답요약문의 개체명 확률 집합을 P2, 생성요약문의 확률 집합을 P3라 한다.


Fig. 5. 
Computation of the probability value of a named entity that is likely to cause the factual inconsistency problem

3.4 멀티태스크 손실 함수

이번 절에서는 3.3절에서 구한 확률 집합을 활용하여 사실 불일치 손실 값을 구하고 최종 멀티태스크 손실 값을 구하는 방법에 관해 설명한다. 그림 6은 멀티 태스크 손실 값을 구하기 위한 전체 흐름도이다.


Fig. 6. 
Flowchart of multi-task loss function

입력 데이터로 원문 리뷰, 정답요약문, 생성요약문이 입력되면 각 데이터에 대한 확률 집합인 P1, P2, P3을 가져온다. 이때 P1, P2, P3을 활용하여 관련성 손실 값을 구하고, P2, P3을 활용해 중복성 손실 값을 구한다.

관련성 손실 값은 식 (1)과 같이 P1P2, P1P3의 관련성 값을 구하게 된다. 이때, 관련성 평가를 위해 P1P2에 모두 포함되는 개체만 고려하고, P1P3에 모두 포함되는 개체만 고려하여 값을 구한다. 그 후 두 값의 차로 관련성 손실 값을 구하게 되며, 각 관련성 값은 교차 엔트로피를 통해 계산한다.

Relevance 1=-wiP2wilogP1wi  Relevance 2=-wiP3wilogP1wiRelevance Loss=Relevance 1-Relevance 2(1) 

중복성 손실 값은 식 (2)와 같이 P2P3의 중복성 값을 구한 후 두 값의 차로 구할 수 있다. 각 중복성의 값은 엔트로피를 통해 계산한다.

이때, 식 (1)식 (2)에서의 wi는 확률 집합 P1, P2, P3의 각 원소를 의미한다.

Redundancy 1=-wiP2wilogP2wi  Redundancy 2=-wiP3wilogP3wiRedundancy Loss=Redundancy 1-Redundancy 2(2) 

사실 불일치 손실 값은 관련성 손실 값과 중복성 손실 값의 차로 구할 수 있다. 결과 값은 개체명 간의 정보량을 의미하며 해당 값이 작을수록 요약문 간의 개체 분포가 유사하다고 평가한다. 최종적으로 λ 값이 곱해져 기존 손실 값인 Lossce에 더해지며 최종 멀티태스크 손실 값을 구해 학습을 진행한다.


Ⅳ. 실험 및 평가
4.1 실험 환경

이번 절에서는 본 논문에서 제안한 방안을 실험하기 위한 환경에 관해 설명한다.

데이터 셋으로 다양한 개체명이 존재하는 패션 관련 리뷰 데이터를 유명 유튜버 카페[19]와 패션 전문 커뮤니티[20]에서 수집하여 직접 구축하였다. 데이터 수집 후 이미지, 특수 문자, 이모티콘, 광고성 문구 등을 제거하는 전처리를 진행하였다.

약 5,500개의 리뷰 데이터를 8:2 비율로 학습 데이터와 테스트 데이터로 나누었으며, 리뷰 당 평균 20~30문장, 공백없이 평균 1,000~1,500개의 단어로 이루어져 있다. 표 2는 구축한 패션 데이터의 예시이다.

Table 2. 
Example of the training set
Review
안녕하세요. 지난번 86로드 데님 테스터에 선정되어 1713 슬림커팅진을 수령 후 며칠 입어본 후 올리는 후기 시작하겠습니다. 먼저 86로드는 Polished Street 다듬어진 스트릿이라는 슬로건을 기반으로 하는 데님 중심의 어반스트릿 브랜드입니다. Made in Korea 도메스틱 브랜드이며 일본에서 먼저 런칭하여 영역을 확장해 나가고 있는 브랜드입니다. 새로운 최상의 핏을 만들되 기본이 되는 편안함을 추구하며 일회성 의류가 아닌 지속성에 중심을 두자는 철학이 담겨져 있다고 합니다. 실제로 86로드를 애용자인 제가 느끼기에도 편안하고 다른 고가의 브랜드 청바지에 뒤지지 않을 퀄리티를 갖고 있다고 생각합니다. 제가 신청한 제품은 1713 slim cutting jeans 32 L size 바로 이 제품입니다. 집에 주로 중청 색만 있는데 여름이 다가오는 만큼 시원한 색감의 연청과 요즘 대세인 밑단 커팅 그리고 과하지 않은 디스가 제 맘에 쏙 들더라구요. 이렇게 86로드의 슬로건 Polished Street이 적힌 포장지가 도착하여 과연 이번엔 어떤 핏의 바지일까 기대가 됐습니다. 뜯어보니 곱게 포장된 데님팬츠를 맞이할 수 있었습니다. 제품의 디테일 컷입니다. 색은 폰으로 찍다보니 어둡게 나왔는데 86로드 공홈에 있는 사진의 색과 거의 일치하다고 보시면 됩니다. 워싱도 적절하게 잘 들어가 있고 밑단 커팅 후 마감처리도 훌륭하게 잘되어 있었습니다. 다만 무릎 디스 후 삐져나온 실밥이 개인적으로 많은 걸 선호하지 않아서 정리해보려 합니다. 특정 브랜드들에서 바지의 개체차이가 심한 경우가 있는데 제가 줄자로 직접 재어보니 실측에 표기된 허리 42cm와 정확히 일치하더라구요. 역시 86로드는 믿고 살만한 가치가 있는 것 같습니다. 이제 아래로는 제가 직접 착용한 착샷입니다. 참고로 제 스펙은 182cm 71kg 이며 평소 입는 바지 사이즈는 31 32인치 입니다. 오리 궁둥이는 웁니다. 슈퍼스키니 핏인데 다른 제품들에 비해 적당히 여유가 있는 슬림핏 느낌입니다. 또한 2 엘라가 포함되어 신축성이 있어 아주 편했습니다. 장시간 앉아있어도 불편함 없이 딱 좋았습니다. 다만 32사이즈 기준 총장이 94cm라 복숭아뼈 위로 올라와서 크롭 형태가 되는 점과 무릎 디스의 위치가 실제 무릎보다 위에 있는 점이 좋으면서도 아쉬웠던 것 같습니다. 무릎 디스는 원래 디자인을 무릎 윗부분 쪽에 오도록 한 것 같긴 합니다만.. 전 조금 더 위쪽에 오네욥.. 제가 다리가 짧은 건지... 총장이 딱 2센치만 길었어도 적당한 기장이었을 것 같네요.. 두께는 겨울 한여름을 제외한 계절에 착용할 수 있을 정도 입니다. 엄청 두껍거나 얇지도 않은 적당한 두께입니다. 86로드에 대한 개인적인 느낌을 몇자 적어 보자면 2017년 봄부터 접하게 되어 베이직 워싱 진 블랙 무파진 중청 embroidery cutting jean를 구매하고 올해 3월에도 플란넬 셔츠를 구매할 정도로 개인적으로 선호하고 믿고사고 있는 중입니다. 86로드 제품을 1년동안 입으면서 느낀점은 청바지 입을 때 다들 신경 쓰시는 무릎 발사도 심하지 않은 편이며 적당히 자연스럽게 늘어나서 딱 보기 좋게 변형된다는 것입니다. 지금까지 86로드 데님 테스터 1713 slim cutting jeans 후기 및 86로드 브랜드에 대한 개인적인 후기였습니다. 읽어주신 분들께 감사의 말씀을 드리며 이런 좋은 프로모션을 진행해주신 디매 및 86로드 관계자분들께 감사의 인사를 드립니다.
Reference Summary
공홈 사진과 거의 일치하는 시원한 색감의 연청이며 워싱도 적절하게 잘 들어가 있고 밑단 커팅 후의 마감처리도 훌륭하지만 무릎 디스 후의 실밥이 많다. 182cm에 71kg에 L사이즈를 입었을 때 슈퍼스키니 핏인데 적당히 여유있는 슬림핏 느낌이며 신축성이 있어 편하다. 총장이 복숭아뼈 위로 올라오는 점과 무릎 디스가 실제 무릎보다 위에 있는 점이 아쉬우며 한여름을 제외한 계절에 입을 수 있는 적당한 두께이다.

또한, 사실 불일치 문제를 일으키는 개체명을 추출하기 위한 패션 관련 개체명 사전을 구축하였다. 개체명을 추출하기 위한 소프트웨어로는 KoNLPy를 활용하였으며 추출 결과 약 2,500개의 개체가 생성되었다. 패션 관련 개체명에는 패션 용어, 디자인, 신체 사이즈, 재질, 색감, 착용감 등이 있으며 표 3을 통해 확인할 수 있다.

Table 3. 
Factual inconsistency named entities for fashion
Data Label
뉴발란스 패션(브랜드)
스판기 패션(소재)
미니멀 패션(스타일)
크림색 패션(색감)
180cm 패션(신체 사이즈 - 키)
78kg 패션(신체 사이즈 - 몸무게)

표 4는 실험에 사용한 다양한 실험 환경을 보여주며 표 5는 KoBART 학습 시에 사용한 초매개변수(Hyper-parameters)들을 나타낸다.

Table 4. 
Experimental set-up
Classification Specification
CPU Intel(R) Xeon(R) Gold 6248 CPU @ 2.50 GHz
GPU NVIDIA GeForce RTX 3080
SSD 252GB
OS Ubuntu 20.04.4 LTS
Software Python, Pytorch, KoNLPY, KoBART(Base Model)

Table 5. 
Hyper-parameters for learning KoBART
Hyper parameters Value
Batch size 3
Learning rate 3e-5
Gradient clipping 1.0
Epochs 10
λ 0.1

λ의 경우 3.4절에서 설명한 사실 불일치 손실 값이 더해질 때 곱해지는 값으로 관련성과 중복성 기반 손실 함수의 중요도를 나타낸다. 이 외의 다른 초매개변수 값은 KoBART의 기본값을 사용하였다.

4.2 실험 및 평가

제안 방안의 성능 평가로 첫 번째, 기존 모델과 제안 모델의 사실 불일치 문제를 보이는 요약문의 개수를 비교한다. 두 번째, ROUGE 점수와 BERTScore 점수를 비교한다.

ROUGE-n 점수는 n-gram 재현율(Recall)을 의미하며, 정답요약문과 생성요약문 사이의 점수를 계산한다. ROUGE-L 점수는 정답요약문과 생성요약문에서 가장 긴 문자열(Sequence)의 길이를 기반으로 재현율을 구하는 방식이다.

BERTScore 점수는 정답요약문과 생성요약문을 BERT에 입력하여 문맥 벡터를 구한 후 이를 기반으로 코사인 유사도를 계산해 점수를 구하는 방식이다.

그림 7은 기존 모델의 요약문과 제안 모델의 요약문에서 사실 불일치 문제를 갖는 요약문의 개수를 비교한 결과이다. 약 1100개의 요약문을 비교하였으며 비교 결과, 사실 불일치 문제를 보이는 요약문의 개수는 기존 모델의 6.36%로 총 70개의 리뷰에서 문제를 보였다. 하지만 제안 모델은 2.55%로 총 28개의 리뷰에서 문제를 보였으며 KoBART 대비 현저히 줄어든 것을 확인할 수 있다.


Fig. 7. 
Results of the number of generated summaries with factual inconsistency

그림 8은 사실 일관성 문제의 유형과 유형별 비율 값을 보여준다. 비교 결과 두 모델 모두 숫자와 관련된 개체에서 많은 오류를 범하는 것을 확인할 수 있다.


Fig. 8. 
Results of classification by type of generated summaries causing factual inconsistency

표 6은 기존 모델과 제안 모델의 ROUGE 점수와 BERT 점수를 비교한 결과이다. 제안 모델이 ROUGE-2 점수에서 최대 약 8% 증가하였으며, BERTScore 점수에서 약 1% 증가한 것을 확인할 수 있다.

Table 6. 
Overall accuracies of abstractive summarization between KoBART and proposed model
Metric KoBART Proposed model Improvement
ROUGE-1 23.97 25.50 + 6.38%
ROUGE-2 14.73 15.93 + 8.14%
ROUGE-L 23.70 25.23 + 6.46%
ROUGE-avg 20.80 22.22 + 6.83%
BERTScore 81.26 82.26 + 1.23%

그림 8을 통해 알 수 있듯이 사실 불일치 문제는 주로 숫자와 관련된 개체에서 일어나는 것을 볼 수 있다. 따라서 숫자 관련 개체명이 성능 향상에 어느 정도 영향을 끼치는지 확인하기 위한 실험을 진행한다.

표 7은 숫자 관련 개체명만 적용했을 때와 그 외 개체명만 적용했을 때의 ROUGE 점수를 비교한 결과이다. 이때, 숫자 관련 개체명의 개수는 약 230개, 그 외 개체명의 개수는 약 2,260개이다. 실험 결과 숫자 관련 개체명만 적용했을 때 개체명 개수 대비 점수 향상 비율이 더 큰 것으로 확인되었다. 이를 통해 사실 불일치 문제가 숫자 관련 개체에서 많이 발생하는 것을 알 수 있다.

Table 7. 
ROUGE scores of the proposed model according to the different types of name entities
Metric Number
(Body size, Price...)
Nouns and
Fashion jargon
ROUGE-1 24.63 25.10
ROUGE-2 15.37 15.67
ROUGE-L 24.37 24.83
ROUGE-avg 21.46 21.87

다음으로 적용한 개체명 개수에 따른 비교 평가를 진행하였다. 표 8은 실험 진행 후 ROUGE 점수를 비교한 결과이다. 무작위로 선택된 개체명 개수에 따라 비교 실험을 진행하였으며 개수를 각각 500개, 1,000개, 1,500개, 2,000개 설정하였다. 실험 결과 개체명의 개수보다는 개체 각각의 확률에 더 큰 영향을 받는 것을 알 수 있다.

Table 8. 
ROUGE scores of the proposed model according to the number of name entities
Metric Number of name entities chosen at random
500 1000 1500 2000
ROUGE-1 24.80 24.45 24.63 24.30
ROUGE-2 15.57 15.28 15.33 15.16
ROUGE-L 24.47 24.16 24.30 24.05
ROUGE-avg 21.61 21.30 21.42 21.17

다음으로 성능 향상에 있어 관련성 손실 값과 중복성 손실 값 중 더 큰 영향을 끼치는 값이 무엇인지 확인하기 위한 실험을 진행한다. 실험은 기존 손실 값에 관련성 손실 값만 추가했을 때와 중복성 손실 값만 추가했을 때로 나뉘며 실험 결과는 표 9와 같다. 실험 결과 전체적인 성능 향상에 있어서 관련성 값보다 중복성 값이 더 큰 영향을 주는 것을 확인할 수 있다.

Table 9. 
ROUGE scores of the proposed model according to the different type of loss functions
Metirc Lossce +
Relevance Loss
Lossce +
Redundancy Loss
ROUGE-1 24.87 25.70
ROUGE-2 15.60 16.20
ROUGE-L 24.60 25.47
ROUGE-avg 21.69 22.47

마지막으로 기존 모델의 요약문과 제안 방안의 요약문을 비교하였으며 그 결과는 표 10과 같다. KoBART가 생성한 요약문의 경우 원문 리뷰에는 없는 슬림커트나 오버핏과 같은 단어를 생성했으며, 182cm를 173cm로 잘못 생성해내는 사실 불일치 문제를 보였다. 하지만 제안 방안의 경우 182cm 71kg이라는 정보를 틀리지 않고 사실 불일치 문제없이 요약문을 잘 생성해낸 것을 확인할 수 있다.

Table 10. 
Example of the generated summaries by KoBART and the proposed model
Review
안녕하세요. 지난번 86로드 데님 테스터에 선정되어 1713 슬림커팅진을 수령 후 며칠 입어본 후 올리는 후기 시작하겠습니다. 먼저 86로드는 Polished Street 다듬어진 스트릿이라는 슬로건을 기반으로 하는 데님 중심의 어반스트릿 브랜드입니다. Made in Korea 도메스틱 브랜드이며 일본에서 먼저 런칭하여 영역을 확장해 나가고 있는 브랜드입니다. 새로운 최상의 핏을 만들되 기본이 되는 편안함을 추구하며 일회성 의류가 아닌 지속성에 중심을 두자는 철학이 담겨져 있다고 합니다. 실제로 86로드를 애용자인 제가 느끼기에도 편안하고 다른 고가의 브랜드 청바지에 뒤지지 않을 퀄리티를 갖고 있다고 생각합니다. 제가 신청한 제품은 1713 slim cutting jeans 32 L size 바로 이 제품입니다. 집에 주로 중청 색만 있는데 여름이 다가오는 만큼 시원한 색감의 연청과 요즘 대세인 밑단 커팅 그리고 과하지 않은 디스가 제 맘에 쏙 들더라구요. 이렇게 86로드의 슬로건 Polished Street이 적힌 포장지가 도착하여 과연 이번엔 어떤 핏의 바지일까 기대가 됐습니다. 뜯어보니 곱게 포장된 데님팬츠를 맞이할 수 있었습니다. 제품의 디테일 컷입니다. 색은 폰으로 찍다보니 어둡게 나왔는데 86로드 공홈에 있는 사진의 색과 거의 일치하다고 보시면 됩니다. 워싱도 적절하게 잘 들어가 있고 밑단 커팅 후 마감처리도 훌륭하게 잘되어 있었습니다. 다만 무릎 디스 후 삐져나온 실밥이 개인적으로 많은 걸 선호하지 않아서 정리해보려 합니다. 특정 브랜드들에서 바지의 개체차이가 심한 경우가 있는데 제가 줄자로 직접 재어보니 실측에 표기된 허리 42cm와 정확히 일치하더라구요. 역시 86로드는 믿고 살만한 가치가 있는 것 같습니다. 이제 아래로는 제가 직접 착용한 착샷입니다. 참고로 제 스펙은 182cm 71kg 이며 평소 입는 바지 사이즈는 31 32인치 입니다. 오리 궁둥이는 웁니다. 슈퍼스키니 핏인데 다른 제품들에 비해 적당히 여유가 있는 슬림핏 느낌입니다. 또한 2 엘라가 포함되어 신축성이 있어 아주 편했습니다. 장시간 앉아있어도 불편함 없이 딱 좋았습니다. 다만 32사이즈 기준 총장이 94cm라 복숭아뼈 위로 올라와서 크롭 형태가 되는 점과 무릎 디스의 위치가 실제 무릎보다 위에 있는 점이 좋으면서도 아쉬웠던 것 같습니다. 무릎 디스는 원래 디자인을 무릎 윗부분쪽에 오도록 한 것 같긴합니다만.. 전 조금 더 위쪽에 오네욥.. 제가 다리가 짧은 건지... 총장이 딱 2센치만 길었어도 적당한 기장이었을 것 같네요.. 두께는 겨울 한여름을 제외한 계절에 착용할 수 있을 정도 입니다. 엄청 두껍거나 얇지도 않은 적당한 두께입니다. 86로드에 대한 개인적인 느낌을 몇자 적어 보자면 2017년 봄부터 접하게 되어 베이직 워싱 진 블랙 무파진 중청 embroidery cutting jean를 구매하고 올해 3월에도 플란넬 셔츠를 구매할 정도로 개인적으로 선호하고 믿고사고 있는 중입니다. 86로드 제품을 1년동안 입으면서 느낀점은 청바지 입을 때 다들 신경쓰시는 무릎발사도 심하지 않은 편이며 적당히 자연스럽게 늘어나서 딱 보기 좋게 변형된다는 것입니다. 지금까지 86로드 데님 테스터 1713 slim cutting jeans 후기 및 86로드 브랜드에 대한 개인적인 후기였습니다. 읽어주신 분들께 감사의 말씀을 드리며 이런 좋은 프로모션을 진행해주신 디매 및 86로드 관계자 분들께 감사의 인사를 드립니다.
Reference Summary
공홈 사진과 거의 일치하는 시원한 색감의 연청이며 워싱도 적절하게 잘 들어가 있고 밑단 커팅 후의 마감처리도 훌륭하지만 무릎 디스 후의 실밥이 많다. 182cm71kg에 L사이즈를 입었을 때 슈퍼스키니 핏인데 적당히 여유있는 슬림핏 느낌이며 신축성이 있어 편하다. 총장이 복숭아뼈 위로 올라오는 점과 무릎 디스가 실제 무릎보다 위에 있는 점이 아쉬우며 한여름을 제외한 계절에 입을 수 있는 적당한 두께이다.
Generated summary from KoBART
86로드의 1713 슬림커트를 입었는데 적당한 오버핏을 원하는 분들에게 추천드린다. 173cm에 86로드를 입으니 허리가 조금 크게 나온 편인데 86로드는 허리 42cm와 정확히 일치했다.
Generated summary from Proposed Model
제 스펙은 182cm 71kg 이며 평소 입는 바지 사이즈는 31 32인치이다. 다른 제품들에 비해 적당히 여유가 있는 슬림핏 느낌이다. 또한 2 엘라가 포함되어 신축성이 있어 아주 편했으며 장시간 앉아있어도 불편함 없이 딱 좋았다.


Ⅴ. 결론 및 향후 연구

최근 국내 패션 시장이 커지기 시작하면서 패션에 대한 사람들의 관심이 증가하기 시작했다. 이로 인한 패션과 관련된 다양한 리뷰 데이터가 생성되고 있다. 이를 효율적으로 활용하기 위한 방안으로 자동 요약 기술이 있다. 특정 제품에 대한 리뷰를 중요 정보를 바탕으로 한 요약문을 제공한다면 소비자들이 원하는 정보를 찾는 데 걸리는 시간을 단축시킬 수 있다.

본 논문에서는 한국어 생성요약에서 가장 우수한 성능을 보이는 KoBART를 활용하여 생성요약의 사실 불일치 문제를 해결하기 위해 관련성과 중복성을 고려한 새로운 손실 함수를 제안하고, 패션 문서 요약을 위해 KoBART 모델에 적용하였다. 본 논문에서 제안한 방안은 기존 KoBART 모델에 비해 사실 불일치 문제를 150% 개선하였다. 또한, ROUGE-2 점수와 BERTScore 점수에서도 각각 8.14%와 1.23%로 크게 향상되었다.

향후 연구로는 XSum[21]과 같은 공신력 있는 생성요약 영문 벤치마크 데이터셋을 활용하여 제안 방안의 우수성을 입증할 예정이다. 또한, 우수한 생성요약 모델인 PEGASUS[22]를 활용하여 비교 실험을 진행한다. 마지막으로 패션과 같은 리뷰에서는 주로 이미지를 가지고 설명하기 때문에 텍스트와 이미지를 모두 고려하는 멀티모달(Multi-modal) 모델을 연구할 예정이다.


Acknowledgments

이 논문은 2022년도 정부(과기정통부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임(NRF-2022R1A2C1011404)


References
1. Zhong, P. Liu, Y. Chen, D. Wang, X. Qiu, and X. Huang, "Extractive Summarization as Text Matching", ACL, The Association for Computational Linguistics, pp. 6197-6208, Jul. 2020.
2. M. Rush, S. Chopra, and J. Weston, "A Neural Attention Model for Abstractive Sentence Summarization", EMNLP, The Association for Computational Linguistics, pp. 379-389, Sep. 2015.
3. S. G. Jo and B. W. On, "Weighted Context Vector-based BART Model for Improving Abstractive Summarization", Journal of KIIT, Vol. 19, No. 10, pp. 19-27, Oct. 2021.
4. Lewis, Y. Liu, et al., "BART: Denoising Sequence-to- Sequence Pre-Training for Natural Language Generation, Translation, and Comprehension", ACL, Online, pp. 7871–7880, Jul. 2020.
5. "KoBART", Github, last modified, Jun. 2022. https://github.com/SKT-AI/KoBART [accessed: Nov. 04, 2022]
6. Huang, X. Feng, X. Feng, and B. Qin, "The Factual Inconsistency Problem in Abstractive Text Summarization:A Survey", Apr. 2021.
7. Li, A. Sun, J. Han, and C. Li, "A Survey on Deep Learning for Named Entity Recognition," in IEEE Transactions on Knowledge and Data Engineering, Vol. 34, No. 1, pp. 50-70, Jan. 2022.
8. Y. Lin, "ROUGE:A Package for Automatic Evaluation of Summaries", WS, Association for Computational Linguistics, pp. 74-81, Jul. 2004.
9. Zhang, V. Kishore, F. Wu, K. Weinberger, and Y. Artzi, "BERTScore: Evaluating Text Generation with BERT", ICLR, Mar. 2020.
10. D. Wan and M. Bansal, "FactPFactuality-Aware Pre-training and Fine-tuning for Abstractive Summarization", NAACL, The Association for Computational Linguistics, pp. 1010-1028, Jul. 2022.
11. W. Kryscinski, B. McCann, C. Xiong, and R. Socher, "Evaluating the Factual Consistency of Abstractive Text Summarization", EMNLP, The Association for Computational Linguistics, pp. 9332-9346, Nov. 2020.
12. Y. Dong, S. Wang, Z. Gan, Y. Cheng, J. C. K. Cheung, and J. Liu, "Multi-Fact Correction in Abstractive Text Summarization", EMNLP, The Association for Computational Linguistics, pp. 9320-9331, Nov. 2020.
13. M. Cao, et al., "Factual Error Correction for Abstractive Summarization Models", EMNLP, The Association for Computational Linguistics, pp. 6251-6258, Nov. 2020.
14. J. Maynez, S. Narayan, B. Bohnet, and R. McDonald, "On Faithfulness and Factuality in Abstractive Summarization", ACL, The Association for Computational Linguistics, pp. 1906-1919, Jul. 2020.
15. M. Peyrard, "A Simple Theoretical Model of Importance for Summarization", ACL, Association for Computational Linguistics, pp. 1059-1073, Jul. 2019.
16. S. Cao and L. Wang, "CLIFF: Contrastive Learning for Improving Faithfulness and Factuality in Abstractive Summarization", EMNLP, The Association for Computational Linguistics, pp. 6633-6649, Nov. 2021.
17. H. Iso, X. Wang, Y. Suhara, S. Angelidis, and W. Tan, "Convex Aggregation for Opinion Summarization", EMNLP, Journal of Natural Language Processing, pp. 264-269, Apr. 2021.
18. T. Goyal, J. Xu, J. J. Li, and G. Durrett, "Training Dynamics for Text Summarization Models", ACL, The Association for Computational Linguistics, Oct. 2021.
19. "ZZANG9DADDY&", Naver blog, last modified, https://cafe.naver.com/zzang9daddy [accessed: Nov. 04, 2022]
20. "Diselmania", Naver blog, last modified, https://cafe.naver.com/dieselmania [accessed: Nov. 04, 2022]
21. S. Narayan, S. B. Cohen, and M. Lapata, "Don’t Give Me the Details, Just the Summary! Topic-Aware Convolutional Neural Networks for Extreme Summarization", EMNLP, Association for Computational Linguistics, pp. 1797-1807, Oct. 2018.
22. J. Zhang, Y. Zhao, M. Saleh, and P. J. Liu, "PEGASUS: Pre-training with Extracted Gap-sentences for Abstractive Summarization", ICML, Dec. 2020.

저자소개
구 다 훈 (Dahoon Gu)

2017년 3월 ~ 현재 : 군산대학교 소프트웨어학과 학부과정

관심분야 : 데이터 분석, 자연어처리, 인공지능

온 병 원 (Byung-Won On)

2007년 : 펜실베이니아주립대학교 컴퓨터공학과 박사

2008년 : 브리티시컬럼비아대학교 박사 후 연구원

2010년 : 일리노이대학교 ADSC센터 선임연구원

2011년 : 서울대학교 차세대융합기술연구원 연구교수

2014년 ~ 현재 : 군산대학교 소프트웨어학과 교수

관심분야 : 자연어처리, 인공지능, 강화학습

정 동 원 (Dongwon Jeong)

1997년 2월 : 군산대학교 컴퓨터과학과(학사)

1999년 2월 : 충북대학교 전자계산학과(석사)

2004년 2월 : 고려대학교 컴퓨터학과(박사)

2005년 4월 ~ 현재 : 군산대학교 소프트웨어학과 교수

관심분야 : 데이터베이스, 시맨틱 서비스, 빅데이터, 사물인터넷, 엣지컴퓨팅, 지능형 융합 서비스