레플리
글 수 283

2018 Amazon Prize에서 우승한 Gunrock 소셜봇

조회 수 557 추천 수 0 2018.12.26 23:32:00


K-001.png

 

K-002.png

 

K-003.png

 

https://s3.amazonaws.com/dex-microsites-prod/alexaprize/2018/papers/Gunrock.pdf

 

 

 

2018년 Amazon Prize 대회에서 1등한 팀의 논문입니다. 영화, 동물, 스포츠, 게임, 음악 등 여러 주제에 대해서 잡담을 나누는 소셜봇을 만들었습니다. 지금까지 오픈 도메인 대화에 대한 연구가 많이 이루어졌는데, 최근에는 Seq2Seq로 직접 문장을 생성하는 방식이 큰 주목을 받았습니다. 하지만 일관되게 화제를 유지하거나 먼저 질문하는 등 대화를 이끄는 능력이 부족했습니다. 이를 해결하기 위해 딥러닝과 룰베이스의 하이브리드 방법을 적용하였다고 합니다.

 

문장에서 엔터티를 추출하고 어떤 의미인지 인텐트를 파악하는 것은 LSTM이나 CNN 같은 학습으로 구현합니다. 하지만 대화의 흐름을 관리하고 문장을 생성하는건 직접 규칙에 따라 동작하도록 프로그램으로 되어 있습니다.

 

우선 제일 먼저 인터넷에서 정보를 크롤링하여 지식그래프로 저장합니다. 그리고 질문을 하면 문장에서 핵심이 되는 단어들을 인식합니다. 특정 주제를 물어보는지, 이전 대화와 이어지는 말인지, 아니면 다른 화제로 전환을 하는지 의도를 파악합니다. 그 다음 영화, 동물, 스포츠 같은 카테고리로 분류하고 각각 별도로 구현된 토픽 처리 모듈을 실행합니다. 템플릿으로 미리 답변 문장을 만들고 빈칸에 들어가는 내용을 지식그래프에서 찾아 채웁니다.

 

 

 

실험 결과를 보면 영화와 책, 동물에 대한 이야기가 가장 인기가 있습니다. 그리고 유저가 말한 내용을 인정하고 확인하는 말이 상당히 중요하다고 합니다. 다음과 같이 질문에 대한 답변을 하기 전에 먼저 맞장구를 치는 것이 대화에 몰입하는데 도움이 됩니다.

 

챗봇 : "가장 좋아하는 영화배우가 누구야?"
유저 : "톰 행크스"
챗봇 : "아, 그래. 너가 왜 좋아하는지 알겠다. 탁월한 선택인데. 하지만 난 레오나르도 디카프리오가 매력적인 것 같아."

 

 

 

요즘 딥러닝에서도 자연어처리 분야가 많이 발전하고 있습니다. 하지만 화제에 따라 대화를 유지하는 것은 아직까지 학습으로 구현하기가 어렵습니다. 당분간은 이렇게 규칙 기반과 혼합하는 방식이 효과적으로 쓰일 것이라 생각됩니다.

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