레플리
글 수 284


 

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
KoGPT2 v2.0 공개 깊은바다 2021-05-03 1589
GPT2로 글을 작성하는 사이트 - StoryAI file 깊은바다 2019-10-11 1582
KoNLPy를 이용하여 Huggingface Transformers 학습하기 깊은바다 2020-09-20 1573
Java에서 Word2vec 사용하기 깊은바다 2018-05-05 1569
글쓰는 법을 배우는 신경망 깊은바다 2016-03-25 1539
딥러닝 자연어처리 라이브러리 - Pororo file 깊은바다 2021-02-03 1529
일상대화 챗봇 레플리카(Replika)의 구현 방식 file 깊은바다 2020-12-22 1510
딥러닝으로 미소녀 챗봇 만들기 깊은바다 2018-06-01 1499
챗봇의 슬롯 채우기(Slot Filling)와 DST(Dialogue State Tracking) file 깊은바다 2021-08-19 1476
GPT-3로 NPC와 대화를 할 수 있는 게임 시뮬레이터 깊은바다 2021-02-22 1464
문장의 유사성을 예측하고 평가하는 AI - 카카오 심슨 깊은바다 2019-03-20 1462
GPT가 스스로 계획을 세워서 실행한다면 - AutoGPT와 LangChain file 깊은바다 2023-04-18 1454
한국어 형태소 분석기 성능 비교 - khaiii 깊은바다 2018-12-10 1447
글자, 사진, 영상을 동시에 처리하는 딥마인드의 딥러닝 모델 - Flamingo file 깊은바다 2022-05-10 1437
문장을 사진으로 변환하는 StackGAN [1] 깊은바다 2018-09-17 1435