일상대화 챗봇인 핑퐁의 최신 기술을 다룬 발표 자료입니다. 핑퐁을 만든 스캐터랩은 사용자의 카톡 대화를 받아 분석하여 알려주는 서비스를 운영하였습니다. 여기서 수집한 데이터를 가지고 핑퐁의 인공지능을 구현하였습니다.
가장 대표적인 것이 Reaction 모델입니다. 전체 대답을 클러스터링하여 1200개의 클래스로 구분합니다. 그래서 어떤 입력이 들어와도 거기에 맞는 적당한 답변을 할 수 있습니다. 다만 너무 일반적인 대답이다 보니, 문장이 짧고 구체적인 내용이 없다는 단점이 있습니다. 그렇다고 클래스를 무작정 늘리는 것은 부담이 됩니다.
이를 보완하기 위해 Reply Retrieval Model을 새로 추가하였습니다. 두 입력이 주어졌을 때 서로 이어지는 문장인지 판별하는 역할을 합니다. 먼저 카톡 대화셋을 통해 학습을 수행하고, Reaction과 별도로 특정 영역의 답변셋을 작성합니다. 그다음 사용자가 문장을 입력하면 RRM으로 가장 잘 이어지는 대답을 찾습니다.
< Reaction >
질문 : 짜장면 먹고 싶다
답변 : 나도 배고파 ㅠㅠ
< RRM >
답변셋 목록
- 초밥이 맛있지!
- 탕수육은 어때?
- 불고기 먹으러 가자 ㅎㅎ
질문 : 짜장면 먹고 싶다
답변 : 탕수육은 어때?
위와 같이 리액션은 두리뭉실한 답변이지만, RRM은 좀 더 구체적인 내용이 가능합니다. 먼저 RRM으로 알맞은 문장을 찾고, 없으면 리액션으로 적당히 대답합니다. 이렇게 두 가지 모델을 동시에 사용하면 훨씬 그럴듯한 대화를 할 수 있습니다.
개인적으로 국내에서 일상대화 능력이 가장 높은 챗봇은 역시 핑퐁이 아닐까 생각합니다. 우선 이렇게 방대한 대화 데이터를 가진 곳이 거의 없습니다. 그래서 다른 곳에서 쉽게 따라하기 어렵다는 허들이 있습니다. 앞으로 멀티턴 같은 새로운 기능들이 계속 추가되기를 기대해 봅니다.
< 발표 동영상 >