[논문리뷰] Attention-based LSTM for Aspect-level Sentiment Classification

youngchae·2023년 6월 26일
1

논문리뷰

목록 보기
3/6

Wang, Yequan, et al. "Attention-based LSTM for aspect-level sentiment classification." Proceedings of the 2016 conference on empirical methods in natural language processing. 2016. 논문 리뷰입니다.


0. Abstract

  • Aspect-level sentiment classification : 감성 분석에서 세분화된 작업으로 특정 측면(aspect)에 대한 감성을 분석하는 작업
    • 문장의 감성 극성이 내용에 의해서만 결정
    • 해당 측면(aspect)과도 밀접한 관련 o
  • aspect-level sentiment classification을 위한 Attention-based Long Short-Term Memory Network 제안
    • attention mechanism : 서로 다른 aspect이 입력으로 사용될 때 문장의 서로 다른 부분에 집중
    • SemEval 2014 데이터셋 대상으로 실험 결과 SOTA 성능 달성

1. Introduction

  • Aspect-level sentiment analysis : 감성 분석에서 세분화된 작업으로 특정 측면(aspect)에 대한 감성을 분석하는 작업
    • 문장의 감성 극성이 문맥과 aspect 모두에 크게 의존

      “직원들은 그다지 친절하지 않지만 맛이 모든 것을 커버한다.”

      • 음식 측면 → 긍정적
      • 서비스 측면 → 부정적
  • Neural Networks : 번역, 의역 식별, 질문 답변, 텍스트 요악과 같은 다양한 NLP 작업에서 최첨단 성능 달성
    • but aspect 수준의 감성 분류 처리는 초기 단계
    • 일부 연구에서는 타겟 의존적 감성 분류를 위해 타겟 정보 고려 → 의존적 LSTM(TD-LSTM), 타겟 연결 LSTM (TC-LSTM)
      • 표적만 고려할 수 있을 뿐 aspect 수준 분류에 중요한 것으로 입증된 aspect 정보 고려 x
  • Attention : 이미지 인식, 기계 번역, 수반 조건에 따른 추론, 문장 요약에서 우수한 결과
    • 이 논문에서는 특정 aspect에 따라 모델이 문장의 중요한 부분에 주의를 기울이도록 하는 attention mechanism 제안
  • 주어진 aspect에 대한 반응에서 중요한 정보를 포착하기 위해 attention-based LSTM 설계
  • 레스토랑, 노트북 데이터 포함된 벤치마크 데이터셋 사용

1-1. Contributions

  1. aspect-level sentiment classification을 위해 attention-based Long Short-Term memory 제안
    • 서로 다른 aspect이 관련되어 있을 때 문장의 서로 다른 부분에 주의 기울일 수 있음
    • attention mechanism이 효과적인 결과를 보임
  2. 핵심적인 역할을 하는 aspect information 반영할 수 있는 2가지 방법 제안
    1. attention weights를 계산하기 위해 aspect vector를 문장 숨겨진 표현에 연결하는 방법
    2. aspect vector를 입력 단어 벡터에 추가적으로 적용하는 방법
  3. 우리의 접근 방식이 여러 베이스라인에 비해 성능이 향상
    • attention mechanism이 aspect 수준의 감성 분류에 효과적

2. Related Work

2-1. Sentiment Classification at Aspect-level

  • 현재 대부분의 접근 방식은 언급된 개체나 aspect를 고려하지 않고 전체 문장의 극성 감지
  • Rao and Ravichandran, 2009; Perez-Rosas et al., 2012; Kaji and Kitsuregawa, 2007; Mohammad et al. 2013 : 특징을 수동으로 설계하여 감성 어휘사전 풍부 → 감성 분석을 위한 어휘 기반 피처 구축
  • Mullen and Collier, 2004 : SVM 사용하여 BOW와 감성 어휘를 포함하는 특징을 가진 감성 분류기를 구축하는 데 중점을 둠

→ feature의 품질에 따라서 결과가 크게 달라짐, 노동집약적

2-2. Sentiment Classification with Neural Networks

  • Socher et al., 2011; Dong et al.,2014; Qian et al., 2015 : Recursive Neural Network 사용
  • Socher et al., 2015 : Recursive Neural Tensor Network 사용
  • Mikolov et al., 2010; Tang et al., 2015b : Recurrent Neural Network 사용
  • Hochreiter and Schmindhuber, 1997 : LSTM 사용
  • Tai et al., 2015 : Tree-LSTM 사용
    • 많은 자연어 처리 작업에 매우 효과적인것으로 입증됨
    • 리소스가 부족한 언어에서 흔히 발생하는 시냅스 파싱 오류로 인해 어려움을 겪을 수 있음
  • 목표 정보를 고려한 TD-LSTM, TC-LSTM 사용 (Effective LSTM for Target-Dependent Sentiment Classification(2016))
    • 목표 의존적 감성 분류에서 최고 성과
    • TC-LSTM : 목표 문구에 포함된 단어의 벡터를 평균화하여 목표 벡터 얻음
    • but 목표 문구에 포함된 단어의 평균을 구하는 것만으로는 목표 문구 감사의 감성을 표현하기에 충분하지 x
  • 이러한 방법들에도 불구하고 서로 다른 감성 극성을 구별하는 것은 여전히 어려움 → 감성 분류에 aspect 정보를 충분히 활용할 수 있는 강력한 신경망 설계하고자함

3. Attention-based LSTM with Aspect Embedding

3-1. Long Short-term Memory (LSTM)

  • Recurrent Neural Eetwork(RNN) : 기존 피드포워드 신경망을 확장한 것
    • 이것은 gradient exploding, vanishing 문제 존재
    • 이 문제를 해결하기 위해 LSTM 탄생

3-2. LSTM with Aspect Embedding (AE-LSTM)

  • aspect 정보는 주어진 aspect에 따라 한 문장의 시제를 분류할 때 매우 중요
  • 서로 다른 aspect 고려 → 정반대의 극성 얻을 수 있음
  • aspect 정보를 최대한 활용하기 위해 각 aspect에 대한 embedding vector 학습
  • notation
    • aspect i의 embedding vector : vaiRdav_{a_i}\in\mathbb{R}^{d_a}
    • aspect embedding의 matrix : ARda×AA \in \mathbb{R}^{d_a\times|A|}

3-3. Attention-bsed LSTM (AT-LSTM)

  • 표준 LSTM → aspect 수준 감성분류할 때 어느 부분이 중요한지 감지 불가
  • attention mechanism : 주어진 aspect에 대한 응답으로 문장의 핵심 부분을 포착 가능
    • 다양한 aspect를 고려할 때 문장에서 가장 중요한 부분 포착 가능
  • notation
    • LSTM이 생성한 hidden vector [h1,h2,...hN][h_1, h_2, ...h_N]으로 구성된 matrix : HRd×NH\in\mathbb{R}^{d\times N}
    • aspect i의 embedding vector : vaRdav_a\in \mathbb{R}^{d_a}
    • 1로 구성된 vector : eNRNe_N\in\mathbb{R}^N
  • 계산 과정
    M=([WhHWvvaeN])M = \begin{pmatrix}\begin{bmatrix} W_hH\\W_vv_a \otimes e_N \end{bmatrix}\end{pmatrix}
    α=softmax(wTM)\alpha = softmax(w^TM)
    r=HαTr = H\alpha^T
    final sentence representation : h=tanh(Wpr+WxhN)h^* = tanh(W_pr+W_xh_N)
    final prediction : y=softmax(Wsh+bs)y = softmax(W_sh^*+b_s)

3-4. Attention-based LSTM with Aspect Embedding (ATAE-LSTM)

  • aspect embedding이 attention weight를 부여하는 역할을 하도록 함
  • aspect 정보를 더 잘 활용하기 위해 각 단어 입력 벡터에 입력 aspect 임베딩을 추가
  • 단어와 입력 aspect 간의 상호의존 모델링 가능

3-5. Model Training

  • 손실함수 : cross entropy loss, 훈련의 목표 : 모든 문장에 대해 y와 y^\hat{y} 사이의 cross entropy loss 최소화
  • AT-LSTM : A를 포함하는 aspect이 매개변수 집합에 자연스럽게 추가
    추가 파라미터 세트 {A,Wh,Wv,Wp,Wx,w{A, W_h, W_v, W_p, W_x, w}}
  • AE-LSTM : 추가 파라미터 세트 {A}
  • ATAE-LSTM : 추가 파라미터 세트 {A,Wh,Wv,Wp,Wx,wA, W_h, W_v, W_p, W_x, w}
  • word embedding 및 aspect embedding은 학습 중 최적화
  • 어휘 단어 비율은 약 5%, 최적화 방법 AdaGrad

4. Experiment

  • 모든 단어는 Glove에 의해서 초기화, word embedding vector는 840,000,000,000(8400억) 크기의 라벨이 없는 말뭉치에 대해 사전 학습
  • 다른 파라미터는 균등분포에서 샘플링하여 초기화
  • hidden layer : 300, attention weights의 길이 = 문장의 길이
  • batch size=25, momentum : 0.9, L2 regularization weight : 0.001, AdaGrad 초기 학습률 = 0.01

4-1. Dataset

  • SemEval 2014 Task 데이터셋으로 실험
    • 고객 리뷰로 구성
    • 각 리뷰에는 aspect 목록, 해당 극성 포함
  • 해당 aspect와 함께 문장의 aspect 극성을 식별하는 것

4-2. Task Definition

4-2-1. Aspect-level Classification

  • 미리 식별된 일련의 aspect이 주어지면 이 작업은 각 aspect의 극성을 결정

“그 식당은 너무 비쌌다.”

  • 가격 측면 → 부정적
  • aspect의 집합 : {food, price, service, ambience, anecdotes/miscellaneous}

4-2-2. Aspect-Term-level Classification

  • 문장 내의 주어진 aspect 용어 집합에 대해 각 aspect 용어의 극성을 positive, negative, neutral로 분류하는 작업
  • SemEval 2014 과제4의 데이터 세트에 대한 실험
  • 레스토랑, 노트북 데이터 세트의 문장에는 각 aspect 용어의 발생 위치에 대한 위치, 감정 극성 존재
  • restaurant data 극성 분류 결과

  • laptop data 극성 분류 결과

4-3. Comparision with baseline methods

  • LSTM : 문장의 어떤 aspect 정보도 캡처할 수 없으므로 다른 aspect가 주어지더라도 동일한 감정 극성을 얻어야함
  • TD-LSTM : 한 aspect을 타깃으로 처리하여 감성 분류기의 성능 향상 가능
  • TC-LSTM : 문장의 표현에 타깃을 통합하여 TD-LSTM을 확장
    • 단어 벡터에서 얻은 표적 표현을 LSTM 셀 단위의 입력에 추가
  • 우리 모델에서는 aspect를 다른 벡터 공간에 포함시킴
    • 임베딩된 aspect vector는 훈련 과정에서 잘 학습 가능
    • ATAE-LSTM : 단어 벡터와 aspect embedding 간의 불일치라는 단점 해결, 주어진 aspect에 대한 응답에서 가장 중요한 정보 포착
      • 다양한 aspect이 주어졌을 때 문장의 중요하고 다른 부분 포착 가능

4-4. Qualitative Analysis

  • 어떤 단어가 주어진 문장의 감성 극성을 결정하는지 분석하는 것은 매우 유익
  • 관심도 가중치 α\alpha 시각화 가능

  • 색농도는 주의력 벡터 α\alpha에서 가중치 중요도, 짙을수록 높은 중요도
  • 전체 문장에서 중요한 부분을 동적으로 얻을 수 있음

“I have to say they have one of the fastest delivery times in the city.”

  • “fastest delivery times” → 서비스가 입력 측면인 경우 구문 감지 가능

”The fajita we tried was tastless and burned and the mole sauce was way too sweet.”

  • “tastless”, “too sweet” 모두가 감지됨

4-5. Case Study

  • 이 부분에서는 몇 가지 일반적인 예를 통해 제안된 모델의 장점 확인

  • 테스트 세트에서 일반적인 특성을 가지고 있지만 LSTM으로 추론할 수 없는 몇 가지 예가 존재

(a) “The appetizers are ok, but the service is slow”

  • 음식과 서비스 측면의 두가지 측면 존재

(b) “I highly recommend it for not just its superb cuisine, but also for its friendly owners and staff.”

  • 부정을 나타내지 않는 부정어의 영향을 받지 않고 정확한 극성을 얻을 수 있음

(c) “The service, however, is a peg or two below the quality of food (horrible bartenders), and the clientele, for the most part, are rowdy, loud-mouthed commuters (this could explain the bad attitudes from the staff) getting loaded for an AC/DC concert or a Knicks game.”

  • 문장이 길고 구조가 복잡하여 기존 파서로는 올바른 파싱 트리를 얻기 어려울 수 있음
    → 트리 기반 신경망 모델은 극성을 정확하게 예측하기 어려움
    but attention based LSTM은 attention mechanism과 aspect embedding 덕에 잘 작동 가능

5. Conclusion and Future Work

  • 이 논문에서는 aspect 수준 감정 분류를 위한 attention based LSTM 제안
  • 제안의 핵심 아이디어는 aspect embedding 학습, aspect이 attention weight 계산에 참여할 수 있도록 하는 것
  • 우리가 제안한 모델은 서로 다른 aspect이 주어질 때 문장 다른 부분에 집중할 수 있으므로 aspect-level classification에 더 적합
  • 실험 결과 AE-LSTM, ATAE-LSTM이 기존 모델보다 우수한 성능
  • aspect 수준의 감성 분석에 대한 잠재력 보여줌, 그렇지만 서로 다른 aspect이 개별적으로 입력됨
  • 향후 attention mechanism을 통해 두가지 이상의 aspect를 동시에 모델링하는 것 연구 가능
profile
we_need_to_talk_about_ds

0개의 댓글