레플리
글 수 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
BERT를 이용한 챗봇 구현 file 깊은바다 2019-01-07 4113
GPT-3 데모 사이트 - gpt3demo.com 깊은바다 2021-07-13 3707
한국어 자연어처리를 위한 딥러닝 깊은바다 2018-02-14 3652
하이퍼클로바 활용예 및 사용가이드 file 깊은바다 2022-03-05 3570
한국어로 대화하는 생성 모델의 학습을 위한 여정 - Transformer와 GPT2 깊은바다 2020-08-13 3566
KoGPT2를 파인튜닝하여 만든 챗봇 깊은바다 2020-06-23 3527
구글의 딥러닝 대화 알고리즘 깊은바다 2016-03-25 3356
여러 한국어 GPT 모델들 file [1] 봄눈 2021-11-21 3337
네이버 영화 리뷰 감정 분석 깊은바다 2018-09-07 3293
욕설을 찾는 BERT 모델 - Purifier 깊은바다 2019-08-28 3270
딥러닝으로 챗봇 만들기 깊은바다 2017-05-03 3173
네이버의 초거대모델인 하이퍼클로바 사용 후기 깊은바다 2022-02-14 3171
6B 파라미터의 GPT-J_6B 오픈소스 모델 깊은바다 2021-07-01 3149
케라스로 만든 한글 Seq2Seq 챗봇 소스코드 깊은바다 2019-07-13 3091
구글의 Transformer 신경망 모델 [2] 깊은바다 2018-10-13 3022