본문 바로가기
NLP

[NLP] Survey of Chatbot, Persona

by 단깅수 2024. 9. 4.
728x90

1. Personality, Persona, Profile

 

LLM(Large Language Model)와 같은 챗봇 유형의 모델들을 Conversational Agent라고 편하게 CA라고 부르기도 합니다. 그런데 이러한 CA가 답변을 생성하는데 있어 Personality가 중요한 요소라는 사실! 알고 계셨나요?? (일단 저는 몰랐답니다..하하)

 

왜 CA에서 Personality가 중요한가??

  • CA가 특정 성격이나 역할을 부여받는다면 인간과 대화한다기보다 소통하는 느낌을 받는 경향
  • CA가 고유한 성격이나 스타일을 가짐으로써 같은 질문에 대해서도 다양한 방식으로 반응해 CA를 더 독창적이고 매력적이게 할 수 있고 다양한 사용자 요구에 맞출 수 있음
  • CA와 사용자가 더 오래 대화할 수 있도록 유지할 수 있음

 

2020년 등장했던 이루다와 같은 인공지능을 예시로 들 수 있겠죠.

https://www.sedaily.com/NewsView/26DRXIJ72V

 

물론 이루다의 경우 지금은 서비스 중단을 하긴 했지만 그럼에도 불구하고 대화형 에이전트가 고유한 개성이나 성격을 지닌다면 그에 맞는 사용자들의 요구를 충족해줄 수 있기 때문에 더 인기있는 AI가 될 수 있는 거죠.

 

그래서 오늘은 이 내용에 대해 여러 연구들을 찾아보면서 어쩌면 좀 재미없게(ㅜㅜ) 이론적으로 접근해보도록 하겠습니다.


2. Introversion vs Extraversion

"Shumanov and Lester" 이분들은 상업 환경에서 소비자 (사용자) 와 챗봇의 성격이 일치할 때 사용자의 참여도와 구매 행동이 향상되는지를 조사하였습니다. Big5 성격 유형 중 특히 내향성 vs 외향성에 집중하였습니다.

분석 프로세스 및 결과

사용자와 챗봇이 일정 대화를 진행한 후에 사용자가 내향적인지 외향적인지를 판단합니다. 챗봇의 성격은 무작위로 내향적인지 외향적인지 선정되구요. 대화의 주제는 주로 모바일 폰에 관한 문의사항입니다. 예를 들어, 충전 크레딧, 계좌 잔액, 금액 청구와 같은 키워드말이죠. 충전 서비스 구매 수와 챗봇 사용시간 등으로 분석해본 결과 사용자와 챗봇의 성격이 일치하면 사용자의 참여와 구매 행동이 개선될 수 있다는 결과를 도출하였습니다. 신기하죠.

 

→ 상업적 챗봇 설계에 있어서 사용자와 챗봇 간 성격 일치가 중요하다는 점을 시사하고 있는 재미있는 연구였습니다.


3. Big-5 & OCEAN 연구

이 부분에 대한 연구는 사실 많이 있었지만 이번에는 "Xing, Fernández" 분들의 연구에 대해 소개해보려고 합니다.

 

본 연구의 목적은 사람의 성격 유형에 따라 답변을 생성하고 OCEAN 성격 모델에 기반해 답변이 얼마나 성격적 특성을 잘 반영하는지를 평가하는 것이었습니다. 일단 기본적으로 S2S 모델을 활용해 2가지 모델을 다르게 모델링합니다.

  • Speaker Model : 특정 화자의 스타일에 맞춘 응답 생성
  • Personality Model : OCEAN 성격 모델에 기반해 성격 유형에 따라 응답 생성

 

위에서 설명한 두 모델을 가지고 답변을 생성하는데 이 답변은 Mairesse et al.의 성격 인식기를 활용해 답변이 얼마나 성격 특성을 잘 반영하는지 평가합니다. 평가 과정에서 좀 특이한 부분은 흔히 발생하는 일반적인 응답을 제거해 성격 특성에 따른 스타일 차이를 집중적으로 평가하였다고 합니다.

 

데이터셋은 주로 미국 영화 "Friend"와 "The Big Bang Theory" 시리즈의 대본을 토대로 만들었습니다. 각 캐릭터의 Personality를 기반으로 데이터셋을 구축하고 13명의 캐릭터에 대해 약 86,000개의 문맥-응답 쌍 데이터셋을 생성하였습니다. 추가로 "OpenSubtitle Dataset"도 활용했는데, 이 데이터는 영화 자막으로 구성된 대규모 오픈 도메인 대화 데이터셋으로 180만쌍의 문맥-응답 쌍으로 구성되어 있습니다.

 

결론적으로 LLM은 성격에 의한 스타일 변화를 반영한 응답을 생성할 수 있고 특히, Personality Model은 지금까지 등장하지 않은 새로운 성격 유형에 대한 응답도 생성할 수 있어 확장가능성이 높다고 평가하였답니다. 주로 멀티모달 Task에서 쓰이는 제로샷, 일반화 성능이 높다는 의미와 비슷하겠죠.

 

이 연구에 대해 더 궁금하신 분들은 아래 링크 참고해주시길 바랍니다.

[1810.00472] Automatic Evaluation of Neural Personality-based Chatbots (arxiv.org)

 

Automatic Evaluation of Neural Personality-based Chatbots

Stylistic variation is critical to render the utterances generated by conversational agents natural and engaging. In this paper, we focus on sequence-to-sequence models for open-domain dialogue response generation and propose a new method to evaluate the e

arxiv.org


4. Traits and Tropes

자, 여기서 Traits와 Trope에 대해 용어가 생소하실 분들을 위해 알려드리자면

 

- Traits = 특성

- Trope = 문채 (?)

 

구글에 검색하니까 Trope를 문채로 알려주더라구요. 하지만 우리에게 필요한건 Character Trope입니다.

Character Trope는 쉽게 말해서 캐릭터 특성을 설명할 수 있는 간단한 문구라고 보시면 되겠습니다.

예를 들어 영웅, 전사, 언더독, 광대 등등 단어 형태도 되고 미워할 수 없는 고양이, 비열한 영웅, 구원의 마왕 등 구(Phrase)의 형태도 가능하답니다.

 

추가적인 example에 대해 궁금하신 분들은 아래 링크 이용해주시면 되겠습니다.

https://thescriptlab.com/blogs/40182-101-character-tropes/

 

101 Character Tropes All Screenwriters Should Know - The Script Lab

Study 101 character tropes that all screenwriters should know, complete with movie and television character examples of each.

thescriptlab.com

 

 자, 아무튼 이번 섹션에서는  " Shuster et al."님께서 진행하신 Image Chat 연구에 대해 알려드리려고 해요. 이 연구의 목적은 이미지를 기반으로 한 대화 시스템을 개발하는 방법을 연구하는 겁니다. 특히 대화에서 스타일 특성을 반영해 감정이나 성격이 담긴 대화를 생성하는 LLM을 제안합니다.

 

그래서 본 저자들은 LLM이 대화에서 스타일 특성을 반영해 감정, 성격 등이 드러나도록 대화를 생성하는 모델을 제안하고 Image Chat Dataset을 새롭게 소개합니다.  

 

여기서 스타일 특성이란?

  • 대화의 톤, 문체, 표현방식(이모지, 강조, 은유 등)과 같은 언어적 특성을 의미
  • 예를 들어, 친근한 스타일, 딱딱한 스타일, 유머러스한 스타일 등이 있겠죠

 연구에 대한 설명을 이어가자면, 2가지 모델로 나누어서 개발했습니다. Retrieval Model, Generative Model로 나누어서 말이죠. Image Encoder는 Resnet, Text Encoder는 Transformer를 사용했다고 합니다.

  • Retrieval Model : 이미지, 스타일, 대화 문맥을 입력으로 받아 미리 준비된 답변 중 가장 적합한 응답 선택 (인코더)
  • Generative Model : 이미지, 스타일, 대화 문맥을 바탕으로 새로운 대화 생성 (디코더)

데이터셋은 Image Chat Dataset으로 202,000개의 이미지와 이에 기반한 발화 401,000개가 포함된 데이터셋이고 각 대화는 특정 스타일이 부여된 상태입니다. 이 데이터셋을 구성할 때 이미지는 YFCC100M 데이터셋에서 무작위로 선택했고 기존 Reddit 데이터셋에서 17억쌍 대화 데이터로 Pretrained 후 Image Chat 데이터셋으로 파인튜닝을 진행했다고 하네요.

 

그래서 결론적으로 이미지와 결합한 멀티모달 LLM에서 인간과 유사한 수준의 대화 품질을 생성할 수 있게 되고 특히 Retrieval Model에서 높은 성능을 보였다고 합니다. 근데 어찌보면 당연히 이미 존재하는 응답에서 답변을 검색하는 것이 새로운 응답을 생성하는 것보다 빠르고 정확할 수밖에 없지 않을까 싶긴 합니다.

 

자, 그래서 오늘은 LLM 입장에서 바라본 Personality에 대해 이야기해보았는데요. 쓰다보니까 논문리뷰처럼 되긴 했지만.. 그래도 LLM 이야기이기 때문에 NLP 라고 하겠습니다 ~!~!

728x90

'NLP' 카테고리의 다른 글

[NLP] NLP Task Review, 감정분석  (0) 2024.07.11
[NLP] Similarity, 문서 유사도 측정  (0) 2024.07.06
[NLP] Text Data Preprocessing  (0) 2024.07.02
[NLP] 정규 표현식, Regular Expression  (0) 2024.07.01
[NLP] API를 활용한 Web Crawling  (0) 2024.06.29