NL-127, Directed Acyclic Graph Network for Conversational Emotion Recognition, 2021-ACL
◼ Comment
- 기타 다른 ERC 논문하고 사실 크게 다른 느낌은 없다.
- 단지, 현재 많이 나오는 외부지식을 활용하는 모델링은 아니다.
- 단지, 그래프로 모델링한 논문들은 future 발화를 활용하는 경우가 있는데, 여기서는 그렇지 않았다는 것이다.
- 일반적으로 과거 발화와 현재 발화들이 쭉 있을 때, 그래프화를 만든다고 생각해보자.
- 어떻게 그래프를 연결할 것인가?
- 가장 보편적으로 쓰이는 방법은, 같은 화자이냐 아니냐이다.
- 즉 여기서도 같은화자이면 node가 1이되고 아니면 0이되는 식이다.
- 근데, 그럼 이전의 모든 발화를 고려할 것인가?
- 이전의 연구들에서는 fixed number같은거를 사용했는데, 여기서는 조금 다르다.
- 즉 w라는 파라미터를 이용하는데, w=1은 현재 화자가 이전에 발화한 점이 시작점이 되는 것이다.
- w=2는 화자가 이전->이전 발화지점이 시작점이 되는 것이다.
- 즉 시작점 이후의 발화만 현재 발화에 연결되는 그래프를 구현한 것이다.
- 그래프 모델링은 DAG-ERC로 RNN과 GNN을 혼합한 형태라고 한다.
- 이러한 방법이 DAGNN인데, 이를 약갼 변형한 느낌이다.
- 식1,2,3부터 이후를 참고하길 바란다.
- 근데 살펴보면 그냥 일반 attention network 느낌인데...
- 아무튼 이렇게 모델링하면 성능이 좋다고 한다.
- 근데 이게 그렇게 좋은 성능 같지는 또 않는 느낌이다.
0 Abstract
- 대화형 context의 모델링은 ERC에서 감정 인식에서 중요한 역할을 한다.
- 이 논문에서, 우리는 directed acyclic graph (DAG)와 함께 utternace을 인코딩하는 새로운 아이디어를 적용해서 대화안에서 본질적인 구조를 더 잘 모델링하고 directed acyclic neural network (DAG-ERC)을 디자인한다.
- 전통적인 그래프 기반의 뉴럴 모델들과 RNN기반의 뉴럴 모델들의 강점을 결합하는 시도에서, DAG-ERC는 좀 더 직관적인 방법으로 긴 거리가 있는 대화 백그라운드와 가까운 컨텍스트간의 informatino flow을 모델링한다.
- 광범위한 실험들은 4가지 ERC 벤치마크들에서 실행되고 비교되었다.
- 실험적인 결과들은 새로운 모델의 뛰어남을 증명하고 ERC에 대한 directed acyclic graph 구조의 동기를 확인한다.
1 Introduction
- ERC에서 발화 레벨 감정인식은 떠오르는 테스크로, 대화에서 각 발화의 감정을 식별하는데 초점을 맞춘다.
- 이 작업은 소셜 미디어의 의견 마이닝 및 감정적이고 공감적인 대화 시스템 구축과 같은 여러 영역에서의 잠재적인 응용으로 인해 최근 상당한 수의 NLP 연구원이 우려하고 있습니다.
- 쿼리 발화의 감정은 동일한 화자가 말한 발화 및 주변 대화 컨텍스트와 같은 많은 요인의 영향을 받기 쉽습니다.
- 실제로 대화 컨텍스트를 모델링하는 방법은 이 작업의 핵심입니다(Poria et al., 2019a).
- 경험적 증거는 또한 대화 컨텍스트의 좋은 표현이 모델 성능에 크게 기여한다는 것을 보여줍니다.
- 특히 쿼리 발화의 내용이 너무 짧아서 단독으로 식별할 수 없는 경우에 그렇습니다(Ghosal et al., 2019).
- 대화 컨텍스트의 모델링에 많은 노력을 기울였습니다.
- 기본적으로 그래프 기반 방법과 반복 기반 방법의 두 가지 범주로 나눌 수 있습니다.
- graph-based 방법의 경우 특정 창 내에서 주변 발화에 대한 정보를 동시에 수집하고 먼 발화와 sequential 정보는 무시합니다.
- recurrence-based 방법의 경우 시간적으로 발화를 인코딩하여 원거리 발화 및 순차적 정보를 고려합니다.
- 그러나 가장 가까운 발화에서 상대적으로 제한된 정보만으로 쿼리 발화의 상태를 업데이트하는 경향이 있어 만족스러운 성능을 얻기가 어렵습니다.
- 위의 분석에 따르면 직관적으로 더 나은 ERC 해결 방법은 그래프 기반 방법과 반복 기반 모델의 장점을 서로 보완하는 것입니다.
- 이것은 각 대화를 방향성 비순환 그래프(DAG)로 간주하여 달성할 수 있습니다.
- 그림 1에서 볼 수 있듯이 대화의 각 발화는 일부 이전 발화에서만 정보를 수신하고 정보를 경로를 통해 자신과 이전 발화에게 역으로 전파할 수 없습니다.
- 이 특성은 대화가 DAG로 간주될 수 있음을 나타냅니다.
- 또한, DAG는 선행자에서 에지를 통해 후임자로 정보 흐름을 통해 인접 발화와 원격 발화 모두에서 쿼리 발화에 대한 정보를 수집할 수 있으며, 이는 그래프 구조와 반복 구조의 조합처럼 작동합니다.
- 따라서 우리는 DAG가 그래프 기반 구조 및 반복 기반 구조보다 ERC에서 대화 컨텍스트를 모델링하는 데 더 적절하고 합리적인 방법이라고 추측합니다.
- 이 논문에서, 우리는 DAG에 관하여 converstaion context을 모델링하는 방법을 제시한다.
- 먼저, 간단히 주변의 발화들의 수를 고정하여 각 utterance에 간단히 연결하여 그래프를 구축하는 것보다는, 우리는 새롭게 DAG을 speaker identity와 positional relations에 제약을 갖는 대화로부터 DAG을 구축한다.
- 두 번째로, DAGNN에서 영감을 받아서, 우리는 directed acyclic graph neural network (DAG-ERC)을 제안한다.
- 전통적인 GCN와 GAT과 같은 그래프 뉴럴 네트워크와 달리, 이전의 layer로부터 aggregate information인 DAG-ERC은 연속적으로 single layer에서 매 발화의 선행 정보를 모을 수 있고, 이는 너무 많은 layers을 쌓지 않고 remote context을 인코딩하는 모델링을 할 수 있다.
- 게다가, ERC 테스크에 좀 더 적용하기 위해, 우리의 DAG-ERC는 DAGNN에 비해 2가지 향상이 있다.
- (1) speaker identity에 기반한 정보를 수집하기 위한 relation-aware feature transformation
- (2) historical context의 정보를 강화하기위한 contextual information unit
- 우리는 4가지 ERC 벤치마크들에대해 광범위한 실험들을 하고, DAG-ERC가 SoTA와 경쟁력있는 결과를 보여준다.
- 게다가, 여러 연구들은 DAG-ERC의 모듈들과 DAG 구조의 영향을 탐구에 대해 수행된다.
2 Related work
3 Methodology
3.1 Problem Definition
- In ERC, a conversation is defined as a sequence of utterances {u1, u2, ..., uN }, where N is the number of utterances. Each utterance ui consists of ni tokens, namely ui = {wi1, wi2, ..., wini }.
- A discrete value yi ∈ S is used to denote the emotion label of ui , where S is the set of emotion labels.
- The speaker identity is denoted by a function p(·).
- For example, p(ui) ∈ P denotes the speaker of ui and P is the collection of all speaker roles in an ERC dataset.
- 이 작업의 목적은 대화 컨텍스트 {u1, u2, ..., uN} 및 해당 화자 ID를 기반으로 주어진 쿼리 발화 ut에 대한 감정 레이블 yt를 예측하는 것입니다.
- future 정보도 쓰는건가?
3.2 Building a DAG from a Conversation
- 우리는 directed acyclic graph (DAG)을 고안하여 대화에서 정보 전파를 모델링한다.
- DAG는 G=(V,E,R)로 표기된다.
- 이 논문에서,
- DAG의 nodes들은 대화에서 utterance이다. 즉 V = {u1, u2, ..., uN}이다.
- edge는 (i, j, rij) ∈ E로 ui부터 uj까지의 전파된 정보를 표현한다.
- 여기서 rij ∈ R는 edge의 relation type이다.
- edges의 relation types 세트는 R={0, 1}은 두 가지 타입의 relations을 포함한다.
- 1은 두 개의 연결된 utterances가 같은 speaker로부터 발화된 것을 의미하고, 0은 그반대이다.
- 우리는 3가지 제약을 부과하여 utterance가 다른 것에게 정보를 전파할 시기를 결정한다. (즉 두 개의 발화들은 DAG에서 연결될때)
- Direction
- Remote information
- 첫 번째 발화를 제외한, 각 발화
에서, 이전의 발화
는
와 같은 화자로부터 발화된 것이다.
전에 생성된 information은 remote information이라 부르고, 이는 중요도가 상대적으로 낮다.
- 우리는 spekaer가
를 말할 때, 화자는
이전의 remote information을 인지하고 있다고 가정한다.
- 이 뜻은,
가 remote inofrmation을 포함하고있고,
에게 remote information을 전파하는 역할을 할 것이다.
- Local information
- 보통, local context의 information은 중요하다.
- 두 번째 제약에서 정의된
와
고려하자.
- 우리는
와
사이의 매 발화
가 local information을 포함한다고 가정하고, 그들은 local information을
에게 전파할 것이다.
- 첫 번째 제약 조건은 대화가 DAG임을 보장하고 두 번째 및 세 번째 제약 조건은
가 remote 및 local 정보의 차단(cut-off) point임을 나타냅니다.
- We regard
as the ω-th latest utterance spoken by p(ui) before ui , where ω is a hyper-parameter.
- 그리고나서,
와
사이의 각 발화
는, 우리는
부터
까지의 directed edge를 만든다.
- 알고리즘1은 DAG의 구축과정을 보여준다.
- uA / uB / uA / uB
- i = 4으로 생각해보자., w은 2로 정의되어있는 값으로 고려
- step1)
- tau=3, c=0 이므로
- p(u3)=A, p(u4)=B이므로 e = {(3,4,0)}
- tau=2로 변경
- stpe2)
- tau=2, c=0이므로
- p(u2)=B, p(u4)=B이므로 e = {(3,4,0), (2,4,1)}
- tau=1, c=1 으로 변경
- step3)
- tau=1>0, c=1<w 이므로
- p(u1)=A, p(u4)=B이므로 e = {(3,4,0), (2,4,1), (1,4,0)}
- tau=0으로 변경
- return G=({u1,u2,u3,u4}, {(3,4,0), (2,4,1), (1,4,0)}, {0, 1})
- 즉, m번째 발화 um의 감정을 인식한다고 하면, um을 말한 화자가 이전에 발화한 turn을 찾는다.
- 그것이 n이라고 해보자.
- 만약에 um을 말한 화자가 이전에 발화한게 여러 개 있다면? 이때 w값에 따라서 n의 위치를 정하게 되는 것이다.
- 그럼 n부터 m까지의 발화 ul들이 um까지 그래프를 이으는데, 같은 발화는 1, 아닌 발화는 0으로 잊는 개념이다.
- An example of the DAG is shown in Figure 2.
- 일반적으로, 우리의 DAG는 이전의 연구들에서 개발된 graph 구조와 비교하여 2가지 중요 향상이 있다.
- 1) 먼저, 우리의 DAG는 future 발화들에서 previous 발화들까지 edges가 없다.
- 쿼리 발화의 감정이 실제로 미래 발화에 영향을 받지 않아야 하기 때문에 우리가 더 합리적이고 현실적이라고 주장합니다.
- 2) 두 번째로, 우리의 DAG는 주변의 발화들의 고정된 수로 각 발화를 단순히 연결하는 것보단, 각 발화에 대해 좀 더 의미있는
울 찾는다.
3.3 Directed Acyclic Graph Neural Network
- In this section, we introduce the proposed Directed Acyclic Graph Neural Network for ERC (DAGERC).
- The framework is shown in Figure 3.
3.3.1 Utterance Feature Extraction
- DAG-ERC는 각 발화를 graph node로 간주하고, feature는 pretraeind Transformer-based language model로부터 추출된다.
- 일반적으로, pre-trained LM는 먼저 각 ERC 데이터세트에 대해 fine-tuned되고, 그것의 파라미터들은 DAG-ERC을 학습하는 동안 고정된다.
- Ghosal et al. (2020)을 따라서, 우리는 RoBERTa-Large을 적용하고, 이는 BERT-Large와 같은 구조로 우리의 feature extractor이다.
- 좀 더 구체적으로, 각 발화
에 대해, 우리는 special token [CLS]을 앞에 붙여서, 입력을 {[CLS], wi1, wi2, ..., wini }로 만든다.
- 그리고나서, 우리는
의 feature representation로써 마지막 layer에서 [CLS]의 pooled embedding을 사용하낟.
3.3.2 GNN, RNN and DAGNN
- DAG-ERC 레이버들을 자세히 소개하기전에, 우리는 먼저 간단히 graph-based models인 RNN 기반 모델과 directed acyclic graph 모델에 대한 차이점을 이해하는 것을 돕기위해 설명한다.
- 각 layer에 각 node에 대해서, graph-based models (GNN)은 이전의 layer에서 근처의 nodes의 정보를 다음과 같이 모은다.
- where f(·) is the information processing function,
- Aggregate(·) is the information aggregation function to gather information from neighboring nodes, and Ni denotes the neighbours of the i-th node.
- 즉 H^2_4는 H^1_4와 H^1_{2,3}을 aggregate한다는 것.
- RNN은 정보가 같은 layer에서 일시적으로 전파되게 하는 반면, i-th node는 오직 (i-1)노드에서만 정보를 받는다.
- Directed acyclic graph models (DAGNN)은 GNN와 RNN의 조합과 같이 작용한다.
- 시간 순서로 각 노드에 대한 정보를 집계하고 모든 노드가 이웃에서 정보를 수집하고 동일한 레이어에서 상태를 업데이트할 수 있습니다.
- DAGNN을 ERC에 적용하는 장점은 비교적 분명합니다.
- 같은 layer에서 정보를 일시적으로 전파함으로써, DAGNN은 먼 utterance에 접근할 수 있고, 전체 대화를 통해서 information flow을 모델링할 수 있다.
- 이는 GNN에서는 거의 불가능하다.
- 게다가, DAGNN은 (i-1) 번째 발화에서만 정보를 받기 때문에 RNN보다 더 매력적으로 들리는 여러 주변 발화에서 정보를 수집합니다.
3.3.3 DAG-ERC Layers
- 우리가 제안한 DAG-ERC은 DAGNN 에서 영감을 받아, 대화에서 감정 인식을 위해 특별히 제작된 새로운 개선 사항을 포함합니다.
- DAG-ERC의 각 layer i에서, temporal information flow 때문에, utterances의 hidden state는 첫 번째 발화에서 마지막까지 연속적으로 계산되어야 한다.
- 각 발화 ui에 대해서, ui와 이전의 것들 사이의 attention weights들은 (l-1) layer에서 ui의 hidden state을 사용해서 계산되어서 l-th layer의 이전의 hidden states에 attend한다.
- DAGERC에서 information aggregation 동작은 DAGNN과 다르다.
- attention weights에 따라서, 단순히 정보를 합치는 대신, R-GCN에서 영감을 받아, 우리는 relation-aware featuer transformation을 적용하여 edges의 relational type의 최대한 사용한다.
- aggregated information
가 계산되고 난 후, 우리는 현재 layer에서 ui의 final hidden state을 얻기 위해서, 이전의 layer
에서 ui의 hidden state와 상호작용하게 한다.
- DAGNN에서, final hidden state는 GRU을 사용해서
가 l-th layer로
의 information 전파를 컨트롤하게 해서 얻게된다.
- 과거 계층에서 현재 계층으로 전달되는 노드 정보에 초점을 맞추므로 식 6의 프로세스를 노드 정보 단위라고 합니다.
- 노드 정보 단위는 DAGNN이 원래 해결하도록 설계된 작업에 적합할 수 있습니다.
- 그러나 특히 쿼리 발화 ui의 감정이 컨텍스트에서 파생되어야 하는 경우 노드 정보 단위만 사용하는 것만으로는 ERC에 충분하지 않음을 알 수 있습니다.
- 그 이유는 DAGNN에서 컨텍스트
의 정보는 ui의 은닉 상태의 전파를 제어하는 데만 사용되며 이러한 상황에서 컨텍스트 정보가 충분히 활용되지 않기 때문입니다.
- 따라서 우리는 단일 계층을 통한 역사적 맥락의 정보 흐름을 모델링하기 위해 맥락 정보 유닛이라는 또 다른 GRU를 설계합니다.
- In the contextual information unit, the roles of
and
in GRU are reversed, i.e.,
controls the propagation of
- The representation of ui at the l-th layer is the
sum of
and
:
3.3.4 Training and Prediction
- 우리는 모든 DAG-ERC layers의 ui의 hidden states concatenation을 하여 final representation of ui을 취하고, feed-forward neural network을 통하여 감정을 예측한다.
- For the training of DAG-ERC, we employ the standard cross-entropy loss as objective function:
4 Experimental Settings
4.1 Implementation Details
- 검증 세트로 홀드아웃 검증을 통해 각 데이터 세트에 대해 제안된 DAG-ERC에 대한 하이퍼 매개변수 검색을 수행합니다.
- 검색할 하이퍼파라미터에는 학습률, 배치 크기, 탈락률, DAG-ERC 레이어 수가 포함됩니다. 3.2에 설명된 ω의 경우 기본적으로 전체 성능 비교를 위해 ω = 1로 설정하지만 5.2에서 ω가 1에서 3까지 변하는 결과를 보고합니다.
- 다른 하이퍼파라미터의 경우 모든 은닉 벡터의 크기는 300이고 RoBERTa 추출기의 기능 크기는 1024입니다.
- 각 교육 및 테스트 프로세스는 단일 RTX 2080 Ti GPU에서 실행됩니다.
- 각 훈련 프로세스에는 60개의 Epoch가 포함되며 Epoch당 비용은 최대 50초입니다.
- 구현된 모델의 보고된 결과는 모두 테스트 세트에서 5회의 무작위 실행의 평균 점수를 기반으로 합니다.
4.2 Datasets
4.3 Compared Methods
- We compared our model with the following baselines in our experiments:
- Recurrence-based methods: D
- ialogueRNN (Majumder et al., 2019), DialogRNN-RoBERTa (Ghosal et al., 2020), and COSMIC without external knowledge3 (Ghosal et al., 2020).
- Graph-based methods:
- DialogurGCN (Ghosal et al., 2019), KET (Zhong et al., 2019), DialogXL (Shen et al., 2020) and RGAT (Ishiwatari et al., 2020).
- Feature extractor:
- RoBERTa (Liu et al., 2019).
- Previous models with our extracted features:
- DialogueGCN-RoBERTa, RGAT-RoBERTa and DAGNN (Thost and Chen, 2021) 4 . Ours: DAG-ERC.
5 Results and Analysis
5.1 Overall Performance
6 Conclusion
- 이 논문에서, 우리는 directed acyclic graph (DAG)으로 conversation context을 모델링하는 새로운 아이디어를 소개하고, directed acyclic graph neural network인 DAG-ERC을 ERC에 제안한다.
- 광범위한 실험들이 실행되었고 제안된 DAG-ERC는 베이스라인들과 비교하여 경쟁력있는 성능을 달성한다.
- 더 나아가, 광범위한 평가들과 ablation study에 의해, 우리는 우리의 DAG-ERC의 우수함과 모듈들의 임팩트를 확인하였다.
- 경험적 결과로부터 몇 가지 결론을 도출할 수 있다.
- 먼저, 대화들로부터 구축된 DAG 구조들은 DAG-ERC의 성능에 영향을 주고 speaker identity와 positional relation에 대한 제약으로 제안된 DAG 구조는 변형구조들 보다 성능이 좋다.
- 두 번째로, 넓게 활용되는 두 발화가 같은 speaker인지 아닌지의 graph relation type은 mutli-speaker conversations에 충분하지 않다.
- 세 번째로, directed acyclic graph network는 layers가 증가할 때, GNN만큼 쉽게 over-smoothing에서 고통받지 않는다.
- 마지막으로, DAG-ERC가 잘못 판단한 많은 오류는 유사한 감정, neutral 샘플들 및 감정적 변화로 설명될 수 있습니다.
- 이러한 이유는 이전 작업에서 부분적으로 언급되었지만 아직 해결되지 않았으므로 향후 작업에서 추가로 조사할 가치가 있습니다.
Reference
댓글
댓글 쓰기