• Innovation through disruptive and scalable technology .
  • Cutting-edge AI research .
  • Accelerating innovations in research and service .
  • We strive for (and achieve) excellence! .
  • “SotA” (State-of-the-Art) .
  • Visual demo of research and service innovation
  • Human. Machine. Experience Together .

사람과 기계가 거침없이 대화하는 세상을 만든다 - Conv. AI Project

2019.11.19


기계가 사람과 대화하려면 무엇이 필요할까요? 우선 사람이 하는 일상적인 말의 의미를 알아들을 수 있어야 합니다. 또 문맥을 파악해 질문에 적절한 대답을 하며 끊김 없이 대화를 이어가는 능력도 필요하겠죠. Conv. AI Project는 머신 러닝을 활용해 인간과 기계 간 자연스러운 대화를 위한 ‘ConvAI 엔진’ 개발에 주력하고 있습니다. 이 엔진은 현재 챗봇을 뛰어넘는 컴봇(Commbot) 즉 대화 로봇에 활용될 예정입니다. 자, 그럼 지금부터 이 대화 엔진을 구성하는 기술과 팀원들의 이야기를 들어볼까요?

(앞줄 왼쪽부터 시계 방향으로) 김태윤 프로젝트 리더, 김형준 님, 김진 님, 이화란 님, 여진영 님, 이진식 님, 전희원 님.

한국어 대화 엔진의 핵심 AI 언어 모델, 코버트

언어를 이해한다는 말은 문장을 전체적으로 해석하고 단어마다 가진 의미와 대화 상황 등을 모두 파악한다는 것을 의미합니다. 특히 채팅 방식으로 기계가 인간과 대화를 이어나가려면 사용자의 표현에 오류가 있더라도 올바른 의미로 인지할 수 있어야 하죠. 예를 들어, 사용자가 “샢폰 주문했는데 언제 와요?”라고 물었을 때 기계는 오타를 인지하고 ‘제가 주문한 새 스마트폰이 언제 집으로 배송될까요?’라고 찰떡같이 알아들어야 그다음 대화가 진행되겠죠. 나아가 이 문장에 대한 자연스러운 답변을 일상적인 말로 풀어낼 수 있어야 합니다. 이를 실현하는 기술을 ‘언어 모델’이라고 부릅니다.


언어 모델의 대표적인 예로 2018년 구글이 개발한 버트(BERT)가 있습니다. 그러나 해외 개발자들이 만든 버트는 한국어의 불규칙한 언어 특성을 이해하기에는 한계가 있었죠. 바로 이것이 우리 회사에서 한국어를 이해하는 AI 언어 모델 코버트(KoBERT)를 만든 이유입니다. 코버트는 웹에 실린 뉴스와 사전 등을 통해 수백만 개의 한국어 문장을 학습했습니다. 전희원 님은 코버트의 정확성을 자신합니다. “코버트는 오타와 잘못된 띄어쓰기를 인지함은 물론 대화의 흐름을 통해 문맥상 가리키는 단어를 정확히 이해해요. 그 정도로 정교한 언어 모델이죠. 정확도가 높다 보니 다른 분야의 챗봇에도 쉽게 활용될 수 있고요.” 실제로 현재 코버트는 우리 회사 콜센터의 챗봇 서비스뿐만 아니라 법무 및 특허 관련 AI 검색 서비스 등에 활용되고 있습니다. 또 이와 관련한 응용 기술을 특허로 출원하기도 했죠. 나아가 우리 회사 내부의 방대한 마케팅 자료를 분석하고 정확한 답변을 추려내는 핵심적인 언어 모델로 사용되고 있습니다.

지난 한글날을 기념해 Conv. AI Project가 개발자 전용 플랫폼인 깃허브에 코버트를 공개한 이후 불과 1주일 만에 200여 명의 지지를 받을 정도로 반응이 뜨거웠습니다. 자세한 내용이 궁금하신 분은 여기를 클릭해주세요.

사용자의 질문에 신속 정확한 답변을 제공하는 비결, 섬비티

섬비티(SUMBT, Slot-Utterance Matching for Universal and Scalable Belief Tracking)는 사람과 기계 간 대화의 맥락을 파악해 말을 이어가는 기술입니다. 예를 들어 사용자가 음식점을 추천받는 상황을 살펴봅시다. 기계가 사용자에게 “어떤 종류의 음식을 먹고 싶나요?”라고 질문하자 사용자는 “적당한 가격의 유럽 음식”이라고 답했습니다. 이 답변에서 기계는 ‘음식점’과 ‘가격대’라는 항목을 캐치해 해당 항목별로 가장 적합한 음식점을 검색해줍니다. 기존에는 음식점 추천, 호텔 예약 등 대화 상황이 바뀔 때마다 검색 항목을 계속해서 설정해야 하는 어려움이 있었습니다. 그러나 섬비티 기술을 활용하면 상황별로 미리 정교하게 설정된 항목을 곧바로 적용할 수 있어 더욱 빠르고 정확한 대화가 가능합니다. 이화란 님에 따르면 섬비티를 통해 기계와의 대화 수준을 한층 끌어올릴 수 있었습니다. “섬비티 덕분에 사용자가 화제를 수시로 바꾸더라도 기계가 신속하게 상황을 추적해 이에 맞는 대화를 이어갑니다. 마치 진짜 사람과 이야기를 주고받는 것처럼 말이죠.”

지난 7월 Conv. AI Project는 이탈리아 피렌체에서 열린 2019 ACL(Association for Computational Linguistics)에 참가해 섬비티 관련 논문을 발표했습니다. ACL은 컴퓨터 언어 분야에서 세계적인 위상을 자랑하는 학회입니다.

고객에게 가장 친근한 답변을 전한다, 리트리블 FAQ

우리 회사의 온라인 숍 T world Direct에서도 챗봇 서비스를 제공하고 있습니다. 고객의 질문과 그에 대한 상담원의 답변은 그 자체로 ConvAI 엔진에 훌륭한 학습 데이터가 됩니다. 엔진이 방대한 데이터를 학습하다 보면 자연스럽게 질문에 해당하는 답변의 패턴을 파악하게 마련이니까요. 그리고 이를 언제든 가져다 쓸 수 있도록 프로그램을 짜둔다면 고객에게 더욱 빠르게 정보를 제공하는 데 도움이 되겠죠? 이를 가능케 한 기술이 바로 리트리블 FAQ(Retrieval FAQ)입니다. 쉽게 말해 자주 묻는 질문과 답변을 도출하는 기술이죠.


실제로 고객이 “새 휴대폰을 수령하러 갈 때 중학생 아들을 보내도 되나요?”라고 물으면 컴봇은 “미성년자 바로픽업 구매 시 신분증과 가족관계증명서를 지참해 법정대리인(부모님)께서 동행해주셔야 합니다~”라고 안내합니다. ‘중학생’이라는 키워드를 보고 미성년자임을 파악해 이와 관련한 대리 수령 절차를 알려드리는 것입니다. 이처럼 리트리블 FAQ를 통해 구체적인 답변을 직관적이고 신속하게 제공할 수 있습니다. 리트리블 FAQ 또한 섬비티와 같이 컴봇을 ‘진짜 사람’처럼 만드는 기술이라고 볼 수 있죠.


두 화자 중 누가 사람이고, 누가 기계인지 분간이 되시나요? 이처럼 리트리블 FAQ를 통해 실제로 사람과 대화하는 것 같은 상담 서비스를 제공할 수 있습니다.

이미 Conv. AI Project의 리트리블 FAQ 기술은 세계적으로 인정받았습니다. 바로 지난 10월 열린 DSTC8에서 우수한 성적을 거둔 것입니다. 2013년 시작된 DSTC(Dialog System Technology Challenges)는 우수한 대화 기술을 선발하는 대회입니다. 그중 ‘질의응답 검색’ 분야는 출전 팀의 프로그램이 대회의 출제 문제로 주어진 대화 문장을 학습하고 100개의 선택지 중 가장 알맞은 답변을 고르는 방식으로 진행합니다.


Conv. AI Project는 이 리트리블 FAQ 기술에 기반한 프로그램을 활용해 DSTC8 ‘질의응답 검색’ 분야에서 2위를 기록했습니다.


DCTC8에 출제된 실제 문제입니다. 참여 방식은 문맥(Context)을 보고 아래 나열된 100개의 응답 후보 중 가장 적합한 답을 고르는 프로그램을 만드는 것입니다.

시너지의 중심은 자유로운 소통에 있다

Conv. AI Project는 매트릭스 조직의 모범을 보여줍니다. 팀원 한 명 한 명이 앞서 언급한 모든 프로젝트 개발에 참여할 뿐 아니라 각종 문제에 대처할 수 있는 역량을 갖춰 그때그때 유연하게 대응해나갑니다. 그런데 아무리 뛰어난 개인이 모인 팀도 팀워크가 뒷받침되지 않으면 제힘을 발휘할 수 없겠죠? 따라서 팀을 이끄는 김태윤 프로젝트 리더가 평소 팀원에게 가장 강조하는 것은 다름 아닌 ‘자유로운 분위기 속에서 소통을 지속하는 것’입니다. “코드 리뷰부터 소프트웨어 진행 상황 점검, 오류 추적까지 팀원 간 서로 확인해줄 부분이 아주 많습니다. 저희는 사내 소프트웨어 개발 시스템인 지라(JIRA), 빗버켓(Bitbucket), 젠킨스(Jenkins) 등을 활용해 서로의 코딩 내용을 봐 줘요. 또 끊임없이 엔진을 정교하게 다듬기 위해 수시로 회의를 열어 의견을 모읍니다.” 인간과 소통하는 기계를 만들려면 우선 인간과 인간의 원활한 소통이 필수적인 셈입니다.

지금도 우리 회사의 ConvAI 엔진은 계속해서 방대한 텍스트를 흡수하며 정교해지고 있습니다. 이제는 기계와의 대화가 어느 정도 가능해져 텍스트 데이터가 있는 곳에 차근차근 적용해보기 시작한 단계입니다. 이러한 엔진을 개발한 Conv. AI Project 구성원은 기계와의 대화가 필요한 곳이라면 어디라도 엔진을 활용할 준비가 돼 있습니다. 덕분에 기계와 마주 앉아 두런두런 대화를 나눌 날이 머지않은 것 같습니다.