O blog da AWS
A PBS oferece experiências personalizadas aos espectadores com o Amazon Personalize
A Public Broadcasting Service (PBS) queria construir um mecanismo de recomendação inteligente (SRE) capaz de fazer sugestões de alta qualidade aos espectadores com base em uma infinidade de fatores.
Para garantir o sucesso, a PBS decidiu fazer parceria com uma consultoria em nuvem com experiência em inteligência artificial (IA) e machine learning (ML) e profundo conhecimento da plataforma Amazon Web Services (AWS).
A ClearScale, parceira de serviços de nível premier da AWS com 11 competências da AWS, como machine learning, organizações sem fins lucrativos e dados e análise, era uma excelente opção para a PBS. A empresa ofereceu à organização sem fins lucrativos exatamente o que ela precisava para aprimorar significativamente as experiências dos espectadores na era do streaming.
“Trabalhamos com a ClearScale para configurar nossas soluções iniciais e pipelines de dados”, afirmou Mikey Centrella, diretor de gerenciamento de produtos da PBS. “Precisávamos aproveitar as informações com maior rapidez e lançar algo em questão de meses, e não em anos. Os especialistas da empresa configuraram a Nuvem AWS e os serviços correspondentes para utilizar o Amazon Personalize, o que nos poupou grande esforço e milhares de horas de engenharia.”
A PBS, organização sem fins lucrativos de Arlington, Virgínia, fundada em 1969, transmite programas educacionais, de notícias e entretenimento para mais de 100 milhões de espectadores nos EUA e mais de 32 milhões de pessoas on-line. Atualmente, a PBS tem aproximadamente 330 emissoras de televisão associadas, que distribuem conteúdo da mais alta qualidade para todos os 50 estados dos EUA, Porto Rico, Ilhas Virgens (EUA), Guam e Samoa Americana.
O desafio
Como muitas das principais plataformas de mídia e streaming da atualidade, a PBS queria elevar o nível da experiência geral do usuário. A organização esperava oferecer ao público melhores recomendações de programação na aplicação com base em uma infinidade de fatores, como deep links entre títulos, tendências atuais de popularidade, padrões de comportamento do usuário e muito mais, a fim de aumentar o engajamento e a fidelidade no longo prazo.
Aparentemente, criar esse mecanismo de recomendação parece complexo. No entanto, a realidade é que a criação desses mecanismos não exige experiência em ciência de dados nem domínio de IA/ML. As empresas só precisam encontrar a combinação certa de ferramentas e serviços nativos de nuvem e, depois, alimentá-las com os dados. Com o kit de ferramentas certo, esses serviços deixam de levar anos para serem desenvolvidos.
Felizmente, a AWS oferece soluções gerenciadas de IA/ML, que permitem aos engenheiros aproveitar modelos pré-construídos e automatizar grande parte do esforço necessário para criá-los, treiná-los e ajustá-los. O desafio está em saber como maximizar o que a nuvem oferece, especialmente considerando a rapidez com que as coisas mudam.
É por isso que a PBS recorreu à ClearScale, líder em MLOps, que é o tipo de conhecimento técnico necessário para criar o sistema de recomendação ideal e mantê-lo ao longo do tempo. Juntas, a PBS e a ClearScale decidiram avançar com uma solução baseada na AWS que funciona com o Amazon Personalize.
Figura 1: Diagrama da arquitetura principal.
Para construir um sistema de recomendação verdadeiramente diferenciado, a PBS precisava das melhores e mais recentes tecnologias de nuvem disponíveis, além da orientação de implementação de especialistas.
A ClearScale apresentou um roteiro detalhado para lidar com o projeto do sistema de recomendação da PBS, que incluía operações de dados, operações de machine learning e interface de usuário demonstrativa.
Operações de dados
Primeiro, a ClearScale e a PBS determinaram juntas quais fontes de dados alimentariam futuros modelos de ML:
- Gerente de mídia da PBS
- Perfis de usuário da PBS
- Metadados do Google Analytics
O PBS Media Manager é um sistema de gerenciamento de conteúdo que as estações associadas da PBS usam para publicar e compartilhar títulos em diferentes plataformas. O Media Manager também contém metadados avançados, como data de lançamento, tags e autor de um produto, e vem com regras que contribuem para decidir o que é mostrado aos espectadores nos resultados da pesquisa.
Por exemplo, o Media Manager leva em consideração a idade ou a localização do espectador antes de fazer uma recomendação. Dessa forma, crianças pequenas não encontram acidentalmente títulos para públicos mais velhos, ou os espectadores de uma região não recebem uma série de notícias de outro local do outro lado do país.
Os perfis de usuário da PBS contêm detalhes valiosos sobre espectadores individuais, como interações anteriores com as aplicações da PBS, listas de favoritos, horários e histórico de visualizações. Portanto, os perfis de usuário contêm algumas das evidências mais óbvias do que as pessoas gostam de assistir.
A ClearScale e a PBS também decidiram incorporar informações contextuais do Google Analytics para ter uma compreensão mais abrangente de quem assiste ao conteúdo da PBS e onde. O Google Analytics tem dados não sigilosos sobre pessoas que podem ser úteis para fazer inferências a respeito das preferências de visualização delas.
A plataforma também pode ver quais tipos de dispositivo as pessoas usam para assistir ao conteúdo, o que serve como outro ponto de dados a ser considerado por um sistema de recomendação. Por exemplo, um espectador pode assistir às notícias da PBS no celular durante uma viagem de trem para o trabalho. Mas, em casa, ele pode assistir a programas na TV com os filhos.
Para consolidar dados das duas primeiras fontes, a ClearScale configurou um ambiente de protótipo para um banco de dados relacional Amazon Aurora para PostgreSQL. O banco de dados era totalmente isolado dos sistemas de produção da PBS a fim de garantir a máxima resiliência para processos de extração, transformação e carregamento (ETL). Os dados do Google Analytics foram capturados por meio de um pipeline de ingestão e armazenados no Amazon Simple Storage Service (Amazon S3).
Depois, a ClearScale implementou um data pipeline começando com o AWS Glue, solução nativa de nuvem sem servidor para rastrear, validar e transformar dados de diversas fontes. A ClearScale também configurou o AWS Glue para tornar os dados consumíveis formatando-os no Parquet e descarregando-os em um data lake. Todas essas etapas são orquestradas com o uso do AWS Step Functions, possibilitando que a PBS se beneficie do gerenciamento automatizado do fluxo de estado e do tratamento de exceções.
O AWS Lake Formation e o Catálogo de Dados do AWS Glue foram cruciais para proteger o data lake da PBS e direcionar outros serviços de nuvem aos armazenamentos de dados certos. Os dados no lake podem ser acessados de duas maneiras, ambas com o uso do SQL padrão:
- A análise sem servidor com o Amazon Athena é melhor para tarefas de exploração ad hoc quando o custo é o fator mais importante.
- Um data warehouse robusto baseado no Amazon Redshift para consultas regulares e bem definidas com requisitos rígidos de SLA.
Com a infraestrutura para operações de dados implementada, a ClearScale estava pronta para lidar com o lado de MLOps do projeto.
Operações de machine learning
A ClearScale ajudou a PBS a estabelecer os quatro estágios principais do ciclo de vida de ML:
- Desenvolvimento de modelos
- Treinamento
- Inferência
- Avaliação
Felizmente, a AWS oferece às empresas a capacidade de aproveitar o poder da ciência de dados e do machine learning nesses quatro estágios sem precisar criar modelos do zero.
Os engenheiros de dados da ClearScale criaram a versão inicial do mecanismo de recomendação inteligente baseado no Amazon Personalize, lembrando que os engenheiros da PBS acabariam assumindo a propriedade total. A ClearScale usou o Amazon FSx para Lustre com o objetivo de disponibilizar dados para o sistema à medida que ele é carregado. A equipe também integrou o Amazon SageMaker Studio como o ambiente de desenvolvimento que os engenheiros de ML usam para manter modelos.
No centro do trabalho de pré-produção do modelo estão o AWS Lambda, o Amazon Athena e o AWS Step Functions. A ClearScale os conectou com o Amazon Personalize para buscar dados, carregar alterações e treinar o modelo.
Com esses serviços implementados, a ClearScale selecionou as principais fórmulas (que são algoritmos do Amazon Personalize ajustados a casos de uso específicos) para o mecanismo de recomendação inteligente da PBS e construiu quatro modelos com base em diferentes requisitos por entrada e saída de recomendações:
- Modelo ML de contagem de popularidade: sugere programas de TV com base na popularidade com o público geral. Esse é o modelo mais simples em escopo, mas é importante. Como outros modelos se aprofundam em dados anteriores, eles sugerem programas relevantes para o usuário, mas distribuídos ao longo do histórico.
.
No setor de mídia e entretenimento, no qual o objetivo é promover títulos recentes, esse modelo ajuda outras pessoas a não se aprofundar muito. Ao limitar a variedade de dados levados em consideração à semana anterior, é possível identificar tendências recentes e incrementá-las com previsões de outros modelos. Para manter essas tendências atualizadas, esse modelo é retreinado diariamente.
. - Modelo de ML de relacionamento entre itens: sugere programas de TV com base na filtragem colaborativa a fim de recomendar programas mais semelhantes àqueles com os quais o espectador interagiu antes. Essa fórmula (SIMS) se aprofunda para revelar relações entre programas, inclusive os que não são evidentes para a inteligência humana à primeira vista nem são algoritmos lineares e estatísticos tradicionais.
. - Modelo de ML do histórico de interações: sugere programas de TV com base nos padrões comportamentais do usuário usando o aprendizado ativo. Com o aprendizado ativo, o modelo é fornecido com as atividades do usuário na mesma sessão em que as recomendações são fornecidas. Isso permite que ele descubra novas regras em segundos sem passar por um retreinamento completo, o que levaria horas.
. - Modelo de ML de classificação personalizada: classifica os programas de TV com base nas preferências aparentes do usuário. Em vez de buscar itens específicos, esse algoritmo considera os fornecidos pela PBS (resumo “Melhores programas de Natal”, por exemplo) e os retorna em uma ordem que reflita as preferências do usuário.
Comparação de modelos de machine learning | ||||
Critérios | Contagem de popularidade | Relacionamento entre itens | Histórico de interações | Classificação personalizada |
Padrões | Popularidade | Similaridade | Comportamento | Comportamento |
Dimensionalidade | Grupos de 1 mil | Grupos de 10 mil | Grupos de 100 mil | Grupos de 10 mil |
Performance | A melhor | Mais alta | Boa | Mais alta |
Cobertura | Baixa | Média | Alta | Média |
Precisão | Boa | Mais alta | A melhor | Mais alta |
Retreinamento | Semanalmente | Semanalmente | On-line Mensalmente |
Semanalmente |
Fórmula | Contagem de popularidade | SIMS | Personalização do usuário | Classificação personalizada |
A ClearScale implantou cada um desses modelos na API REST unificada do Amazon Personalize, com o apoio do Amazon API Gateway, para disponibilizar as descobertas do mecanismo de recomendação da PBS para as várias plataformas que atendem à aplicação de streaming da empresa. Os controles de acesso baseiam-se no Amazon Cognito e no AWS Identity and Access Management (IAM) para garantir que os espectadores tenham acesso somente aos seus próprios dados.
A API de cada modelo consiste em quatro microsserviços estreitamente conectados:
- API de recomendações em tempo real: recebe informações do usuário e, em alguns segundos, oferece recomendações sobre qual grande programa o atrairá e entreterá em breve.
- API de notificações personalizadas: faz o mesmo que o último microsserviço utilizado em combinação com canais de marketing fora da sessão, como SMS, e-mail ou notificações por push.
- API de ciclo de feedback: processa o feedback dos espectadores em forma de “polegar para cima” ou “polegar para baixo” a fim de determinar a satisfação deles com as recomendações e, portanto, a respectiva exatidão.
- API de gerenciamento de configuração: possibilita que os administradores da PBS ajustem rapidamente o mecanismo de recomendação sem reimplantar nenhuma parte do sistema.
O mundo não é estático em nenhum sentido, tampouco o machine learning. À medida que o ambiente evolui, os modelos treinados deixam de funcionar tão bem quanto funcionavam após a implantação. Em 99% dos casos, os modelos se degradam com o tempo, diminuindo o valor comercial e a satisfação do usuário final. Por exemplo, o catálogo de itens recebe novos títulos que nunca são vistos pelo modelo.
Na melhor situação, o modelo se recusaria a recomendar o título, introduzindo vieses. Na pior situação, o modelo forneceria previsões incorretas que ocasionariam decisões erradas. Para garantir que o modelo não fique estagnado, ele deve ser continuamente retreinado com base nos dados mais atualizados e, ocasionalmente, mudar sua forma para se adequar às novas regras do jogo.
O Model Monitor personalizado foi adicionado ao Amazon CloudWatch para avaliar uma métrica de precisão que caracterizava a capacidade do sistema de fazer boas recomendações aos espectadores. Ele não apenas monitora métricas, mas também toma decisões automatizadas com base nelas. Por exemplo, ele retreina o modelo quando ele está próximo de determinado limite, para que o valor da métrica nunca caia abaixo dele, deixando os espectadores satisfeitos.
A prova de conceito (PoC) da ClearScale para a PBS gerou 0,0706 em uma métrica de “Precisão em 10”. Esse número significa que, a cada 10 títulos recomendados, pelo menos 1 terá 71% de probabilidade de ser favorecido pelo usuário. Vale dizer que muitos outros sistemas de recomendação só conseguem atingir um resultado de 0,03.
Interface de usuário demonstrativa
A última fase do projeto foi criar um protótipo de interface de usuário (IU) que possibilitaria aos espectadores da PBS personalizar suas contas de uma forma simples e visualmente envolvente. A ClearScale criou uma aplicação web de demonstração que reutilizou a lógica de negócios existente e aproveitou o novo mecanismo de recomendação.
A aplicação de demonstração foi desenvolvida pela TypeScript, ReactJS e Sass, para a interface do usuário, bem como pela Effector, para gerenciamento de dados (lado do cliente), e React-Query (integração de API). Ela cumpre o propósito de protótipo funcional, refletindo a singularidade da PBS com as diretrizes de estilo e marca aplicadas. Devido à capacidade de resposta, herdada nativamente da Material UI, a aplicação de demonstração funciona igualmente bem em desktops, tablets e celulares.
A interface do usuário de demonstração incluiu os seguintes componentes:
- “Web Hosting” (Hospedagem na web) oferece a aplicação de demonstração aos espectadores e a torna acessível independentemente da plataforma.
- “Unified Auth” (Autenticação unificada) possibilita aos espectadores da PBS fazer login com as credenciais existentes e disponibilizar automaticamente históricos de exibição, preferências e outros dados de personalização ao SRE.
- “Title Card” (Cartão de título) exibe detalhes sobre um programa quando o mouse é passado sobre ele no catálogo, bem como uma classificação indicando se o título é relevante para o usuário.
- “Content Player” (Reprodutor de conteúdo) possibilita aos espectadores ver as recomendações na aplicação de demonstração.
- “Top Picks for {User}” (Principais seleções para {Usuário}) exibe uma lista personalizada para os espectadores com base na API de recomendações em tempo real e no modelo de ML do histórico de interações.
- “Feedback Loop” (Ciclo de feedback) possibilita aos espectadores avaliar a relevância das recomendações fornecidas pelo sistema e ver em tempo real como elas afetam o conteúdo oferecido.
- “Top {K} Over Last Week” (Melhores {K} na última semana) exibe títulos recentes e populares em todo o público da PBS com base no modelo de ML de contagem de popularidade.
Os benefícios
Hoje, a PBS tem uma plataforma eficaz de MLOps e um sistema de recomendação que pode ser desenvolvido no futuro. O pipeline de dados que a ClearScale configurou limpa, valida e enriquece os dados brutos que a PBS acumulou ao longo de 50 anos de história. Os dados que fluem para o sistema de recomendação da organização são consistentes, precisos e completos, o que os torna uma fonte única de verdade para os empreendimentos atuais e futuros orientados por IA.
O novo mecanismo de recomendação também oferece à PBS a capacidade de proporcionar experiências mais personalizadas aos espectadores com base em uma infinidade de fatores. Os quatro modelos criados pela ClearScale incorporaram variáveis como popularidade em voga, relações entre títulos e comportamento do usuário, a fim de chegar a recomendações que provavelmente agradarão aos espectadores.
Por fim, a aplicação web de demonstração que a ClearScale desenvolveu para a PBS mostra o potencial do novo mecanismo de recomendação em uma interface amigável. Isso oferece às pessoas a oportunidade de encontrar rapidamente títulos de que gostam e compartilhar feedback sobre recomendações específicas, possibilitando que a PBS ajuste as experiências dos espectadores.
Em um momento em que grandes empresas de radiodifusão estão competindo pela audiência em várias aplicações de streaming, a ClearScale ajudou a PBS a criar sua própria solução baseada em ML que conta com ferramentas robustas nativas de nuvem da AWS. A PBS agora tem uma plataforma de MLOps escalável que pode ser usada para oferecer melhores experiências para milhões de espectadores diariamente.
Este artigo foi traduzido do Blog da AWS em Inglês.
ClearScale: parceira da AWS em destaque
A ClearScale é uma parceira de consultoria de nível premier da AWS que ajuda os clientes a projetar, criar, implantar e gerenciar arquiteturas de nuvem complexas no prazo e dentro do orçamento.