레플리
글 수 283

페이스북의 일상대화 딥러닝 모델 - BlenderBot

조회 수 948 추천 수 0 2020.05.01 03:05:23


K-001.png

 

https://ai.facebook.com/blog/state-of-the-art-open-source-chatbot/

 

 

 

올해 초에 구글이 딥러닝 일상대화 챗봇인 Meena를 발표했습니다. 어제 이를 능가하는 새로운 모델이 공개되었습니다. 바로 페이스북의 BlenderBot입니다. 우선 파라미터가 Meena의 2.6B에서 3배 늘어난 9.4B입니다. 또한 사람의 평가 결과, '더 오래 얘기하고 싶음'과 '더 인간 같음'의 측면에서 훨씬 좋은 점수를 받았습니다. 현재 Meena의 소스 코드를 구할 수 없어서 대화 로그만 가지고 비교를 했습니다.

 

모델의 구조에서도 큰 차이가 있습니다. Meena는 트랜스포머 Seq2Seq로 대화 히스토리를 입력받아 문장을 생성하는 단순한 방식입니다. 반면에 BlenderBot는 이름 그대로 3가지의 특성을 조합했습니다. 그동안 페이스북에서 독립적으로 연구하던 모델들을 하나로 합쳤다고 보면 됩니다.

 

첫째, 성격입니다. 페르소나 문장들이 미리 주어지면 거기에 맞게 대화합니다. 둘째, 공감입니다. 감정적으로 같이 기뻐하거나 슬퍼해주는 대답을 합니다. 셋째, 지식입니다. 위키피디아에서 검색을 하여 세부적인 정보를 알려줍니다.

 

먼저 Retriever에서 3개의 모델을 검색하여 각각 최고 답변들을 선택합니다. 이는 데이터셋에 있는 사람이 직접 작성한 문장들입니다(지식 모델은 위키피디아의 글을 추출). 그다음 이 답변들을 하나로 묶어 Generator에 넣고 문장을 생성합니다. 이렇게 하면 Seq2Seq만 사용한 것보다 훨씬 생생하고 구체적인 답변을 할 수 있습니다.

 

 

 

아래 Colab에서 직접 실행이 가능합니다. 90M, 2.7B, 9.4B의 파라미터를 선택할 수 있습니다. 다만 가장 큰 모델은 GPU 메모리가 부족해서인지 에러가 납니다. 얼마 전 소개해드린 MS의 DialoGPT는 같은 말을 반복하거나 대답이 짧은 편이었습니다. 하지만 BlenderBot는 거의 막힘없이 대화가 이어졌습니다. 지금까지 제가 해본 딥러닝 일상대화 중에서 최고였습니다. 또한 '미국의 대통령이 누구야', '그 사람의 나이는?' 같이 정보검색과 문맥처리도 뛰어났습니다.

 

작년부터 딥러닝 자연어처리가 급격하게 발전하는 느낌입니다. 물론 아직 부족한 부분이 많지만, 거의 상용화 수준까지 도달한 것 같습니다. 몇년 안에 딥러닝으로 문장을 생성하는 챗봇이 일상화될지도 모르겠습니다.

 

 

 

< Colab 테스트 >

-> https://colab.research.google.com/…/1Pu4nt4o6hyI6g-OdAr9zeZ…

List of Articles
제목 글쓴이 날짜sort 조회 수
글쓰는 법을 배우는 신경망 깊은바다 2016-03-25 1538
구글의 딥러닝 대화 알고리즘 깊은바다 2016-03-25 3356
딥러닝으로 챗봇 만들기 깊은바다 2017-05-03 3172
단어를 벡터로 변환하는 Word2Vec 깊은바다 2017-05-04 1039
추론이 가능한 딥러닝인 Relational Networks [2] 깊은바다 2017-06-11 2740
딥러닝 RNN으로 구현한 챗봇 깊은바다 2017-08-01 8135
End-To-End Memory Networks - 자연어 질문에 대답하는 모델 [2] 깊은바다 2017-08-21 962
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용 깊은바다 2017-08-25 2582
문장을 학습하는 딥러닝 RNN의 Seq2Seq 모델 설명 file 깊은바다 2017-09-15 7327
딥러닝 기반 자연어처리 기법의 최근 연구 동향 [2] 깊은바다 2017-12-17 1020
쉽게 씌어진 Word2Vec [2] 깊은바다 2017-12-25 1178
구글 딥러닝 자연어 처리 오픈소스 SyntaxNet file 깊은바다 2017-12-28 2784
딥러닝을 사용한 챗봇 개발방법 정리 file 깊은바다 2018-02-03 25439
한국어 자연어처리를 위한 딥러닝 깊은바다 2018-02-14 3650
딥러닝을 사용한 감성분석기 개발 깊은바다 2018-02-22 1658