자연어처리(NLP)/RS(Response Selection)

[NLP][RS] Response Selection 이란? (Retrieval-based dialogue system)

Hyen4110 2022. 12. 28. 15:12

Response Selection 이란?

'대화' 라는 것을 무엇으로 정의할 것인가? 라고 했을 때 그 답변에 따라 여러가지 패러다임이 존재하지만,
response selection는 현재 발화(utterance)에 대한 다음 발화(response)를 선택한다는 점에 초점을 두고 모델링을 한다고 할 수 있습니다.

논문에 나와있는 설명을 더하자면, "검색 기반 대화 시스템(Retrieval-based dialogue system)" 에서는 지난 대화 기록(history)이 주어졌을 때, 발화자의 발화(utterance)를 입력하여 가장 적당한 답변을 선택하는 대화 작업을 수행합니다. 이것이 "애드-혹 검색(ad-hoc retrieval)" 태스크로 분류된다면, "각각의 발화를 query로 취급하여 이 query representation과 후보 답변들을 인코딩한 것과의 의미적 유사도를 계산하여 많은 후보 답변들 중에서 query와 관련이 높은 답변을 추출한다."고 설명할 수 있습니다. 이러한 일련의 태스크를 "Response Selection"이라고 부릅니다.

[논문] Training Neural Response Selection for Task-Oriented Dialogue Systems

 


Response Selection의 장점

"대화 = Response Selection" 으로 공식화한다는 것은 기존의 '데이터 기반의 패러다임'과는 크게 4가지 점에서 차이점이 있습니다.

1. response selection은 체계적인 도메인 지식을 구축하지 않아도 됨
해당 도메인 전문가에 의해서 정교하게 작업을해서 도메인 온톨로지와 같은 형식으로 도메인 지식을 녹여 특정 태스크에 특화된 의미를 부여할 필요가 없습니다.

2. response selection은 일반적인 언어 생성 태스크에서 발생하는 어려움을 해결할 필요가 없음
대화 생성 기반의 작업에서는 모델이 학습데이터에 일반화 되어서, 일반적이지만 부적합한 답변들을 생성할 가능성이 높습니다. 예를들어 "I don't know" 또는 "Thanks"와 같은 답변이 이에 해당됩니다.

3. reponse selection 모델의 출력값을 제한하거나 결합하기 용이함

4. 정교한 의사결정 정책 모듈을구축하지 않아도 됨


[3] Response Selection의 단점

"데이터 희소성 (Data Scarcity)"
response selection도 데이터 문제를 피해갈 수 없습니다.
특히 response selection 모델을 학습하기 위해서는 많은 레이블링된 '대화 데이터셋'이 필요합니다.

레이블링 된 대화 데이터셋을 구축하는 것도 문제이지만, 필요한 데이터의 수도 충분해야합니다.
하지만, 최근 언어모델의 등장으로 이미 대용량의 말뭉치로 학습되어
다양한 태스크에서 일반화된 성능이 보장된다는 것을 보여주었습니다.
response selection 모델도 언어모델로부터 일반적인 성능을 보장한 후에
특정한 도메인에 대하여 비교적 적은 데이터를 활용해서 model을 학습할 수 있을 것입니다.

다음 포스팅하고자 하는 논문에서는
이런 response selection 모델을 학습하는데 있어서
아래 두가지 포인트에 초점을 맞추어 연구를 진행했습니다.

🚩 [Pretrain] response selection의 사전학습에 효과적인 인코더는 무엇?
🚩 [Fine-tuning]사전학습된 모델을 어떻게 목표하고자 하는 도메인에 맞는 대화 시스템이 될 수 있도록 파인튜닝할 수있을까?

이 두가지 항목에 대한 실험연구를 진행한 논문에 대해서 리뷰해보도록 하겠습니다.


- 참고자료

[논문] Training Neural Response Selection for Task-Oriented Dialogue Systems