아마존(Amazon) 추천 시스템 - Zero to 추천시스템

    아마존 추천 시스템

    미국에서 가장 추천을 많이 활용하는 기업 3개(넷플릭스, 구글, 아마존) 중 아마존(Amazon) 역시 넷플릭스와 구글처럼  독자적인 모습의 추천 사례들을 만들어 왔습니다.

     

    사실 아마존은 다른 업체보다 추천 시스템을 빨리 사용했으며, 협업 필터링을 무려 2003년부터 사용한 것을 알 수 있습니다.

     

    https://www.cs.umd.edu/~samir/498/Amazon-Recommendations.pdf

     

    위 리포트는 아마존이 2003년도에 낸 리포트로 제목을 보면 알 수 있지만 Item-to-Item 기반의 협업 필터링을 사용했다는 것을 알 수 있습니다. 아마존은 협업필터링 중 특히 Item-to-Item에서 많은 효과를 보고 있다고 하는데 매출의 35% 이상을 추천 알고리즘으로 내고 있다고 말을 하기도 했습니다.

     

    아마존은 현재 전자상거래가 가장 큰 매출을 차지하고 있지만, Prime Video라든지 AWS와 같은 다른 서비스 등으로도 매출을 올리는 회사이기 때문에 다른 시스템의 추천에 관련돼서는 조사가 이루어지는대로 포스팅을 하도록 하겠습니다.

     

    아이템 기반 협업 필터링(IBCF)

    기본적으로 협업 필터링을 생각하면 많은 분들이 사용자 기반의 협업 필터링(User-Based Collaborative Filtering, UBCF)을 많이 생각하실 겁니다. 사용자 기반의 협업 필터링은 사용자들의 행동을 통해서 유사한 사용자를 찾고, 유사한 사용자가 선호한 아이템을 주는 방식입니다.

     

    ub vs ib

     

    반면 아이템 기반의 협업 필터링(Item-Based Collaborative Filtering, IBCF)의 경우 데이터는 동일하게 세팅하나 아이템간 행동의 연관성을 찾습니다. IBCF의 경우 장바구니 알고리즘과 상당히 유사한 모습을 볼 수 있는 것이죠.

     

    The better way was to base product recommendations not on similarities between customers but on correlations between products. With user-based collaborative filtering, a visitor to Amazon.com would be matched with other customers who had similar purchase histories, and those purchase histories would suggest recommendations for the visitor.

    더 나은 방법은 고객 간의 유사성이 아니라 제품 간의 상관 관계를 기준으로 제품 권장 사항을 정하는 것이었습니다. 사용자 기반 협업 필터링을 통해 Amazon.com 방문자는 유사한 구매 이력을 가진 다른 고객과 일치하며, 이러한 구매 이력은 방문자에게 권장 사항을 제시할 수 있습니다.

    - 아마존은 UBCF보다 IBCF가 더 효과적이라는 내용

     

    아마존은 아이템간 협업 필터링을 위해서 순수 알고리즘 개선이 아니라, 데이터를 계속 고도화하고 개인화하는 작업을 진행하였습니다. 예를 들어, 아이템의 연관성을 구할 때 대규모로 상품을 사는 헤비 사용자의 경우 A라는 상품을 살 가능성이 다른 사용자보다 높아지게 되는데 이럴 때 수치 그대로 쓰는게 아니라 그에 맞는 계산식을 반영한 것입니다.

     

    Smith and his colleagues realized that it wasn’t enough to assess the increased likelihood of buying product B given the purchase of product A; they had to assess the increased likelihood of buying product B with any given purchase. That is, they discounted heavy buyers’ increased likelihood of buying B according to the heaviness of their buying.

    Smith와 그의 동료들은 제품 A의 구매로 인해 제품 B의 구매 가능성이 증가하는 것을 평가하기에 충분하지 않다는 것을 깨달았습니다. 그들은 어떤 주어진 구매로 제품 B의 구매 가능성이 증가하는 것을 평가해야 했습니다. 즉, 헤비 매수자의 구매 중도에 따라 B 매수 가능성이 높아지는 것을 무시한 것이다.

     

    아마존은 이후에도 다양한 수치들을 계산에 넣고, 데이터를 보정하는 등의 작업으로 추천의 퀄리티를 계속 증가하고 있습니다. 전혀 다른 획기적인 알고리즘을 써서 성과를 올리는것이 주가 아니라, 20년동안 사용하고 있는 IBCF를 보조적인 방식으로 계속 고도화하고 있는 것입니다.

     

     

    아마존의 새로운 실험

    Bandit Algorithm

    아마존의 새로운 추천 알고리즘에 대한 연구 영역 중 하나로 밴딧 알고리즘이 있습니다. 밴딧 기반 알고리즘은 사용자가 서로 다른 제품 제안에 어떻게 반응하는지에 따라 여러 추천 모델 사이에서 실시간 선택을 하는데 사용하는 방식입니다. 

     

    사용자가 어떤 것을 선호할지 모르기 때문에 나온 방식으로 새로운 제안에 어떻게 반응하냐에 따라 사용자의 모델을 만들어냅니다.

     

    Casual interference Algorithm

    캐주얼 간섭 알고리즘은 개별 고객이 특정 제품에 관심을 갖게 된 요인을 파악하는데 초점을 맞추게 됩니다. 아마존 연구진들은 기존 추천 알고리즘과 캐주얼 간섭 알고리즘을 결합하여 알고리즘을 개발하였고, 다양한 교란 요인들을 고려하여 개선된 추천을 생성할 수 있다고 하였습니다.

     

    최근 추천 알고리즘의 트렌드가 하이브리드로 가고 있는데 아마존은 모든 것을 뒤집어 엎지 않고, 기존 알고리즘을 계속 고도화해 나가면서 보조적인 알고리즘과 결합하여 성능을 끌어올리는 모습을 보여주고 있습니다.

     

    사실 추천을 연구하는 사람이라면 이렇게 조금씩 고도화하는 것이 가장 효과적일 수 있지만, 완전히 새로운 알고리즘만이 능사라고 생각하는 신입이 많습니다. 20년동안 한가지만 제대로 파면서 계속 꾸준히 Personalize를 하는 아마존의 모습을 참고하면 좋을 것 같습니다.

     

    아래는 아마존 추천의 역사를 설명하는 유튜브 영상입니다.

     

    아마존 추천의 역사 유튜브 영상

     

    연관포스팅

     

    넷플릭스(Netflix) 추천 사례 - Zero to 추천시스템

    최근들어 유튜브(Youtube)의 "오늘도 알 수 없는 유튜브 알고리즘이 나를 이 영상으로 끌고왔다" 라는 댓글이 밈처럼 퍼져서 추천의 상징처럼 되어가고 있지만 추천시스템을 만드는 사람에게는 넷

    needjarvis.tistory.com

     

     

    유튜브(Youtube) 추천 사례 - Zero to 추천시스템

    이전 포스팅에서는 넷플릭스(Netflix)에 대해서 알아보았다. 다만 많은 추천(Recommendation)을 연구하는 연구원과 다르게 일반 사용자들 특히 대한민국 국민들은 넷플릭스를 추천의 대명사처럼 생각

    needjarvis.tistory.com

     

    References

    [1] https://www.amazon.science/the-history-of-amazons-recommendation-algorithm 

    [2] https://recostream.com/blog/amazon-recommendation-system

    댓글

    Designed by JB FACTORY