웹툰·웹소설 '키워드 추천'을 개발하며
The post 리디 추천 시스템 Phase 2 – Feature Store 도입기 appeared first on 리디주식회사 RIDI Corporation.
||
리디 추천 시스템
방대한 콘텐츠 사이에서 자신의 취향에 맞는 작품을 찾아내기란 마치 ‘모래사장에서 바늘 찾기’처럼 어려운 일입니다. 취향은 다양하고 복잡하며, 때로 본인조차 잘 모를 정도로 추상적이기에 그렇습니다. 이처럼 작품 탐색 시 몰려드는 피로감은 서비스를 즐기는 데 중대한 장애물로 작용합니다. 개인 맞춤형 추천 시스템이 단순한 옵션을 넘어 필수여야 하는 이유가 바로 여기 있습니다.
넷플릭스는 추천 시스템을 탁월하게 활용하는 대표적인 서비스 사례입니다. 수많은 작품들 중 자신이 좋아할 만한 콘텐츠를 쉽게 발견하고 즐길 수 있도록, 넷플릭스는 메인 홈 화면을 완전히 개인화했습니다. 예상 선호도에 따라 정렬된 섹션과 콘텐츠 덕분에, 사용자는 자신의 취향에 가장 잘 맞는 주제와 작품들을 홈 화면 상단에서 바로 찾을 수 있습니다. 이 밖에도 쿠팡, 인스타그램과 같은 여러 서비스가 더 나은 사용자 경험을 위해 맞춤형 추천 기능을 제공합니다.
Netflix 메인 홈
리디의 추천 시스템 또한 새로운 국면을 맞이하였습니다. 리디에 신규 등록되는 작품 수는 그동안 꾸준히 증가해서 2024년 현재 매달 약 7만 개에 이릅니다. 그 덕분에 더 다양하고 풍부한 독서 경험을 제공하게 됐지만, 동시에 개인별 취향에 맞춘 작품을 추천할 필요성도 대두되었습니다. 결국, 추천 시스템을 업그레이드하는 일은 리디 개발센터가 직면한 주요 도전과제 중 하나로 자리 잡았습니다.
월별 리디 신규 등록 콘텐츠 수
변화하는 독서 환경과 사용자의 기대에 발맞추어, 리디의 데이터 엔지니어링 파트는 추천 시스템의 근본적인 개선을 목표로 삼았습니다. 우선은 데이터 파이프라인과 저장소의 효율성을 극대화하여 추천 시스템 고도화에 필요한 데이터 처리 작업을 최적화할 솔루션이 필요했습니다. 다양한 논의 끝에, 결과적으로 머신러닝 파이프라인을 효율적으로 관리하도록 도와주는 Feature Store 라는 프레임워크를 도입하기로 결정했습니다.
이 글에서는 리디 추천 시스템 Phase 2의 중요한 시작점으로서 Feature Store 도입을 소개합니다. Feature Store 라는 새로운 프레임워크를 도입한 배경, 도입 과정에서 직면한 여러 도전과 해결책, 거기서 얻은 귀중한 통찰을 공유하여 리디의 추천 시스템이 더 다양하고 섬세하게 발전하고 있음을 알리고자 합니다.
Feature Store 란?
Feature Store는 빠르게 고도화되는 머신러닝 파이프라인을 효율적으로 관리하고, 머신러닝 알고리즘에 필요한 피처를 중앙 집중식으로 저장·관리할 수 있게 해주는 솔루션입니다. 이는 데이터의 일관성을 유지하면서도 실험 사이클을 대폭 단축시키고, 추천 시스템의 확장성과 유연성을 크게 향상시키는 핵심적인 기반 기술입니다.
Feature Store에는 크게 두 가지 특징이 있습니다. 첫 번째로 데이터 엔지니어와 데이터 사이언티스트의 역할을 분리하여 효율적인 작업 분담을 가능케합니다. 데이터 엔지니어가 원시 데이터를 가공하여 Feature Store에 정리해두면, 데이터 사이언티스트는 원시 데이터에 대한 세부적인 이해 없이도 Feature Store의 데이터를 사용하여 모델을 학습시키고 알고리즘을 개발할 수 있습니다.
Feature Store는 Data Engineer와 Data Scientist의 중간 매개체 역할을 합니다.
두 번째로 Feature Store는 일반적인 데이터 웨어하우스와 달리 (준)실시간으로 피처를 업데이트하고 서빙할 수 있는 환경을 제공합니다. 필요에 따라서 Feature Store는 배치 작업으로 집계하는 Offline 데이터뿐만 아니라, streaming 으로 수집되는 Online 데이터 또한 적재하고 On-Offline Data 간의 싱크를 유지합니다. 이를 통해 데이터의 일관성을 유지하고 모델의 실시간 서빙 구조를 완성합

