레플리
글 수 283


 

https://medium.com/huggingface/how-to-build-a-state-of-the-art-conversational-ai-with-transfer-learning-2d818ac26313

 

 

 

일상대화 챗봇을 만들 때 가장 어려운 점은 페르소나에 맞게 일관성을 유지하는 것입니다. 예를 들어, 여러 사람의 다이얼로그로 구성된 데이터를 딥러닝 모델로 구현했다고 생각해보겠습니다. 학습이 잘 되었다면 문장과 문장 사이의 문맥은 어느정도 이어집니다. 하지만 방금은 남자였다가 지금은 여자라고 하는 등 하나의 인격을 보여주지 못합니다.

 

NIPS 2018에서 ConvAI2라는 대회가 열렸습니다. 아래와 같이 페르소나에 대한 문장들이 주어집니다. 그러면 거기에 맞게 대화를 이어가는 챗봇을 만들어야 합니다.

 

< Persona >
I am an artist
I have four children
I recently got a cat
I enjoy walking for exercise
I love watching Game of Thrones

< Dialog >
A : Hi
B : Hello! How are you today?
A : I am good thank you, how are you
B : My children and I are watching Game of Thrones

 

 

 

이 대회에서 Hugging Face가 1위를 차지했는데, 자세한 구현방법과 소스코드를 공개했습니다. 우선 사전훈련된 GPT 모델을 가져옵니다. 그리고 페르소나 데이터셋으로 전이학습을 하여 파인튜닝합니다. 언어모델인 GPT에 맞게 입력은 (페르소나 문장들+다이얼로그 ABAB...)가 순서대로 들어갑니다. 출력은 바로 다음 단어가 됩니다. 이 출력 단어를 다시 입력의 끝에 붙여서 넣고, 계속 반복하여 문장을 생성합니다.

 

https://convai.huggingface.co/

 

위의 링크에서 직접 테스트를 해보실 수 있습니다. 랜덤하게 페르소나를 선택하면, 그에 따라 챗봇이 대답을 합니다. 밑의 decoder settings가 High면 최대한 정확하게 문장을 만듭니다. 반대로 Low일 경우 좀 더 다양하게 답변이 나옵니다.

엮인글 :
List of Articles
제목 글쓴이 날짜sort 조회 수
소설을 생성하는 NarrativeKoGPT2 file 깊은바다 2020-06-19 2195
주석을 프로그램으로 변환하는 GPT 모델 깊은바다 2020-06-21 480
KoGPT2를 파인튜닝하여 만든 챗봇 깊은바다 2020-06-23 3519
오픈소스 한국어 딥러닝 챗봇 - Kochat 깊은바다 2020-07-03 2501
GPT2에서 문장 생성 시 단어를 확률에 따라 선택하는 방법 깊은바다 2020-07-16 2202
GPT3로 하는 리액트 프로그래밍 file 깊은바다 2020-07-19 769
네이버 뉴스 댓글로 사전훈련한 구어체 모델 - KcBERT 깊은바다 2020-07-20 814
GPT3 튜링 테스트 깊은바다 2020-07-23 668
GPT3가 상식을 가지고 있을까 깊은바다 2020-07-24 741
KoGPT2, KoBERT, KoELECTRA로 만든 심리상담 챗봇 file 깊은바다 2020-08-05 6361
한국어로 대화하는 생성 모델의 학습을 위한 여정 - Transformer와 GPT2 깊은바다 2020-08-13 3565
그림으로 아주 쉽게 설명한, The Illustrated GPT-2 깊은바다 2020-08-15 2777
GPT-3의 다섯 가지 한계 깊은바다 2020-08-23 1050
GPT3 유료화 가격 공개 file 깊은바다 2020-09-04 1748
GPT-3 패러다임을 바꿀 미친 성능의 인공지능 등장 및 활용 사례 10가지 깊은바다 2020-09-14 799