BLOG
실시간 OTT 이벤트를 위한 상황별 시청자 참여와 수익 창출
인기 있는 라이브 스트리밍 이벤트는 종종 스릴, 불확실성, 신선함 및 콘텐츠의 예측 불가능함 등으로 인해 더 많은 시청자들의 관심을 끕니다. 반면, OTT(over-the-top) 세계에서는 라스트 마일 네트워크 대기 시간과 미디어 플레이어의 버퍼로 인해 시청자가 실시간 보다 늦게 콘텐츠를 보게 되는 경우가 많은데요, 바로 이 라스트 마일 네트워크 대기 시간을 활용하면 콘텐츠에 대한 시청자들의 기대를 높이고, 상황에 맞는 고도로 타겟팅된 이벤트, 티저, 서프라이즈 등을 제공하여 수익 창출 기회를 늘리는 동시에 효과적인 시청자 경험을 제공할 수 있습니다.
이 경우, 라이브 콘텐츠의 흐름에 따라 시청자 개개인의 상황에 맞춘 다양한 참여 도구가 거의 실시간으로 시청자 인터페이스에 나타나게 됩니다. 이러한 도구에는 퀴즈, 쿠폰 제안, 투표, 콘테스트 등이 포함되어 있습니다. 그러나 시청자들이 이같이 특별한 라이브 이벤트를 통해 느끼는 기쁨과 충동은 일시적이기 마련입니다. 그렇기 때문에 이 짧은 순간에 가능한 한 최고의 맞춤형 서비스를 제공하여 만족을 극대화하는 것이 중요합니다. 이는 장기적으로 콘텐츠 서비스 이용자의 이탈 감소, 브랜드 가치 증가, 수익원 증대 등으로 이어지기 때문입니다. 이번 포스팅에서는 이처럼 실시간 OTT 이벤트에 적합한 솔루션을 구현하고자 할 때의 문제점과 해결책을 알아보고, 이 경우에 채택할 수 있는 솔루션 프레임워크를 살펴보도록 하겠습니다.
진입장벽
시장 조사에서 이러한 솔루션이 성공할 것으로 예측했고, 경영진의 후원이 이루어졌다고 하더라도 여전히 잠재적인 장애물이 존재합니다.
- 기계 학습 사용 사례를 제공하기 위한 사내 전문 지식 또는 인프라의 가용성. 머신 러닝 모델의 정확성 외에도 확장성, 안정성 및 짧은 대기 시간은 이러한 사용 사례에서 중요한 문제입니다.
- 확장 가능하고 안정적이며 고성능 이벤트 기반의 솔루션을 제공하는 팀의 자신감과 편안함
- 빠른 시장 출시 솔루션을 제공할 수 있는 민첩성
- 이러한 비즈니스 모델은 종종 실험적이며 성공적인 진화를 위해 여러 번 반복해야 한다는 점을 감안할 때 비용 최적화
이번 포스팅을 통해 클라우드 네이티브 아키텍처가 이러한 잠재적 진입 장벽의 대부분을 효과적으로 해결할 수 있는 방법을 알아보도록 하겠습니다.
결합 메커니즘 결정
시청자 ID와 현재 미디어 플레이어 위치에 대한 요청이 수신되면, 시청자가 현재 보고 있는 것(라스트 마일 네트워크 대기 시간이 주어짐) 또는 지난 몇 초 동안 이미 본 것을 조회할 수 있습니다. 중요한 것은 이 시점에서 시청자에게 가장 좋은 도구가 무엇인지에 대한 것인데요, 이는 하이퍼 타겟 광고, 참여 위젯, 마케팅 쿠폰 또는 기타 개인 만족을 위한 혁신적인 방법 등이 될 수 있겠죠. 구현의 관점에서 볼 때 비즈니스에서 허용 가능한 수준의 정확도와 필요한 정도의 안정성, 확장성 및 대기 시간으로 이를 제공할 수 있는 규칙 엔진, 효과적인 세분화 알고리즘 또는 기계 학습 분류가 필요합니다.
핵심 솔루션 빌딩 블록
이제 라이브 OTT 이벤트에 대한 상황별 시청자 참여의 사용 사례를 제공하는 데 필요한 핵심 솔루션 빌딩 블록을 알아보겠습니다.
- 라이브 스트림 소스: 라이브 스트림은 AWS Elemental MediaLive에 대한 입력으로 생성되며, AWS Elemental MediaPackage를 통해 그리고 최종 사용자 가 사용할 엔드포인트를 제공하는 Amazon CloudFront를 통해 생성됩니다. 출력 HLS 스트림은 시청자 소비와 라이브 이벤트에 대한 컨텍스트 및 통찰력을 얻는 데 모두 사용됩니다.
- 라이브 스트림 분석기: 라이브 스트림의 매니페스트 파일을 지속적으로 읽는 Amazon Elastic Computing Cloud(Amazon EC2 ) 인스턴스에서 호스팅되는 Python 스크립트입니다. 라이브 이벤트의 경우 이벤트가 진행됨에 따라 TS(전송 스트림) 세그먼트가 매니페스트에 점진적으로 추가됩니다. Python 스크립트는 이벤트 기간 동안 루프에서 실행되고 이러한 증분 TS 세그먼트를 폴링해야 합니다. 새 TS 파일이 수신되면 파이썬 스크립트는 추가 다운스트림 분석을 위해 사전 구성된 Amazon Simple Notification Service (Amazon SNS) 항목에 정규화된 URL을 게시합니다. 지연 문제를 최소화하려면 MediaPackage와 동일한 지역(사용하는 경우) 또는 가장 가까운 엣지 캐시에 가장 가까운 지역에서 이 인스턴스를 시작하는 것이 좋습니다. 또한, 여러 가용 영역 의 Auto Scaling 그룹에서 호스팅되는 이러한 EC2 인스턴스 유형 은 필요한 성능과 가용성을 제공합니다.
- 콘텐츠 분석기: Amazon SNS 주제(이전 섹션 참조)에서 새 TS 파일 URL이 수신되면 AWS Lambda 함수가 트리거되어 TS 세그먼트 내의 콘텐츠를 분석합니다. 콘텐츠 분석 작업에는 스포츠 유니폼, 유명인사, 표정, 스폰서 로고, 텍스트 및 오디오 스크립트와 같은 관심 개체가 포함됩니다. Amazon Rekognition , Amazon Transcribe 또는 Amazon Comprehend 와 같은 AWS 서비스는 이러한 분석을 위한 준비된 인터페이스를 제공합니다. Amazon Simple Queue Service(Amazon SQS) 팬아웃 패턴은 콘텐츠 분석의 각 측면에 대해 별도의 Lambda 함수로 요청을 라우팅하는 데 사용되며 결과는 Amazon DynamoDB 에 유지됩니다. Amazon DynamoDB Accelerator(DAX)는 최종 사용자 읽기 요청이 지연 시간으로 처리되도록 하는 데 사용됩니다. 대부분의 시나리오에서 2초마다 한 프레임을 처리하여 비용과 계산 리소스 사용을 최소화하는 것이 좋습니다. 또한, 콘텐츠를 전체적으로 분석하거나 하위 집합만 분석하는 것은 비즈니스 선택이며 시청자 유인 및 만족 전략에 충분합니다.
- 상황에 맞는 개인화: 주어진 뷰어 미디어 플레이어의 위치를 기반으로 그들이 지난 몇 초 동안 본 것을 확인할 수 있습니다. 또한 다음 몇 초 동안 보게 될 내용을 예측하는 것도 가능합니다. (마지막 마일 네트워크 대기 시간 또는 플레이어 버퍼 가정). 이와 유사하게 시청자 식별은 가장 일치하는 인구 통계학적 또는 행동학적 클러스터를 찾기 위해 쿼리되며, 이 두 입력은 시청자에게 전달할 수 있는 최상의 상황별 개인화 도구를 결정하는 데 사용됩니다. 코호트를 정확하고 관련성 있게 유지하려면 주기적으로 새로 고쳐지는 기계 학습 클러스터링 모델이 필요합니다. 또한, 비즈니스 입력을 통해 개인화된 도구를 선택하는 규칙 엔진이 있을 수 있습니다. 예를 들어 인구통계학적 집단 A와 B의 경우 좋아하는 팀이 축구 경기에서 이기면 시청자에게 가장 좋은 것은 무엇일까요? 아마도 보상으로 쿠폰이나 퀴즈를 요청할 수 있겠죠. 그러나 성숙한 구현에서는 이 기능을 기계 학습 분류기로 대체하여 시청자에게 전달할 가장 적절한 도구를 예측할 수 있습니다.
- Personalizer 기기 필터: 시청자가 좋아하는 라이브 이벤트에 몰두할 수 있도록 간섭과 혼란 수준을 전략적으로 최소화하는 것이 중요합니다. 따라서 상황에 맞는 개인화 모듈에서 받은 여러 선택 중에서 보기 경험에 대한 부드러운 조화와 허용 오차를 위해 가장 좋은 하나(또는 두 개)를 제공하는 것은 실용적일 뿐입니다. Amazon Personalize 는 주어진 뷰어에 대해 가장 높은 예측 관련성을 기반으로 이러한 상황별 개인화 도구의 순위를 지정하는 데 활용됩니다.
- 캠페인 관리 인터페이스: 이 솔루션 컨텍스트 내에서만은 아니지만 목표, 지출, 참여 도구, 대상 세그먼트 등의 측면에서 가장 중요한 캠페인 주기를 관리하려면 캠페인 관리 도구와 인터페이스하는 것이 필수적입니다.
다음 다이어그램은 이러한 빌딩 블록을 통합하여 이 솔루션을 제공하는 방법을 보여줍니다.
시청자 참여를 위한 머신 러닝 채택
머신 러닝을 이 솔루션 환경에 통합하는 것은 필수적이지만, 다음과 같은 문제가 발생할 수 있습니다.
- 획일적인 스타일: 콘텐츠, 인구 통계, 행동 다양성 및 기타 영향 요인에 따라 단일 머신 러닝 모델이 모든 시나리오에 대한 결과를 제공하지 못할 수 있습니다. 예를 들어, 같은 축구 경기를 시청하더라도 나라별로 청소년의 기대치와 참여도는 다를 수 있습니다.
- 데이터 비용: 대규모의 다양한 데이터 수집, 분석 및 전체 기계 학습 파이프라인 제공과 관련하여 상당한 비용이 투입되므로 비용 편익 분석이 필수적입니다.
- 대상 그룹의 변동성: 시청자의 행동은 사회 경제적 요인이나 소셜 미디어에 영향을 받아 자주 변동되므로 이해 관계가 불안정한 경우가 많습니다.
- 시청자의 의도: 애플리케이션 클릭 스트림에서 캡처된 뷰어 동작은 진정한 기본 의도를 완전히 반영하지 못할 수 있습니다.
- 운영 비용: 모든 시청자에 대해 ML 기반 참여 서비스를 호출하는 것은 비용 효율적이지 않을 수 있습니다. 시청자를 적절한 인구 통계, 심리 또는 행동 클러스터에 동적으로 태그하여 운영 비용을 줄이는 것이 효율적일 수 있습니다.
- 기회의 창: 라이브 이벤트에 대한 시청자의 즐거움과 몰입의 범위를 얼마나 잘 측정할 수 있을까요?
다음 다이어그램에 요약된 것처럼 이러한 사용 사례에 대한 솔루션을 설계하는 동안 추가로 고려해야 할 몇 가지 원칙이 있습니다.
- 오늘날의 미디어 생태계는 소비자 행동의 예측 불가능성으로 인해 매우 다양해지고 있습니다. 올바른 예측 변수 집합을 캡처하기 위해서는 실시간 콘텐츠의 메타데이터, 이벤트의 특성, 클릭 스트림, 소셜 미디어 등과 같은 다양한 소스에서 데이터를 수집하는 것이 필요합니다.
- 분류기, 세분화 또는 Markov 체인 또는 베이지안 네트워크와 같은 실시간 확률 모델과 같은 올바른 ML 모델 조합으로 발전하는 것이 필요합니다. 종종 시청자 행동은 이력을 반영하지 않을 수 있지만 상태 전환 확률로 더 잘 예측할 수 있기 때문입니다.
- 시청자에게 최소한으로 최고의 사용자 경험을 제공합니다. 주어진 맥락에서 시청자에게 제공되어야 하는 최고의 참여 도구를 결정하려면 순위 메커니즘이 필요합니다.
- 최적화된 모델 교육을 위한 부지런한 데이터 분석, 차원 축소 및 도메인 기반 기능 엔지니어링이 필요합니다.
결론
이번 포스팅에서는 시청자의 관심 범위가 점차 세분화되고 있는 세상에서 라이브 이벤트 중 시청자의 관심을 사로잡는 방법에 대해 설명하였습니다. AWS는 빈번한 라스트 마일 대기 시간으로 인해 더욱 높아진 라이브 이벤트에 대한 관심을 이용하여 상황에 맞는 개인화된 참여를 제공함으로써 시청자를 사로잡는 짧지만 효과적인 솔루션을 제공합니다.
메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글이나 관련 기사 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.