[논문 리뷰] ROUGE: A Package for Automatic Evaluation of Summaries (2004)

tu11p·2024년 1월 14일
0

Paper Review

목록 보기
6/11
post-thumbnail

논문 링크

From ACL, 2004

  • 사전 지식

    ROUGE에서 Recall과 Precision

    y : 모델이 만든 요약문 y’ : 사람이 만든 정답 요약

    Recall

    • 정답 요약문의 단어 중 모델이 생성한 요약문에서 나타난 단어의 개수의 비율

      ROUGErecall=NumberOfOverlappedWordsTotalWordsInReferenceSummary=yyyROUGE_{recall}= \frac{Number\:Of\:Overlapped\:Words}{Total\:Words\:In\:Reference\:Summary} =\frac{y∩{y}'}{y}

      Precision

    • 모델이 생성한 요약문 중 정답 요약문과 얼마나 많은 단어가 겹치는지의 비율

      ROUGEprecision=NumberOfOverlappedWordsTotalWordsInSystemSummary=yyyROUGE_{precision}= \frac{Number\:Of\:Overlapped\:Words}{Total\:Words\:In\:System\:Summary} =\frac{y∩{y}'}{{y}'}

0. Abstract

  • ROUGE = Recall-Oriented Understudy for Gisting Evaluation
  • 모델이 생성한 요약(후보 요약)과 인간이 만든 이상적인 요약(참조 요약)을 비교하는 자동화된 방법을 포함한다.
    • (추출 요약, 생성 요약할 때 생성 요약 아님)
    • (모델의 출력물로 나온 요약문이라는 뜻)
  • 생성된 요약과 라벨 요약 사이에 중복되는 단위(n-gram, 단어 시퀀스, 단어 쌍 등)의 수를 세는 것
  • 그래서 4가지 다른 지표인 ROUGE-N, ROUGE-L, ROUGE-W, ROUGE-S를 소개한다.

1. Introduction

  • 요약문에 대한 evaluation을 수행하는 것은 ‘일관성, 간결성, 문법 정확성, 가독성, 내용’ 등 여러 지표를 평가해야 한다.
  • 간단한 지표에 대한 수동 평가조차도 수 천 시간 이상의 human resource가 필요하므로 자주 수행되기 어렵다.
    • 따라서 자동화된 요약 평가 방법이 필요하다.
  • 코사인 유사도, n-gram, 최대 공통 부분열 등을 기반으로 한 평가 방법이 제시되었지만, 이러한 방식이 인간 판단과 어떤 상관 관계가 있는지는 보여주지 않았다.
  • 우리는 2장부터 5장까지 n-gram과 최대 공통 부분열 등을 통한 여러가지 ROUGE 지표들을 제안하며, 6장에서는 이러한 지표들이 인간 판단과 어떤 상관 관계가 있는지를 보여준다.

2. ROUGE-N: N-gram Co-Occurrence Statistics

  • ROUGE-N은 후보 요약과 참조 요약 사이의 n-gram Recall이며, 아래와 같이 계산된다.
ROUGEN=SReferenceSummariesgramnSCountmatch(gramn)SReferenceSummariesgramnSCount(gramn)ROUGE-N=\frac{∑_{S∈{ReferenceSummaries}}∑_{gram_n∈S}Count_{match}(gram_n)}{∑_{S∈{ReferenceSummaries}}∑_{gram_n∈S}Count(gram_n)}
  • n은 n-gram의 길이를 나타내며, Count_match(gram_n)은 후보 요약과 참조 요약 집합에서 겹치는 n-gram의 최대 수이다.
  • BLEU는 기계 번역의 자동 평가에서 사용되는 지표로, precision 기반의 척도이다.
  • 분모에 있는 n-gram의 수는 더 많은 참조 요약을 사용함에 따라 증가한다.
    • 여러 좋은 요약이 존재할 수 있으므로 직관적이고 합리적이다.
  • 분자는 모든 참조 요약에 걸쳐 합산된다.
    • 여러 참조 요약에서 일치하는 n-gram에는 더 많은 가중치가 부여된다.

2.1 Multiple References

  • 한번에 여러 개의 참조 요약이 사용될 때, 후보 요약 s와 참조 집합의 각 참조 요약 r_i 간의 쌍 별로 ROUGE-N을 구한 뒤 최종적으로는 최대값을 사용한다:
 ROUGENmulti=argmaxiROUGEN(ri,s) ROUGE-N_{multi}=argmax_iROUGE-N(r_i,s)
  • 위 방식의 구현을 위해서는 잭나이프 절차를 사용한다.
    • M개의 참조 요약이 주어지면, M-1개의 참조 요약 집합에 대해 ROUGE-N 점수를 계산한다.
    • 이를 모든 M개의 참조 요약마다 반복하여 총 M개의 ROUGE-N 점수를 얻는다.
    • M개의 점수를 평균하여 최종 ROUGE-N 점수를 얻는다.

3. ROUGE-L: Longest Common Subsequence

  • Longest Common Subsequence(LCS): 최장 공통 부분열, 두 문자열에서 최대 길이를 가진 공통 부분 수열

3.1 Sentence-Level LCS

→ 요약 문장 하나하나를 각각의 단위로 보고 ROUGE 점수를 계산

  • 요약 문장을 단어의 연속으로 간주한다.
    • 직관적으로, 두 요약문의 LCS가 길수록 두 요약은 더 유사하다.
  • 참조 요약 X (길이 m)와 후보 요약 Y (길이 n) 사이의 유사성을 계산하기 위해 LCS 기반 F1 score를 사용하는 것을 제안한다.
Rlcs=LCS(X,Y)mPlcs=LCS(X,Y)nFlcs=(1+β2)RlcsPlcsRlcs+β2PlcsR_{{lcs}} = \frac{{LCS}(X,Y)}{m} \\P_{{lcs}} = \frac{{LCS}(X,Y)}{n} \\F_{{lcs}} = \frac{(1+\beta^2)R_{{lcs}} P_{{lcs}}}{R_{{lcs}} + \beta^2 P_{{lcs}}}
  • LCS(X,Y) : X,Y의 LCS 길이
  • ß : Precision / Recall , F1-score는 Recall과 Precision에 대해 동일한 민감도로 변함
    • ß가 크면 Precision가 더 중요하게 고려되고, ß가 작으면 Recall이 더 중요하게 고려
  • F_lcs 측정값을 ROUGE-L 지표로 사용
    • X = Y 일 경우 1, LCS(X,Y) = 0 일 경우 0
  • LCS를 사용하는 장점 중 하나는 단순히 연속적인 일치가 아니라 문장 수준의 어순을 n-gram으로 반영하는 시퀀스 단위의 일치를 요구한다는 것이다.
  • 또 다른 장점은 가장 긴 순서대로 common n-gram을 포함한다는 것으로, 미리 정해진 n-gram의 길이가 필요하지 않다는 것이다.
  • 예시) ROUGE-2와의 비교

S1. police killed the gunman → Reference Summary
**S2. police kill the gunman → Candidate Sentence 1
S3. the gunman kill police → Candidate Sentence 2
S4. the gunman police killed → Candidate Sentence 3

  • S2와 S3는 같은 ROUGE-2 점수를 갖는다 (하나의 bi-gram(the gunman)만을 가지므로)
    • 하지만 S2와 S3의 ROUGE-L은 다르다.
      • S2=3/4=0.75, S3=2/4=0.5
    • 이는 ROUGE-L이 문장 수준에서 신뢰 가능한 지표임을 보여준다.
  • 하지만 LCS는 하나의 시퀀스 단위만을 센다. 따라서 다른 LCS들은 최종 점수에 반영되지 못한다.
    • 예를 들어, S4에서는 “the gunman” 또는 “police killed”를 세지만 둘 다는 아니다. 따라서 S3와 S4는 동일한 ROUGE-L 점수를 갖는다.

3.2 Summary-Level LCS

→ 전체 요약문장을 하나의 단위로 보고 ROUGE 점수를 계산

  • 총 m개의 단어를 포함하는 u개의 문장으로 구성된 참조 요약과, 총 n개의 단어를 포함하는 v개의 문장으로 구성된 후보 요약
Rlcs=i=1uLCS(ri,C)mPlcs=i=1uLCS(ri,C)nFlcs=(1+β2)RlcsPlcsRlcs+β2PlcsR_{{lcs}} = \frac{\sum_{i=1}^{u} {LCS}\cup(r_i, C)}{m} \\P_{{lcs}} = \frac{\sum_{i=1}^{u} {LCS}\cup(r_i, C)}{n} \\F_{{lcs}} = \frac{(1+\beta^2)R_{{lcs}} P_{{lcs}}}{R_{{lcs}} + \beta^2 P_{{lcs}}}
  • r_i = {w1 w2 w3 w4 w5}이고, C가 c1 = {w1 w2 w6 w7 w8}과 c2 = {w1 w3 w8 w9 w5}로 이루어지면?
    • r_i와 c1의 LCS는 “w1 w2”이고 r_i와 c2의 LCS는 “w1 w3 w5”
    • r_i, (c1+c2)의 LCS는 “w1 w2 w3 w5” → LCS(r_i, C)는 4/5

3.3 ROUGE-L vs. Normalized Pairwise LCS

  • 2002년 제안된 Normalized Pairwise LCS와의 차이점
  • Normalized Pairwise LCS는 각 후보 요약들의 LCS들을 모두 찾아서 LCS의 최대 길이를 사용한다. (최대값)
  • 하지만 ROUGE-L은 후보 요약 전체를 결합한 단위에서의 LCS를 찾아서 사용한다. (결합값)
  • 따라서 ROUGE-L은 요약 전체의 맥락을 고려해서 유사성을 평가할 수 있고, Normalized Pairwise LCS는 개별 문장 간의 유사성을 평가할 수 있다.
siS1maxsjS2LCS(si,sj)+sjS2maxsiS1LCS(si,sj)siS1length(si)+sjS2length(sj)2siS1maxsjS2LCS(si,sj)m+nRlcsMEAD=siS1maxsjS2LCS(si,sj)mPlcsMEAD=siS1maxsjS2lcs(si,sj)n\frac{ \sum_{s_i \in S_1} \max_{s_j \in S_2} {LCS}(s_i, s_j) + \sum_{s_j \in S_2} \max_{s_i \in S_1} {LCS}(s_i, s_j)}{ \sum_{s_i \in S_1} {length}(s_i) + \sum_{s_j \in S_2} {length}(s_j)} \\\frac{ 2* \sum_{s_i \in S_1} \max_{s_j \in S_2} {LCS}(s_i, s_j)}{ m + n} \\R_{{lcs-MEAD}} = \frac{ \sum_{s_i \in S_1} \max_{s_j \in S_2} {LCS}(s_i, s_j)}{ m} \\P_{{lcs-MEAD}} = \frac{ \sum_{s_i \in S_1} \max_{s_j \in S_2} {lcs}(s_i, s_j)}{ n}

4. ROUGE-W: Weighted Longest Common Subsequence

  • LCS는 좋은 특성을 갖지만, basic LCS는 서로 다른 공간적 관계를 갖는 시퀀스를 구분하지 못한다:

X: [A B C D E F G]
Y1: [A B C D H I K]
Y2: [A H B K C I D]

  • Y1과 Y2는 같은 ROUGE-L 점수를 갖는다.
    • 하지만 Y1은 연속적인 LCS를 갖는데, Y3보다 더 높은 점수를 가져야 하지 않겠는가?
  • 지금까지 만난 연속적인 일치의 길이를 기억하도록 Dynamic Programming table을 만들 수 있다.
    • 이를 가중치가 있는 LCS(WLCS)라고 하고, k를 연속적인 길이로 사용한다.
    • 두 문장 X, Y에 대한 WLCS 점수는 아래와 같은 Dynamic Programming 수도 코드로 나타낼 수 있다.
(1) For (i = 0; i <=m; i++)
		 c(i,j) = 0 // initialize c-table
		 w(i,j) = 0 // initialize w-table
(2) For (i = 1; i <= m; i++)
		 For (j = 1; j <= n; j++)
			 If xi = yj Then
				 // the length of consecutive matches at
				 // position i-1 and j-1
				 k = w(i-1,j-1)
				 c(i,j) = c(i-1,j-1) + f(k+1)f(k)
				 // remember the length of consecutive
				 // matches at position i, j
				 w(i,j) = k+1
			 Otherwise
				 If c(i-1,j) > c(i,j-1) Then
					 c(i,j) = c(i-1,j)
					 w(i,j) = 0 // no match at i, j
				 Else c(i,j) = c(i,j-1)
					 w(i,j) = 0 // no match at i, j
(3) WLCS(X,Y) = c(m,n)
  • w 테이블 안에 연속적인 일치의 길이를 저장하고, 가중치 함수인 f 함수를 통해 c 테이블 안에 가중치 값(WLCS 점수)을 저장한다.
  • 가중치 함수 f는 연속적인 일치에 더 많은 점수를 부여하도록 설계
    • ex) n-gram 시퀀스가 끊길 때마다 페널티 부여하는 함수
  • WLCS를 기반으로 한 Recall, Precision, F1 score는 아래와 같이 계산된다.
    • (f(가중치 함수)의 역함수 사용 이유)
      • 가중치가 적용되어 있는 LCS 점수를 기존 길이 비율로 정규화하기 위함
Rwlcs=f1(WLCS(X,Y)f(m))Pwlcs=f1(WLCS(X,Y)f(n))Fwlcs=(1+β2)RwlcsPwlcsRwlcs+β2PwlcsR_{wlcs} = f^{-1}\left(\frac{WLCS(X,Y)}{f(m)}\right) \\P_{wlcs} = f^{-1}\left(\frac{WLCS(X,Y)}{f(n)}\right) \\F_{wlcs} = \frac{(1+\beta^2)R_{wlcs} P_{wlcs}}{R_{wlcs} + \beta^2 P_{wlcs}}

5. ROUGE-S: Skip-Bigram Co-Occurrence Statistics

  • Skip-Bigram은 문장 내에 단어 쌍을 간격을 허용하면서 순서대로 나타내는 것이다.
  • Skip-Bigram Co-Occurrence Statistics은 후보 번역과 참조 번역 사이의 skip-bigram 중복도를 측정한다.

S1. police killed the gunman → Reference Summary
**S2. police kill the gunman → Candidate Sentence 1
S3. the gunman kill police → Candidate Sentence 2
S4. the gunman police killed → Candidate Sentence 3

  • 각 문장은 4C2 = 6개의 skip-bigram을 갖는다.
    • ex) S1 = (“police killed”, “police the”, “police gunman”, “killed the”, “killed gunman”, “the gunman”)
  • S2와 S1은 3개가 일치하며, S3는 1개의 일치, S4는 2개가 일치한다.
  • 길이가 m인 문장 X와 길이가 n인 문장 Y가 주어질 때, skip-bigram 기반의 F1-score는 아래와 같이 계산한다.
Rskip2=SKIP2(X,Y)C(m,2)Pskip2=SKIP2(X,Y)C(n,2)Fskip2=(1+β2)Rskip2Pskip2Rskip2+β2Pskip2R_{{skip2}} = \frac{{SKIP2}(X,Y)}{C(m,2)} \\P_{{skip2}} = \frac{{SKIP2}(X,Y)}{C(n,2)} \\F_{{skip2}} = \frac{(1+\beta^2)R_{{skip2}} P_{{skip2}}}{R_{{skip2}} + \beta^2 P_{{skip2}}}
  • SKIP2(X,Y)는 X와 Y 사이의 skip-bigram 일치 수를 의미한다.
  • S1을 참조 요약으로 할 때, ROUGE-S 점수는
    • S2: 0.5, S3: 0.167, S4: 0.333
    • ROUGE-L 보다 더 직관적이다.
  • 단어 사이의 거리를 두는 skip-bigram의 장점
    • 연속적인 일치를 요구하지 않으면서도 단어 순서에 민감하다는 것
    • 단어 사이 거리 제한을 두지 않는다면?
      • ‘the the’나 ‘of in’ 같은 부적절한 일치도 유효하게 계산될 수 있다.
      • d_skip 파라미터로 스킵 거리 조절

5.1 ROUGE-SU: Extension of ROUGE-S

  • ROUGE-S의 잠재적인 문제는, 후보 문장이 참조 문장과 일치하는 단어 이 없을 경우에는 점수를 주지 않는다는 것이다.
  • 예를 들어, 아래 S5는 ROUGE-S 점수가 0이다:

S5. gunman the killed police

  • S5는 S1의 정확한 역순이며, 이들 사이에는 skip-bigram 일치가 없다.
    • 하지만 이들을 구분할 필요가 있다.
  • 따라서 bigram 단위가 아닌 unigram 단위로 세는 ROUGE-SU를 추가했다.

6. Evaluations of ROUGE

  • 인간 요약과의 비교를 위해 DUC 2001, 2002, 2003 데이터를 사용했으며, 이 데이터에는 다음과 같은 인간 판단이 포함되어 있다.
    • 약 100 단어에 대한 단일 문서 요약
    • 약 10 단어에 대한 매우 짧은 단일 문서 요약
    • 약 10 단어에 대한 다중 문서 요약
  • ROUGE score와 인간 요약 사이의 상관 관계를 분석하기 위해, 즉 ROUGE가 인간의 판단을 얼마나 잘 반영하는지 보기 위해서
    • 피어슨 상관계수, 스피어만 상관계수, 켄달 상관계수를 계산했다.
      • 공간의 한계로 논문에는 피어슨 상관계수 결과만 싣는데, 나머지도 피어슨과 밀접하다.
    • 요약문을 기존 버전(CASE 세트), 어간 추출 버전(STEM 세트), 불용어 제거 버전(STOP 세트)로 나누어 준비해 각각의 영향을 관찰했다.

  • 표1 은 DUC 2001, 2003의 100단어 단일 문서 요약에 대한 17 종류의 ROUGE 지표와 인간 판단과의 피어슨 상관계수를 나타낸다.
    • 녹색은 최고값을 나타내며, 통계적으로 유사한 값들은 회색으로 표시되었다.
    • 어간 제거나 불용어 제거가 상관관계에 영향을 미치지 않았으며,
    • ROUGE-2가 ROUGE-N 변형 중에서는 가장 성능이 좋으며,
    • ROUGE-L,W,S 모두 잘 수행되며,
    • 다중 참조를 수행하면 성능이 향상되지만 큰 향상은 아니다.

  • 표2 는 DUC 2003의 단일 문서의 매우 짧은 요약에 대한 상관관계 분석 결과이다.
    • N > 1인 ROUGE-N은 결과가 현저히 떨어진다.
    • 불용어 제거는 일반적으로는 성능을 향상시키지만 ROUGE-1은 아니다.
    • 이 데이터는 샘플이 많기 때문에 다중 참조가 상관관계를 향상시키지 않았다.

  • 표3 A1,A2,A3은 DUC 2001, 2002, 2003의 100단어 다중 문서 요약에 대한 상관관계 분석 결과이다.
    • 요약하면, 다중 참조를 사용하고, 불용어를 제거하는 것이 일반적으로 성능을 향상시킨다.
  • 표3 C, D1,D2,E1,E2,F는 나머지 DUC 데이터에 대해 다중 참조를 사용한 것에 대한 상관관계 분석 결과이다.
    • 불용어 제거가 특히 50단어 이상의 다중 문서 요약에서 성능을 향상시킨다는 것 보임.
      • 200단어, 400단어 요약에서는 더 나은 상관 관계(>0.70)

7. Conclusions

  • ROUGE 지표를 제안했으며, 3개년의 DUC 데이터를 사용해 ROUGE에 대한 평가를 수행했다.
  • 우리는 이러한 사실들을 알아냈다.
    • (1) ROUGE-2, ROUGE-L, ROUGE-W, ROUGE-S가 단일 문서 요약 작업에서 잘 동작하며,
    • (2) ROUGE-1, ROUGE-L, ROUGE-W, ROUGE-SU4, ROUGE-SU9가 매우 짧은 요약(또는 헤드라인 같은 요약)을 평가하는 데 효과적이고,
    • (3) 다중 문서 요약 작업에서 높은 상관 관계를 달성하기는 어려웠지만, 불용어를 제거하면, ROUGE-1, ROUGE-2, ROUGE-S4, ROUGE-S9, ROUGE-SU4, ROUGE-SU9가 효과적으로 동작했다.
    • (4) 불용어를 제외하는 것은 일반적으로 상관관계를 향상시켰으며,
    • (5) 다중 참조를 사용함으로써 인간 판단과의 상관관계가 증가했다.
  • 요약하면, ROUGE는 요약의 자동 평가에 효과적으로 사용될 수 있음을 보여준다.
  • 그러나 ROUGE가 단일 문서 요약 작업에서 효과적인 것처럼 다중 문서 요약 작업에서도 인간의 판단과 높은 상관 관계를 달성하도록 하는 것은 향후 연구로 진행되어야 하는 주제다.

0개의 댓글