AIVORY Recommendation Story

img0

Background

콘텐츠를 운영하고 유통하는 서비스를 주력 사업으로 하는 회사들의 가장 깊은 고민은 더 양질의 콘텐츠를 사용자에게 제공하는 것입니다. 물론 이전에도 추천이라는 단어로 포장된 유사 기능이 존재했지만 사실상 광고에 가까운 추천으로 서비스의 신뢰도만 낮추는 효과를 갖곤 했습니다. 그래서 저희는 진정한 추천을 하되 기업에게 비용 부담을 주지 않는 ‘추천 알고리즘’에 대해 연구를 시작했습니다. 흔히 생각하는 YouTube나 넷플릭스의 메인페이지를 넘어 영화 ‘마이너리티 리포트’에서 톰 크루즈가 길을 가는데 홍채를 인식해 톰 크루즈에게 맞는 광고가 나오는 것처럼 세상을 정말 필요한 것들로 채울 수 있을 것이라고 생각했습니다.

img1 영화 [마이너리티 리포트] 갈무리 화면

사실 추천 기술이 가져올 효과가 위의 예시와 같은 광고에만 있었다면 저희의 선택지에서 자연스럽게 제거되었을 것 같습니다. 여러가지의 아이템을 두고 장기적인 전략을 수립하며 가장 중요하다고 생각했던 것이 모두가 공감할 수 있는 비젼이었기 때문에 단편적인 광고나 비용 절감 효과만으로는 선택에 따르는 리스크가 컸습니다. 그렇게 고민하던 중 문화심리학자로 알려진 김정운 교수님의 에디톨로지 강연에서 인간의 뇌가 불필요한 자극을 어떻게 처리하는 지에 대한 이야기를 들으며 불필요한 에너지 낭비조차 하지 않게 해주는 기술 개발이 있다면 어떨까 라는 상상에 도달하였습니다. 예컨데 뉴스의 경우 정치, 사회, 외교, 스포츠 등등 예전의 어떤 사람 또는 조직을 중심으로 나눠놓은 카테고리를 그대로 유지하고 콘텐츠가 분류되는데 이렇게 운영하면 추천하는 방식 역시 카테고리 안에 종속되게 되게 되므로 나는 정치를 보고 스포츠로 넘어가고 싶은 잠재적 욕구가 있음에도 불구하고 정치 뉴스를 추천받고 있어야 됩니다. 쉽게 말해 나는 내 신발에 맞춰서 바지를 고르는데 바지를 샀더니 바지를 또 추천한다거나 이미 있는 신발을 또 추천하는 꼴인 것입니다. 반대로 콘텐츠 작성자는 나의 글을 억지로 분류 기법에 맞추어 나눠 넣기 위해 글의 맥락이나 주제를 흐리게 되는데 마치 관리를 위한 관리를 하고 자율성을 해치며 틀에 가두는 것입니다. 저희는 결과적으로 저희가 개발하고자 하는 기술이 틀에 갇히지 않은 지식을 생산하고 지식을 갈구하는 사람과의 연결이 곧 더 가치있는 연결이 될 것이라고 믿으며 추천 기술을 개발하기로 결정했습니다.

Concept

초기 연구를 위해 선행연구를 조사하던 중 당시 학계에서 큰 관심을 불러모았던 아타리 게임을 하는 심층 강화 학습(Deep Reinforcement Learning) [^1]컨셉을 차용하려고 노력했습니다. 그러다보니 자연스럽게 ‘보상’이라는 개념에 더 집중하게 되었고 해당 콘텐츠에 대한 가점을 부여하기 위한 알고리즘을 만들려고 했습니다. 물론 이 배점 시스템은 보편적인 시스템에 적용되기 위해 특정 시스템에서만 작동하는 것이 아닌 General한 수준으로 접근할 필요가 있어 Parameter로 시스템 관리자가 설정할 수 있게끔 구성하였습니다. 그리고 이 배점들을 토대로 특정 콘텐츠의 우선 순위를 메기는 기준을 삼았습니다. 그리고 콘텐츠 상호 인용과 참조로 연결된 임의의 묶음에 적용하는 PageRank[^2]와 달리 상호 인용과 참조가 없는 대부분의 콘텐츠를 고려한 특수한 전제조건을 수립하기 위한 연구를 시작했습니다.

추천은 결국 유사한 문서나 비슷한 주제를 갖는 콘텐츠 중심이 아닌 사용자 중심(User centered)의 추천이 되어야 한다고 생각했고 이를 위해 사용자를 중심으로 콘텐츠를 연결시키고 네트워크를 구성하여 추천하는 로직(Logic)을 만들어보기로 했습니다. 이를 위해 저희는 복잡계 네트워크[^3]에 대해 공부하기 시작했으며 사물이 아닌 콘텐츠를 중심으로 네트워크를 연결하고 규칙성을 찾기 위한 연구를 시작했습니다.

img2 복잡계 네트워크 연결 개념도

이러한 연구를 수행하며 네트워크 안에서 동일한 패턴을 갖는 사용자는 극도로 적어진다는 것을 알 수 있었으며 시스템의 규모에 따라 그 수가 늘 수 있지만 대부분의 경우 3단계의 연결점을 끝으로 다른 패턴으로 이어진다는 것을 알 수 있었습니다. 반대로 3단계를 초과하는 구성을 하는 경우 동일한 사용자가 있을 수는 있지만 추천의 복잡도가 높아져 속도가 느려지고 추천되는 콘텐츠의 수가 기하급수적으로 줄어드는 현상을 발견했습니다. 최종적으로 해당 단계의 구분을 위해 자체 평가단을 구성하여 실험을 한 결과 특정 단계로 줄이는 것이 의미있다는 것을 확인했으며 콘텐츠와 사용자 양쪽을 각각의 집단으로 구분하는 군집화가 적용되어도 양질의 추천을 모두 할 수 있다는 것을 알게 되었습니다. 그리고 이는 곧 길찾기를 했을 때 실시간 교통상황을 파악하는 듯 사람들의 트렌드까지 반영할 수 있다는 것을 알 수 있었습니다. 저희는 곧바로 여기까지 연구한 내용들을 토대로 특허[^4]에 등록하고 제품화를 위한 준비에 돌입하였습니다.

img3 네이버 길찾기 실시간 교통상황 화면

제품화를 진행하며 추가 고도화를 위해 유사한 패턴을 가지는 사람을 찾는 것을 넘어 집단의 멘토가 될 만한 사람을 찾는 일을 하게끔 하는 실험을 하게 되었고 군집 간의 중심을 찾기 위해 GAN을 이용한 군집화 기술을 구현하는 것에 이르게 됩니다. 그리고 우리는 중심이 되는 사용자를 멘토라고 칭하고 멘토의 패턴에 따라 멘티에게 콘텐츠를 추천하는 기술로 AIVORY를 더욱 부드럽고 신박한 추천이 가능하도록 하였습니다. (고도화 부분은 AIVORY 추천 엔진의 진화를 참고해주세요.)

이렇게 구현된 엔진은 결과적으로 ‘사람(멘티)-콘텐츠-주제-사람(멘토)-콘텐츠’의 형태로 연결되는 추천 엔진이 되었으며 이는 결과적으로 가장 뛰어난 사람의 경험을 모방하고 추천하는 것으로 마치 멘토가 멘티에게 멘토링을 해주는 것과 같은 컨셉을 갖게 됩니다. 조금 더 자세하게는 아래와 같은 흐름을 갖게 됩니다.

  1. 사용자의 행동 (검색 혹은 콘텐츠 조회)
  2. 인공지능에게 사용자의 패턴 전달
  3. 인공지능 학습 및 탐색(가장 유사한 선도적인 멘토 탐색 및 모방)
  4. 멘토 콘텐츠 소비 경험 기반 추천 정보 추출
  5. 사용자에게 정보 추천 및 사후 행동 피드백(실시간 재학습)

Result

기술 블로그에 기고하는 글이라 비즈니스 관점에서의 특장점 소개 등은 AIVORY를 소개한 글을 참고해주시길 바랍니다. 이 밖에 기술적인 특장점으로는 AIVORY는 서비스 초기 단계인 콜드 스타트에서도 곧바로 추천이 가능한 알고리즘입니다. 서비스 접근 초기 단계에서부터 바로 멘토를 찾기위한 알고리즘이 작동하므로 기존보다 훨씬 빠른 시간 내에 추천 알고리즘이 작동합니다. 물론 고객의 기초 정보를 설문하거나 입력받지 않아도 됩니다. 이렇게 콜드 스타트를 극복하기 위한 노력을 한다는 것은 빅데이터가 갖춰지지 않았어도 바로 기술 도입이 가능하며 장기적인 축적이 가능하다는 의미이며 오랜 시간동안 운영을 해왔던 서비스부터 이제 곧 런칭하는 서비스까지 다양한 서비스에 적용 가능하다는 장점이 있습니다.

또한 사람과 콘텐츠를 연결하여 다시 콘텐츠를 추천하는 지금의 방식은 초기 데이터 분석을 위한 심층 학습 기술 외에는 학습 데이터를 사용하지 않아도 되는 장점이 있어 워크스테이션급의 장비를 필요로 하거나 데이터 학습을 위한 트래픽 부하를 걱정하지 않아도 됩니다. 또한 실시간으로 학습을 지속하고 있기 때문에 방금 작성한 글이 바로 검색되거나 추천될 수 있는 장점을 갖고 있습니다.

물론 아직도 여러가지 문제들이 지속적으로 도출되고 있으며 저희가 상상했던 것 이상으로 시장에서 사용자들이 활용하는 방식과 더 나은 제품이 되기 위한 수요가 엄청난 속도로 증가하고 있어 더 많은 시간과 노력을 요구하고 있습니다. 하지만 AIVORY는 고객의 제안에 적극적인 대응을 하고 더 좋은 제품으로 거듭나기 위한 노력을 지속하고 있으며 이를 통해 지식과 사람의 가치있는 연결이 더 많은 곳에서 이루어지길 바랍니다.

References

[1] Mnih, Volodymyr, et al. “Playing atari with deep reinforcement learning.” arXiv preprint arXiv:1312.5602(2013).
[2] Page, Lawrence, et al. The PageRank citation ranking: Bringing order to the web. Stanford InfoLab, 1999.
[3] Visualising Information for Advocacy, Mushon Zer-Aviv, “If everything is a network, nothing is a network”, January 8, 2016
[4] (주)플랜아이, 디지털 정보 제공 시스템 및 방법(System and Method for providing digital information), 1018561150000, filed March 23, 2017, and issued May 02, 2018.

이전글
Flask 서버에 UnitTest 적용하기
Kevin |
다음글
Sketch와 Photoshop의 Zeplin활용
Dorothy |