Paper Review #1 "Lifelong and Continual Learning Dialogue Systems: Learning during Conversation"

HyojinKo·2022년 6월 29일
0

논문 리뷰

목록 보기
1/2

Author: Bing Liu, Sahisnu Maxumder, Department of Computer Science, University of Illinois at Chicago, USA
_Publish: The Thirth-Fifth AAAI Conference on Artificial Intelligence(AAAI-21)

Source

Introduction

대화 시스템은 Chit-chat systemTask-oriented chatbots 두가지로 나뉜다.
Chit-chat systems(Shang, Lu, and Li 2015; Li et al.2016; Seban et al. 2016)은 완성해야하는 목표가 따로 없이, 다양한 주제에 대해 수다를 떠는 방식으로 사용자의 참여를 유도한다. Task-oriented chatbots(Williams and Young 2007; Wen et al. 2017)은 사용자의 요구에 기반한 task를 완료할 수 있도록 보조해준다.
Alexa, Siri, Google Home, Cortana와 같은 시스템들이 모두 task-oriented chatbot에 해당한다. 이들은 인간의 NL 명령을 받아 어플리케이션에서 실행하는 NLI(Natural Language Interfaces) 방식이다.

챗봇은 현재 많은 어플리케이션에 적용이 되고 있지만 아직까지도 챗봇엔 치명적인 약점들이 존재한다. 챗봇의 훈련을 위해 아직까지도 인간의 수작업이 동반된다. Train data의 label을 지정하거나 rule을 작성하고, KB(Knowledge Base)를 컴파일 하는 것에 수작업이 필요하다. 또한 그럼에도 자연어의 모든 변형을 다루는 것은 불가능하다. 또한 미리 컴파일 된 KB는 실제로 필요로 하는 풍부한 지식을 다룰 수 없다.

따라서 본 논문에서는 offline-trained model이나 미리 컴파일 된 KB에 의존하지 않고, 연속적(Continuously)인 학습을 수행하는 LINC(Lifelong INteractive learning in Conversation)을 제안한다. LINC는 챗봇의 아래 세가지 연속 학습 능력에 집중한다.
(1) 개방형/정보탐색 대화에서의 사실적 지식 학습
(2) 새로운 NL 명령 기반 학습
(3) 사용자로부터의 새로운 대화 능력 학습
LINC는 다중 유저 환경에서, 현재 유저와 다른 유저들 간의 질문이나 상호작용에서 지식을 얻어 빠르고 효과적으로 챗봇에 적용한다. 하지만 이때 end user로부터 배운 지식에 오류가 있을 수 있고, 의도적으로 잘못된 정보를 제공하여 시스템을 속일 수 있다는 단점이 있다.

LINC: Lifelong INteractive Learning in Conversation

기존 Lifelong and Continual Learning은 formal learning or trainingOn-the-job learning 으로 구성되어 있다.
on-the-job learning이란 미지의 것을 발견하고 그것으로 부터 새로운 학습 과제를 생성하며, 사용자나 환경과의 상호작용 및 인간, AI 에이전트의 모방교육을 통해 training 또는 실제 데이터를 수집한다. 또한 점진적으로 새로운 작업을 학습 할 수 있다. 전체 process는 스스로 motivating과 supervising을 즉석에서 수행하는 방식이다.
LINC는 이러한 on-the-job learning을 채택하였다.

LINC는 training data 역시 자동으로 수집한다. 이 과정은
1. 데이터나 정보를 사용자의 발화에서 추출한다
2. agent가 사용자의 발언을 이해하지 못하거나 사용자의 쿼리에 응답하지 못할때, 현재 사용자에게 질문을 하여 실제 데이터를 얻는다.
3. 챗봇이 사용자의 쿼리에 응답하지 못할때 다른 유저에게 질문하여 답을 얻는다.
4. 사용자의 설명을 관찰한다.
으로 구성된다.

기존의 LINC framework는 세가지 주요 요소로 구성되어있다.
1. Interaction Module
대화형 agent의 상호 작용 행동의 모델링 담당.
2. Task Learner
agent가 즉석에서 생성한 현재의 과제 담당.
과거에 학습된 지식과 함께 획득한 지식을 agent의 현재/미래 학습 또는 대화 모델링에
사용할 수 있도록 실제 데이터로부터 학습, 획득한 지식/데이터의 의미 포착 모델 구축
3. Knowledge Store
Task Learner 또는 Interaction Module이 실제 데이터를 현재 및 미래 대화에서
사용할 수 있도록 적절한 표현으로 저장.

본 논문은 이와 같은 기존의 LINC framework에 실시간 지식학습과 사용(Real-time knowledge learning and usage), 평생 및 지속적인 학습 요구(Lifelong and continual learning requirements), 상호 의존성(Mutual dependency)을 추가하여 문제를 극복하였다.

Factual knowledge 학습시의 문제점

앞서 말했듯이, 많은 챗봇들엔 정보검색대화, 관련 응답 생성을 지원하는 등의 활동을 위해 실제 사실을 저장하는 explicit knowledge base(KB)가 존재한다.
기존 접근 방식의 주요 문제 중 하나는 시스템이 배포되면 KB가 수정된다는 것이다. 그러나 현실 세계에선 새로운 지식이 끊임없이 나타날뿐더러 사용자가 원하는 지식을 KB에 모두 담고 있는 것은 불가능하다. 따라서 챗봇이 사용자와의 상호작용으로 스스로 학습 하는 것이 바람직하다. 사용자의 발화나 사용자에게 질문을 하여 정보를 얻는 기존의 방법도 있지만 대화의 주제와 문맥을 이해하고, 상호 참조 해결, 사용자의 발화에서 나타나는 entity/관계 구문의 형태 파악 등의 과제는 해결되지 못하고 있다.

Language Learning in Task-oriented Chatbots

본 논문에서는 다양한 인간과 챗봇의 상호작용 양식을 기반으로 두 가지의 새로운 언어 표현 학습 범위를 구성하였다.
1. 사용자와 multi-turn NL 대화를 통한 학습
기존의 방식대로 사용자가 하나의 명령을 입력하면 봇이 하나의 작업을 수행하는 것이 아니
라, application이 현재 상태에서 수행할 수 있는 NL 설명으로 k개의 예측 작업 목록
을 표시하고, 사용자가 이 중 적절한 옵션을 선택하는 방식이다.
2. 사용자의 데모를 통한 학습
사용자가 의도한대로 NL 명령을 수행하지 못하였을때 사용자는 GUI 또는 원격 제어를 통해
작업을 수행 할 수 있다.

대화 능력 학습

챗봇이 정말 인간과 같은 언어 능력을 갖추기 위해서 대화 능력 학습이 필요하다. 대화 능력은 사용자의 행동 및 선호도 학습. 감정/정서 학습, 상황 인식 대화 모델링을 통해 학습할 수 있다.

결론

본 논문은 챗봇에 continual learning을 도입해 에이전트가 스스로 지식을 얻고, 학습 할 수 있도록 하여 기존 챗봇의 자연어 이해 능력과 KB에 관한 이슈들을 어느정도 해결할 수 있는 모델을 제안하였다.

profile
재밌나?

0개의 댓글