AWS Personalize (by. 박종윤 님)

Twolinecode
twolinecode
Published in
11 min readFeb 26, 2024

최근에는 구글, 페이스북, 넷플릭스, 아마존, 유튜브와 같은 다양한 플랫폼에서 고객의 상호작용 데이터를 기반으로 한 개인화 서비스를 제공하고 있습니다. 이는 인공 지능을 적극적으로 활용하는 시대 변화를 반영한 것으로, 개인화 서비스 알고리즘과 인공지능을 결합한 고도의 서비스가 보편화되고 있습니다.

이에 따라 많은 고객사들이 서비스를 개발할 때 개인화 서비스 기능을 추가하길 원하고 있습니다. 이번에 다룰 내용은 이러한 상황에서 개인화 서비스의 의미와 인공 지능의 도입이 어려운 이유, 그리고 개인화 서비스와 인공지능을 결합하는 것을 보다 용이하게 할 수 있는 AWS Personalize에 대해 살펴보고, 향후 투라인코드가 어떻게 발전해 나갈지에 대해 고민해보고자 합니다.

  1. 개인화 서비스

우선적으로, 개인화 서비스의 개념을 명확히 정의해 보겠습니다. 개인화 서비스란 데이터를 기반으로 하여 각 개별 사용자에게 맞춤형 콘텐츠를 추천하는 서비스를 의미합니다. 이는 기획적인 측면에서 Algorithm Experience로도 불립니다. 이는 데이터를 분석하여 사용자에게 가장 적합한 결과물을 제공하는 경험으로 이해됩니다.

과거에는 이러한 개인화 서비스가 주로 타겟 세분화와 함께 사용되는 경우가 많았습니다. 타겟 세분화는 사용자의 인구 통계 데이터를 기반으로하여 특정 그룹에게는 고정된 결과물을 제공합니다. 예를 들어, 게임 추천 서비스에서 30대 남성에게는 리그 오브 레전드와 같은 게임을 추천하는 것입니다. 하지만, 이러한 타겟 세분화는 개인의 특성이나 상호작용 패턴을 고려하지 못하고 단순히 통계 그룹에 따라 결과물을 제공합니다. 이는 사용자가 불만족스러운 경험을 하게 할 수 있습니다.

반면에, 개인화 서비스는 타겟 세분화에 더해 각 개별 사용자의 상호작용 데이터를 활용합니다. 이는 사용자가 서비스 내에서의 행동에 대한 데이터를 수집하고 이를 분석하여 각 사용자에게 맞춤형 결과물을 제공하는 것입니다. 간단히 말해, 개인화 서비스는 사용자가 자신의 상호작용 데이터를 통해 개인적인 정보를 서비스에 제공하고, 서비스는 이를 분석하여 다양한 결과물을 제시하며 사용자의 상호작용 데이터를 수집하고 가공할 수 있는 기술적 역량을 필요로 합니다. 이러한 상호작용 데이터는 유동성을 갖추고 있기 때문에, 인공지능을 통한 분석 및 적용 시도가 점점 더 많아지고 있습니다.

2. 인공지능의 도입

개인화 서비스 구현의 어려움은 다음과 같습니다.

생성된 상호작용 데이터를 실시간으로 반영할 수 있어야 합니다. 사용자의 최근 상호작용 데이터에 가중치를 두고 해당 데이터를 기반으로 서로 다른 결과를 제공할 수 있어야 합니다. 이를 통해 사용자의 동적인 상호작용에 맞춰 콘텐츠를 개인화하는 것이 가능해집니다. 또한, 사용자의 상호작용 데이터를 대량으로 수집하는 것이 중요합니다. 특히, 서비스 초기나 신규 사용자의 경우 데이터 양이 부족하여 개인화 서비스가 올바르게 작동하지 않을 수 있습니다. 이를 보완하기 위한 대응책이 필요합니다.

많은 상호작용 데이터는 리뷰와 같은 형태의 자연어로 저장될 수 있습니다. 따라서 자연어를 분석하여 알고리즘에 전달할 수 있는 기술이 필요합니다. 이러한 요구사항으로 인해 많은 기업들은 개인화 서비스에 인공지능을 접목하고 있습니다. 그러나 인공지능의 도입은 신중하게 고려해야 합니다. 인공지능 도입은 다양한 장벽을 가지고 있습니다. 기술적 난이도, 대량의 학습 데이터 보유, 대규모 트래픽 처리, 고성능 인프라 비용, 그리고 학습 모델의 지속적인 최신화 등 다양한 측면에서 비용과 인력을 필요로 합니다.

개인화는 고객 경험 향상을 위해 필수적입니다. 따라서 이러한 문제를 해결하기 위해 인공지능을 결합하는 것이 필요합니다. AWS의 Personalize는 이러한 문제를 간단하게 해결할 수 있는 완전 관리형 개인화 및 추천 서비스를 제공합니다. 이를 통해 비용과 노력을 절감하면서도 효과적인 개인화 서비스를 구축할 수 있습니다.

3. AWS Personalize

개인화는 서비스를 구축할 때 선택사항이 아닌 필수 요소입니다. 고객 경험을 향상시키기 위해 반드시 고려되어야 합니다. 개인화 서비스의 다양한 문제를 해결하기 위해서는 인공지능을 결합이 필수적입니다. 그러나, 인공지능을 도입하는 것은 많은 비용과 높은 수준의 개발 인력을 필요하며, 이를 효율적으로 유지보수하고 발전시키는 것 또한 고려해야 합니다.

AWS는 이러한 문제를 해결하기 위해 완전 관리형 개인화 및 추천 서비스인 Personalize를 제공합니다. Personalize를 통해 개발 및 유지보수 비용을 절감하고, 고객 경험을 개선하는 데에 집중할 수 있습니다.

Personalize는 완전 관리형입니다.사용자가 Personalize를 사용할 때 AWS에서 모든 관리를 담당하며, 일부 항목들에 대해서만 사용자가 설정할 수 있습니다. 이로써 개인화 서비스와 인공지능의 결합을 한 단계 더 쉽게 낮추는 역할을 합니다. 사용자는 학습에 사용할 데이터와 알고리즘을 선택하는 것만으로도 Personalize를 간편하게 구축할 수 있습니다.

또한, Personalize에서 사용되는 기반 알고리즘은 Amazon의 상품 페이지에서 고객의 구매율을 높이기 위해 적용된 다양한 추천 알고리즘입니다. 따라서 개인화 서비스의 결과물 품질이 매우 높습니다. 이러한 알고리즘은 특정 아이템에 종속적이지 않고 범용적으로 사용할 수 있습니다. 사용자가 선택해야 하는 것은 추천 방식뿐입니다.

실제 사례로는 배민의 만화경 웹툰 서비스가 있습니다. Personalize를 도입한 후, 추천 영역을 클릭한 사용자 수가 이전 대비 24% 증가했으며, 작품 만족도 역시 15% 향상되었습니다. 롯데마트 역시 AWS Personalize를 도입하여 쿠폰 사용량이 2배 이상 증가하고, 추천에 따른 신제품 구매 빈도가 1.7배 증가한 결과를 보여주었습니다. 이는 Personalize가 실제 비즈니스에 많은 가치를 제공한다는 것을 보여줍니다.

출처 : aws.amazon.com/ko/personalize

AWS Personalize의 작동 방식에 대해 살펴보겠습니다. 먼저, 학습할 데이터를 AWS S3에 저장한 후 사용자는 학습에 사용할 모델을 선택합니다. 이 모델에 사용할 알고리즘을 레시피라고 합니다. 이렇게 모델을 선택하고 생성하는 과정은 “솔루션 생성”이라는 개념으로 알려져 있습니다.

솔루션을 생성하면 캠페인이 형성되어 실시간 권장 사항을 생성합니다. 캠페인은 Auto 방식과 manual 방식으로 구분됩니다. Auto 방식은 솔루션이 업데이트될 때마다 자동으로 배포되고, manual 방식은 솔루션이 수정될 때 캠페인을 수동으로 업데이트하는 방식입니다. AWS에서는 보통 Auto 방식을 권장합니다.

이러한 추천 결과는 설정한 API 엔드포인트를 통해 받아볼 수 있습니다. AWS Personalize는 코드 레벨의 높은 기술적 이해가 필요하지 않으며, AWS 콘솔 화면에서 몇 번의 클릭만으로도 개인화 서비스를 구현할 수 있습니다. 그 다음, AWS Personalize를 활용할 때 가장 중요한 데이터에 대해 살펴보겠습니다.

AWS Personalize에서 사용자의 개인화 추천을 위해 필요한 데이터는 3가지로 구성됩니다: 사용자 메타데이터, 아이템(상품) 메타데이터, 그리고 사용자와 아이템 간의 상호작용 데이터입니다.

이 데이터들은 CSV 형식으로 S3에 저장되며, AWS Personalize는 이를 학습하여 응답합니다. 사용자 메타데이터는 user_Id 항목을 반드시 포함해야 합니다.

구조는 다음과 같습니다: | user_Id | 다른 메타데이터 열 1 | 다른 메타데이터 열 2 | … | 이와 같이 사용자 메타데이터는 각 사용자를 식별하는 user_Id 열과 다른 메타데이터 열들로 구성됩니다.

아이템 메타 데이터는 사용자가 상호작용할 아이템(상품)에 대한 메타 데이터를 의미하며 item_id 항목을 반드시 포함해야 합니다. 구조는 아래 이미지와 같습니다.

상호작용 데이터는 사용자와 아이템 간의 상호작용에 대한 정보를 의미합니다. AWS Personalize의 알고리즘은 상호작용 데이터를 기반으로 각 user_id에 맞는 추천 아이템 목록을 응답합니다. 따라서 개인화 서비스를 다룬다는 것은 상호작용 데이터를 어떻게 다룰 것인가에 대한 문제와 동일합니다. 이를 위해서는 정의한 상호작용이 무엇인지, 데이터를 어떤 방식으로 저장하고 관리할지, 누락된 데이터를 어떤 상호작용으로 가정하고 처리할지 등 데이터 엔지니어링에 대한 시작점이라고 볼 수 있습니다.

상호작용 데이터는 user_id, item_id, 상호작용이 발생한 timestamp 항목을 반드시 포함해야 합니다.

마지막으로 학습한 데이터를 추천하는 알고리즘인 대표적인 레시피 3가지를 살펴보겠습니다. 레시피는 추천 모델 생성 시 사용하는 알고리즘을 의미하며 알고리즘을 자동 선택해 사용하거나 하이퍼 파라미터 최적화 기능을 통해 알고리즘을 원하는 방향으로 수정 가능합니다. AWS에서는 Personalize 외에도 SageMaker라는 MLOps를 통해 사용자가 직접 레시피를 정의하고 학습시킬 수 있습니다.

User Personalization은 특정 사용자가 다음 상호작용할 항목을 예측합니다. 해당 알고리즘은 계층적 반복 신경망 알고리즘을 통해 실행하며 사용자의 동작 변화를 감지하고 동작 변화에 패턴을 부여하는 방식의 알고리즘으로써 AWS에서 권장하는 알고리즘입니다.

Similar Items는 상호작용 데이터를 통해 유사 아이템을 추천합니다. 해당 알고리즘은 상품 탐색 및 상세 페이지 구성에 주로 활용됩니다.

Personalized Ranking은 소비자의 예측 관심도에 따른 순위로 추천을 생성합니다.

4. 마치며

앞으로 서비스가 고도화 될수록 사용자를 서비스에 더 오래 머물도록 유도할 수 있는 다양한 시도가 이뤄질 것입니다. 이러한 시도 중 오늘날 가장 강력한 것은 바로 개인화 서비스입니다. 고객사의 요구가 더 많이 개인화된 서비스를 필요로 하는 접점이 늘어날 것으로 예상됩니다.

AWS Personalize는 인공지능이 접목된 개인화 서비스를 누구나 쉽게 구현할 수 있는 서비스로 크게 발전했습니다. 이제 개인화 서비스는 큰 규모의 자체 서비스 회사의 전유물이 아니라 보다 폭넓은 산업과 기업에서 구현할 수 있게 되었습니다.

투라인코드는 데이터 엔지니어링에 대한 역량을 충분히 쌓는다면 앞으로 증가할 고객사의 개인화 서비스 구현 요구를 충분히 해결할 수 있는 SI 회사로서의 발전 가능성을 가지고 있다고 생각합니다.

참고 사이트

- 개인화 서비스는 어떻게 만드나요? : https://brunch.co.kr/@plusx/30

- 2023년 소비 트렌드 — 개인맞춤형 서비스 : https://www.mezzomedia.co.kr/data/insight_m_file/insight_m_file_1605.pdf

- AWS Personalize 개발자 가이드 : https://docs.aws.amazon.com/ko_kr/personalize/latest/dg/what-is-personalize.html

- AWS 고객 사례:우아한 형제들 : https://aws.amazon.com/ko/solutions/case-studies/woowa-brothers-personalize/

- 롯데마트, Amazon Personalize을 통한 모바일 쿠폰 추천 기반 고객 참여 향상 사례 : https://aws.amazon.com/ko/blogs/korea/increasing-customer-engagement-and-loyalty-with-personalized-coupon-recommendations-using-amazon-personalize/

- Amazon Personalize의 신규 기능을 활용한 더 빠르고 정확한 추천 서비스 구축하기 : https://www.youtube.com/watch?v=5EkWcIIh6ME

- Amazon Personalize 개인화 추천 모델 만들기, 김태수, AWS AIML 스페셜 웨비나 발표 자료 : https://www.slideshare.net/awskorea/amazon-personalize-session2

- Amazon Personalize 소개(+실습구성), 김영진, AWS AIML 스페셜 웨비나 발표 자료 : https://www.slideshare.net/awskorea/amazon-personalize-session1-251521734

- 추천 시스템의 원리와 구축 사례 : https://www.youtube.com/watch?v=MTAc8-ygAaM&t=3s

--

--

Twolinecode
twolinecode

We have the best solutions and experts for our customer’s digital business needs-everything from Cloud Infrastructure to Cloud Native Application.