TensorFlow 인프라로 커뮤니티 게시물 운영 효율성 극대화

Daangn Market에 대하여

당근마켓은 ‘우리 동네 중고 직거래 앱’이라는 목표로 시작된 지역 정보 서비스입니다. 중고 물품 거래로 시작해 지역 내에서 발생하는 모든 생활 정보를 교류할 수 있는 지역 커뮤니티로 성장하기 위해 노력하고 있습니다. 2019년 9월 현재 월 350만 명 이상이 접속해 300만 건 이상의 정보를 공유하고 있습니다. 국내외 여러 벤처 투자사들을 통해 400억원 대 투자를 유치하는 등 가파른 성장세를 이어가고 있습니다.

산업 분야: 리테일 및 소비재
위치: 대한민국

어떤 어려움을 겪고 계신지 알려주세요. Google Cloud가 도와드리겠습니다.

문의하기

지역 기반의 중고거래 서비스 당근마켓은 폭발적인 성장세와 함께 늘어나는 게시물 관리의 고민을 안고 있었습니다. Google Cloud Platform의 TensorFlow를 도입한 이후 사람 손을 거치지 않아도 정책에 어긋난 게시물을 골라내고, 실시간 개인 맞춤형 콘텐츠도 제공할 수 있었습니다. 효율적인 게시물 관리는 인력 부담을 덜고 당근마켓이 커뮤니티로 성장할 수 있는 기틀이 됐습니다.

구글 클라우드 사용 효과

  • 이용자 성향에 맞춰 실시간 맞춤 콘텐츠 제공
  • BigQuery, SQL 기반 업무 환경과 연결
  • 안정적인 하이브리드 클라우드 구축
  • 유연한 데이터 분석

운영 인력 증가 없이 게시물 관리 효율 향상

당근마켓은 중고 거래를 중심으로 하는 지역 생활정보 플랫폼 서비스를 운영하는 스타트업입니다. 이미 중고 거래 서비스는 많이 있지만 당근마켓은 ‘지역'이라는 특성을 바탕으로 차별성을 갖게 됐고, 결국 이용자가 늘어나면서 지역 사회의 이야기를 담아내는 커뮤니티로 성장하고 있습니다. 그리고 이 비즈니스 확장의 중심에는 데이터가 있습니다.

당근마켓은 Google Cloud Platform을 통해 빅데이터와 머신러닝 기반의 데이터 분석 서비스를 통해 게시판을 효율적으로 운영하고 있습니다. TensorFlow 기반의 머신러닝 모델은 게시판을 정책에 맞춰 빈틈 없이 관리하고 콘텐츠 맞춤 서비스를 제공합니다. 또한 BigQuery는 운영과 마케팅 등 비즈니스 성과 분석에서 일당백의 역할을 하고 있습니다.

당근마켓의 TensorFlow 활용은 두 가지로 나뉩니다. 하나는 서비스에 올라오는 글을 분류하는 것이고, 다른 하나는 이용자에 맞춤형 콘텐츠를 추천하는 것입니다. 당근마켓은 이 두 부분에 TensorFlow 모델을 적용하면서 늘어나는 게시물을 효율적으로 관리할 수 있게 됐고, 이용자별 맞춤 서비스도 갖출 수 있었습니다. 결과적으로 급격하게 성장하는 스타트업이 시스템 때문에 겪을 수 있는 문제들을 깔끔하게 해결하게 되었습니다.

늘어나는 콘텐츠, 효과적으로 담기 위한 수단 필요

“당근마켓은 커뮤니티의 특성을 띄고 있기 때문에 이용자들의 콘텐츠가 활발하게 등록되는 것이 중요하지만 동시에 글 하나하나가 적절한 정보를 전달할 수 있도록 하는 효과적인 운영이 필요합니다. 문제는 전국에서 올라오는 모든 글을 운영자가 전부 읽고 관리하는 것은 불가능한 일일 뿐더러 감당할 수 있는 수준을 넘으면 서비스 정체로 이어질 수 있었습니다. TensorFlow 기반의 딥러닝이 이를 풀어줄 수 있을 것이라고 생각하고 도입을 시작했습니다.”

전무익 머신러닝 엔지니어는 당근마켓의 머신러닝 환경에 기틀을 마련했습니다. 시작은 게시물 관리에 대한 숙제를 어떻게 풀어낼 지에서 출발했습니다. 커뮤니티 서비스는 게시물에 대해 적절한 관리 정책이 커뮤니티의 성격을 결정하고 활성화에도 영향을 끼칩니다. 당근마켓의 머신러닝 모델은 이용자들을 불편하게 만드는 불법 광고 글을 관리하고, 법으로 온라인에서 거래되지 못하도록 하는 가품이나 술, 담배 등도 빠르게 분류해내야 했습니다.

이 콘텐츠 분류 시스템은 수익성과도 관계가 있습니다. 당근마켓은 기본적으로 중고 물품 거래에는 수수료가 없지만 부동산이나 과외, 중고차 등에 대해서는 콘텐츠에 대한 수수료를 받고 있는데 일부 이용자가 이를 피하기 위해 엉뚱한 게시판에 글을 등록하거나 내용을 애매하게 숨기기도 합니다. 이를 적절히 찾아내는 것은 당근마켓 비즈니스의 중심을 잡는 일이 됩니다.

초기에는 콘텐츠 검수를 운영자들이 직접 했습니다. 하지만 3년쯤 되니 서비스 규모가 빠르게 성장하고, 등록되는 게시물이 폭발적으로 늘어나면서 하나하나 운영자가 관리하는 것이 불가능해졌습니다. 그렇다고 관리 인력을 계속 뽑기에는 부담스러울 뿐 아니라 근본적인 해결책이 아니라고 판단했습니다. 결국 데이터 분류에 탁월한 능력을 갖고 있는 머신러닝 기술을 고민했고, 전무익 머신러닝 엔지니어는 TensorFlow가 이 문제를 해결해 줄 것이라고 판단했습니다. 관련된 인프라도 직접 꾸리는 대신 TensorFlow에 최적화되어 있는 Google Cloud Platform의 관리형 서비스에서 운영하기로 했습니다.

머신러닝 모델은 해당 글이 운영 규칙에서 확실하게 벗어났다고 판단하면 정해진 규칙에 따라 자동으로 처리를 하고, 가능성이 어느 정도 있다면 운영자에게 알려서 직접 검수할 수 있도록 합니다. 결과적으로 현재 당근마켓은 이전보다 훨씬 안정적이고 안전하게 게시판 운영이 이뤄지고 있습니다.

게시판 관리를 돕는 머신러닝 모델은 TensorFlow로 구현했습니다. 모델은 전무익 머신러닝 엔지니어가 직접 설계했고, 학습과 배포, 운영은 Google AI Platform에서 이뤄집니다. 게시물에는 글과 사진, 제목, 가격 등 다양한 정보들이 복합적으로 섞여 있기 때문에 전무익 머신러닝 엔지니어는 게시물을 복합적으로 보고 판단을 내릴 수 있는 TensorFlow 모델을 설계했습니다. 각 요소에 대해서는 AutoML을 활용하는 방법도 고민했는데 복합적으로 내용을 평가하는 것은 모델을 직접 만드는 것이 더 효과적이라고 판단했습니다.

“여러 클라우드 서비스를 비교해봤는데 대부분 TensorFlow를 위한 관리형 서비스는 많지 않고 원하는 기능들을 최적화하기도 쉽지 않았습니다. Google Cloud Platform에는 TensorFlow 기반 머신러닝 모델을 개발하고 운영할 수 있는 갖가지 도구들이 준비되어 있어서 개발 과정에서 어렵지 않게 필요한 요소들을 빨리 찾아 쉽고 빠르게 적용할 수 있었습니다.”

초기 개발은 전무익 머신러닝 엔지니어가 혼자 진행했습니다. 개인적인 취미로 시작했는데 딥러닝을 이용해 기업 성장에서 나타나는 문제를 해결할 수 있겠다고 생각했고, 가장 많이 손을 타는 콘텐츠 분류에 TensorFlow를 적용할 수 있을 것이라고 생각해서 사내에 제안했습니다.

“당근마켓의 핵심은 중고 물품 거래부터 취업 정보나, 부동산 가격, 지역 정보에 대한 질문 등 위치에 기반한 여러가지 정보가 활발하게 공유되는 데에 있습니다. 게시판의 관리, 운영은 서비스의 질을 결정하기 때문에 성장에 따라 점차 더 많은 인력이 필요했습니다. Google AI Platform에서 운영되는 TensorFlow를 도입하면서 게시물을 효과적으로 분류, 관리할 수 있게 됐고, 이용자와 게시물이 늘어도 아무 영향 없이 안정적으로 운영할 수 있는 환경이 갖춰졌습니다.”

- 전무익 당근마켓 머신러닝 엔지니어

인프라 없이도 머신러닝으로 콘텐츠 관리 자동화에 이용자 맞춤 서비스까지 구축

전무익 머신러닝 엔지니어는 머신러닝 관련 개발을 대부분 혼자 구현해 낼 수 있었습니다. 사내 머신러닝 인프라와 시스템이 준비되어 있지 않았지만, Google Cloud Platform만으로도 원하는 것들을 다 꾸릴 수 있었습니다. 또한 구글의 기술 지원 문서가 잘 갖춰져 있어서 혼자서도 현재의 콘텐츠 분류 모델을 만들고 운영할 수 있었다고 합니다.

효과는 빨리 나타났습니다. 무엇보다 사내 운영팀의 업무가 많이 줄었습니다. 콘텐츠 분류는 커뮤니티 서비스에서 아주 중요한 일이지만 단순 반복되는 업무이기도 합니다. 주류, 담배 등 온라인에서 거래되면 안 되는 상품들에 대해서는 사람 손을 빌리지 않아도 운영 정책에 어긋나는 게시물들을 콕 찝어 즉각적으로 관리할 수 있게 됐습니다. 부적절한 광고 콘텐츠가 걸러지면서 수익화에도 도움이 됐습니다. 대개 커뮤니티의 게시판이 무너지는 이유는 운영 규칙이 흔들리고, 분위기가 조금씩 틀어지다가 그게 서서히 커지기 마련입니다. TensorFlow 모델은 정확한 규칙에 따라 움직이기 때문에 운영 정책에도 일관성이 생겼습니다.

추천 시스템은 콘텐츠의 양이 늘어나면서 이용자들이 앱 첫 화면에서 관심있는 정보를 빠르게 접할 수 있도록 하는 일종의 ‘콘텐츠 피드’입니다. 당근마켓은 이용자가 늘어나고, 점차 지역 커뮤니티로 역할이 확장되면서 꼭 필요한 물건이 없어도 정보를 구경하러 오는 이용자도 많습니다. 당근마켓의 기본 게시물 노출 방법은 시간 순서인데 여기에 최근에 본 게시물을 바탕으로 관심을 가질만한 내용을 찾아서 보여주는 게 바로 추천 시스템입니다.

아직은 완전한 개인 피드 형태는 아니지만 머신러닝을 이용해 이용자마다 관심있는 상품이나 게시물 카테고리를 파악해서 콘텐츠 피드 중간에 조금씩 끼워 넣고 있습니다. 개인화도 중요하지만 중고 장터의 특성상 최근에 올라온 글의 중요도도 높기 때문에 그 적정 비율은 지속적으로 찾아가는 중입니다.

이 역시 TensorFlow를 바탕으로 개발했습니다. 인공지능 모델은 각 이용자에 대해 사용 이력을 바탕으로 관심사에 가중치를 두는 이른바 ‘벡터’를 만듭니다. 관심도가 높은 분야와 그렇지 않은 분야를 파악하게 되는 것이지요. 이를 바탕으로 이용자들이 관심을 가질 만한 게시물을 제안합니다.

추천 시스템의 딥러닝 모델은 하루에 4번 학습을 통해 이용자 벡터를 업데이트합니다. 이 정도면 사실상 실시간으로 학습이 이뤄진다고 볼 수 있습니다. 특히 중고 거래에서는 필요한 물건을 구입하면 그 관심사의 가치가 사라지기 때문에 관심사를 빠르게 반영해야 합니다. 그래서 학습을 자주 반복해서 데이터를 최신으로 유지하도록 하고 있습니다.

모든 이용자의 데이터를 빠르게 업데이트해야 하기 때문에 이 모델의 학습은 Google Cloud Platform의 GPU로 처리합니다. Google Cloud Platform의 GPU 컴퓨팅은 쏟아지는 데이터들을 아주 빨리 학습하고 모델에 반영해서 배포까지 단숨에 처리합니다.

“클라우드 위에서 데이터 중심의 성장 동력 찾아갈 것"

데이터 분석에 BigQuery가 빠질 수 없습니다. 당근마켓은 2016년부터 약 3년 정도 BigQuery를 이용해 데이터를 수집하고 분석했습니다. 클라이언트 앱에서 나오는 이벤트 로그를 비롯해 각종 정보들은 파이어베이스를 통해 BigQuery로 보관됩니다. 최근 읽은 게시물이나 화면의 어떤 구성 요소를 눌렀는지를 파악하는 로그처럼 추천 시스템에서 이용자 벡터를 만들 때 쓰이는 정보들도 BigQuery에 담겨 분석에 활용됩니다.

BigQuery의 분석 데이터는 당근마켓 업무 전반에 영향을 끼치고 있습니다. 마케팅 부서에서는 유료 상품이나 마케팅 효율을 분석하기도 하고, 기획과 사업 부서에서는 새로운 서비스에 대한 이용자 반응과 성과를 읽어내기도 합니다. 전무익 머신러닝 엔지니어는 BigQuery가 SQL을 기반으로 하기 때문에 분석이 필요한 부서에서 직접 데이터를 뽑아볼 수 있어 사내에서 직접 데이터 관련 기술을 배우려는 수요가 늘어나고 있다고 설명했습니다.

“도입 초기에는 BigQuery 분석에 크게 의존하지는 않았습니다. 분석보다 데이터를 담는 것에 대한 비중이 더 높았지만 점차 데이터의 중요도에 대해 사내 공감대가 생기면서 현재는 BigQuery의 가치를 찾아가고 있는 단계입니다. 배우기도 어렵지 않고, 다양한 활용도 할 수 있습니다. SQL을 다루는 정도면 원하는 데이터를 뽑을 수 있고, 관리형 서비스인 만큼 처리 속도와 안정성도 매우 뛰어납니다.”

Google Cloud Platform은 인력이 적은 팀에서도 고도의 서비스를 만들고 운영할 수 있다는 점에서 기대 이상의 만족도를 주었습니다. 온프레미스는 물론이고 클라우드라고 해도 새로운 서비스와 시스템을 만들려면 작게라도 팀이 꾸려져야 하는 게 일반적인 현실입니다. 하지만 Google Cloud Platform을 통해 데이터와 머신러닝을 도입하는 모든 과정이 1~2명의 인력으로 해결됐습니다. 작은 규모로 시작해 빠르게 성장하는 스타트업에게는 가장 큰 이점입니다.

전무익 머신러닝 엔지니어는 앞으로 쿠버네티스 기반의 컨테이너 서비스로 머신러닝 운영 환경을 고도화할 계획이라고 합니다. 원하는 형태의 시스템 구현이 간단하다 보니 서비스 곳곳에 머신러닝 활용에 대한 아이디어들이 눈에 띄고 있습니다. 당근마켓 전체로도 데이터 활용도에 대한 기대가 크다고 합니다. BigQuery와 Google Cloud Storage를 중심으로 다양한 분석 플랫폼을 개발, 배포할 수 있는 파이프라인 구조를 만들어 더 많은 서비스에 머신러닝을 활용할 수 있도록 할 계획입니다.

“데이터의 가치는 매우 중요합니다. 하지만 인프라 때문에, 개발 환경 때문에, 인력 때문에 하지 못하는 경우가 많습니다. Google Cloud Platform은 처리 속도부터 기능, 확장성, 편의성까지 갖춰져 있어 원하는 것들을 어렵지 않게 만들고 운영할 수 있습니다. 앞으로 점점 더 많은 부분에 데이터와 머신러닝을 활용할 계획이지만 고민해야 하는 것은 아이디어일 뿐입니다. 인프라는 걱정하지 않습니다.”

어떤 어려움을 겪고 계신지 알려주세요. Google Cloud가 도와드리겠습니다.

문의하기

Daangn Market에 대하여

당근마켓은 ‘우리 동네 중고 직거래 앱’이라는 목표로 시작된 지역 정보 서비스입니다. 중고 물품 거래로 시작해 지역 내에서 발생하는 모든 생활 정보를 교류할 수 있는 지역 커뮤니티로 성장하기 위해 노력하고 있습니다. 2019년 9월 현재 월 350만 명 이상이 접속해 300만 건 이상의 정보를 공유하고 있습니다. 국내외 여러 벤처 투자사들을 통해 400억원 대 투자를 유치하는 등 가파른 성장세를 이어가고 있습니다.

산업 분야: 리테일 및 소비재
위치: 대한민국