Dialog Act(DA)는 대화 내에서 문장의 의도를 파악하기 위한 것으로, 그 문장이 전체 대화 내에서 어떤 역할을 하는지 표현해준다. 검색해보니 관연 연구가 90년대부터 많이 진행되어 왔던것 같다. 문장을 분류하기 위한 용어도 각 연구별로 천차만별이다.

1. SWBD-DAMSL

1997년에 Coders Manual에서 정한 SWBD-DAMSL이란것이 있는데, DA를 아래와 같이 43개로 나누었다. 19만개 문장을 일일이 보고 만들었다는데, 저곳이 가보면 알겠지만, 몇개를 제외하곤 빈도가 1% 미만인 항목이 거의 대부분이다. 너무 세분화되었다는 느낌을 받는다. 이름도 Switchboard 어쩌고 하는걸 보면, 전화로 오가는 대화를 녹취하여 분석하고 만든듯. nltk에서도 샘플로 제공하고 있으니 사용 가능하다.

SWBD-DAMSL SWBD Example
Statement-non-opinion sd Me, I'm in the legal department.
Acknowledge (Backchannel) b Uh-huh.
Statement-opinion sv I think it's great
Agree/Accept aa That's exactly it.
Abandoned or Turn-Exit % - So, -
Appreciation ba I can imagine.
Yes-No-Question qy Do you have to have any special training?
Non-verbal x [Laughter], [Throat_clearing]
Yes answers ny Yes.
Conventional-closing fc Well, it's been nice talking to you.
Uninterpretable % But, uh, yeah
Wh-Question qw Well, how old are you?
No answers nn No.
Response Acknowledgement bk Oh, okay.
Hedge h I don't know if I'm making any sense or not.
Declarative Yes-No-Question qy^d So you can afford to get a house?
Other o,fo,bc,by,fw Well give me a break, you know.
Backchannel in question form bh Is that right?
Quotation ^q You can't be pregnant and have cats
Summarize/reformulate bf Oh, you mean you switched schools for the kids.
Affirmative non-yes answers na,ny^e It is.
Action-directive ad Why don't you go first
Collaborative Completion ^2 Who aren't contributing.
Repeat-phrase b^m Oh, fajitas
Open-Question qo How about you?
Rhetorical-Questions qh Who would steal a newspaper?
Hold before answer/agreement ^h I'm drawing a blank.
Reject ar Well, no
Negative non-no answers ng,nn^e Uh, not a whole lot.
Signal-non-understanding br Excuse me?
Other answers no I don't know
Conventional-opening fp How are you?
Or-Clause qrr or is it more of a company?
Dispreferred answers arp,nd Well, not so much that.
3rd-party-talk t3 My goodness, Diane, get down from there.
Offers, Options Commits oo,cc,co I'll have to check that out
Self-talk t1 What's the word I'm looking for
Downplayer bd That's all right.
Maybe/Accept-part aap/am Something like that
Tag-Question ^g Right?
Declarative Wh-Question qw^d You are what kind of buff?
Apology fa I'm sorry.
Thanking ft Hey thanks a lot

2. Cambridge dialogue act schema

Dialog State Tracking Challenge (DSTC2 Handbook, Pg 19) 에서도 DA를 정의하였다. 여기선 14개로 항목을 분류한 것으로 보이는데, 위 43개의 항목보단 좀더 실제적인듯.

  • AFFIRM
  • CANT_UNDERSTAND
  • CONFIRM
  • INFORM
  • GOOD_BYE
  • GREETING
  • NEGATE
  • OTHER
  • NOTIFY_FAILURE
  • NOTIFY_SUCCESS
  • OFFER
  • REQUEST
  • REQUEST_ALTS
  • SELECT
  • THANK_YOU

3. VERBMOBIL

VERBMOBIL에서는 DA를 아래와 같이 18개로 분류하여 사용한다. 역시 43개보단 좀더 실제로 사용이 가능한듯 하다.

Tag Example
THANK Thanks
GREET Hello Dan
INTRODUCE It’s me again
BYE Alright bye
REQUEST-COMMENT How does that look?
SUGGEST from thirteenth through seventeenth June
REJECT No Friday I’m booked all day
ACCEPT Saturday sounds fine,
REQUEST-SUGGEST What is a good day of the week for you?
INIT I wanted to make an appointment with you
GIVE REASON Because I have meetings all afternoon
FEEDBACK Okay
DELIBERATE Let me check my calendar here
CONFIRM Okay, that would be wonderful
CLARIFY Okay, do you mean Tuesday the 23rd?
DIGRESS [we could meet for lunch] and eat lots of ice cream
MOTIVATE We should go to visit our subsidiary in Munich
GARBAGE Oops, I

4. Maptask

Maptask에서는 DA를 12개로 분류한다. 이곳에선 move tag라고 얘기하는듯

Tag Example
INSTRUCT Go round, ehm horizontally underneath diamond mine
EXPLAIN I don’t have a ravine
ALIGN Okay?
CHECK So going down to Indian Country?
QUERY-YN Have you got the graveyard written down?
QUERY-W In where?
ACKNOWLEDGE Okay
CLARIFY you want to go... diagonally  Diagonally down
REPLY-Y I do.
REPLY-N No, I don’t
REPLY-W {And acrossto?} The pyramid.
READY Ok

이외에도 DA에 대한 많은 분류 방법들이 존재한다. 하지만 결국 저걸 사용해서 분류기를 만들거나 해야 하므로, 잘 정리된 데이터셋을 갖추는게 더 중요한듯.


참고링크