O Netflix Prize foi uma competição aberta realizada pela Netflix, um serviço de streaming de vídeo, para desenvolver o melhor algoritmo de filtragem colaborativa para prever avaliações de filmes pelos usuários. A competição ocorreu de 2 de outubro de 2006 a 21 de setembro de 2009 e foi aberta a qualquer pessoa não ligada à Netflix (incluindo funcionários atuais e antigos e seus parentes próximos) e que não residisse em certos países bloqueados, como Cuba ou Coreia do Norte. O prêmio principal de US$ 1.000.000 foi concedido à equipe BellKor's Pragmatic Chaos, que alcançou uma melhoria de 10,06% em relação ao algoritmo da própria Netflix, o Cinematch, na previsão de avaliações.
Problema e Conjuntos de Dados
A Netflix forneceu um conjunto de dados de treinamento contendo 100.480.507 avaliações que 480.189 usuários deram a 17.770 filmes. Cada avaliação de treinamento era uma quádrupla da forma <usuário, filme, data da avaliação, nota>, onde usuário e filme eram IDs inteiros e as notas eram inteiros de 1 a 5 estrelas. O conjunto de dados de qualificação continha mais de 2.817.131 triplas da forma <usuário, filme, data da avaliação>, com notas conhecidas apenas pelo júri. O algoritmo de uma equipe participante tinha que prever as notas em todo o conjunto de qualificação, mas as equipes eram informadas da pontuação apenas para metade dos dados: um conjunto de quiz de 1.408.342 avaliações. A outra metade, o conjunto de teste de 1.408.789 avaliações, foi usada pelo júri para determinar os potenciais vencedores do prêmio. Apenas os juízes sabiam quais avaliações estavam no conjunto de quiz e quais estavam no conjunto de teste, um arranjo destinado a dificultar a otimização no conjunto de teste.
As previsões submetidas foram pontuadas em relação às notas verdadeiras usando o erro quadrático médio (RMSE), e o objetivo era reduzir esse erro o máximo possível. Embora as notas reais fossem inteiros na faixa de 1 a 5, as previsões submetidas não precisavam ser. A Netflix também identificou um subconjunto de sonda de 1.408.395 avaliações dentro do conjunto de dados de treinamento. Os conjuntos de sonda, quiz e teste foram escolhidos para ter propriedades estatísticas semelhantes. Em resumo, os dados usados no Netflix Prize eram os seguintes: conjunto de treinamento (99.072.112 avaliações, excluindo o conjunto de sonda; 100.480.507 incluindo o conjunto de sonda), conjunto de sonda (1.408.395 avaliações) e conjunto de qualificação (2.817.131 avaliações), consistindo no conjunto de teste (1.408.789 avaliações) e no conjunto de quiz (1.408.342 avaliações).
Para cada filme, o título e o ano de lançamento foram fornecidos em um conjunto de dados separado, mas nenhuma informação foi fornecida sobre os usuários. Para proteger a privacidade do cliente, alguns dados de avaliação para alguns clientes nos conjuntos de treinamento e qualificação foram deliberadamente perturbados, excluindo avaliações, inserindo avaliações e datas alternativas e modificando datas de avaliação. O conjunto de treinamento foi construído de modo que o usuário médio avaliasse mais de 200 filmes, e o filme médio fosse avaliado por mais de 5.000 usuários, mas havia grande variação: alguns filmes tinham apenas 3 avaliações, enquanto um usuário avaliou mais de 17.000 filmes. Houve alguma controvérsia em relação à escolha do RMSE como métrica definidora, pois foi alegado que mesmo uma melhoria de 1% no RMSE poderia resultar em uma diferença significativa na classificação dos 10 filmes mais recomendados para um usuário.
Prêmios
Os prêmios foram baseados na melhoria em relação ao algoritmo da própria Netflix, chamado Cinematch, ou em relação à pontuação do ano anterior se uma equipe tivesse feito uma melhoria além de um certo limite. Um algoritmo trivial que previsse para cada filme no conjunto de quiz sua nota média dos dados de treinamento produzia um RMSE de 1,0540. O Cinematch usava modelos estatísticos lineares diretos com muita condicionamento de dados, e seu desempenho havia estagnado em 2006. Usando apenas os dados de treinamento, o Cinematch pontuou um RMSE de 0,9514 nos dados de quiz, aproximadamente uma melhoria de 10% sobre o algoritmo trivial, e teve desempenho semelhante no conjunto de teste, com 0,9525. Para ganhar o prêmio principal de $ 1.000.000, uma equipe participante tinha que melhorar isso em mais 10%, alcançando 0,8572 no conjunto de teste, o que correspondia a um RMSE de 0,8563 no conjunto de quiz.
Enquanto nenhuma equipe ganhasse o prêmio principal, um prêmio de progresso de $ 50.000 era concedido todos os anos pelo melhor resultado até então. Para ganhar esse prêmio, um algoritmo tinha que melhorar o RMSE no conjunto de quiz em pelo menos 1% em relação ao vencedor anterior do prêmio de progresso (ou em relação ao Cinematch no primeiro ano). Se nenhuma submissão tivesse sucesso, o prêmio de progresso não era concedido naquele ano. Para ganhar um prêmio de progresso ou o prêmio principal, um participante tinha que fornecer o código-fonte e uma descrição do algoritmo ao júri dentro de uma semana após ser contatado e, após a verificação, o vencedor também tinha que fornecer uma licença não exclusiva à Netflix. A Netflix publicaria apenas a descrição, não o código-fonte, do sistema. Uma equipe poderia optar por não reivindicar um prêmio para manter seu algoritmo e código-fonte em segredo. O júri manteve suas previsões em segredo dos outros participantes. As equipes podiam enviar quantas tentativas de previsão de notas quisessem, com submissões originalmente limitadas a uma vez por semana, mas rapidamente modificadas para uma vez por dia. A melhor submissão de uma equipe até o momento contava como sua submissão atual.
Uma vez que uma equipe conseguisse melhorar o RMSE em 10% ou mais, o júri emitiria um último aviso, dando a todas as equipes 30 dias para enviar suas submissões. Somente então a equipe com a melhor submissão era solicitada a fornecer a descrição do algoritmo, o código-fonte e a licença não exclusiva e, após verificação bem-sucedida, declarada vencedora do prêmio principal. A competição duraria até que o vencedor do prêmio principal fosse declarado, mas se ninguém tivesse recebido o prêmio principal, teria durado pelo menos cinco anos (até 2 de outubro de 2011), após o que poderia ter sido encerrada a qualquer momento a critério exclusivo da Netflix.
Progresso ao Longo dos Anos
A competição começou em 2 de outubro de 2006. Em 8 de outubro, uma equipe chamada WXYZConsulting já havia superado os resultados do Cinematch. Em 15 de outubro, havia três equipes que haviam superado o Cinematch, uma delas por 1,06%, o suficiente para se qualificar para o prêmio anual de progresso. Em junho de 2007, mais de 20.000 equipes haviam se registrado para a competição de mais de 150 países, e 2.000 equipes haviam submetido mais de 13.000 conjuntos de previsões.
Durante o primeiro ano da competição, um punhado de líderes trocou o primeiro lugar. Os mais proeminentes incluíam WXYZConsulting, uma equipe de Wei Xu e Yi Zhang, que foi líder durante novembro e dezembro de 2006; ML@UToronto A, uma equipe da Universidade de Toronto liderada pelo Prof. Geoffrey Hinton, líder durante partes de outubro a dezembro de 2006; Gravity, uma equipe de quatro cientistas da Universidade de Tecnologia de Budapeste, líder durante janeiro a maio de 2007; e BellKor, um grupo de cientistas da AT&T Labs, líder desde meados de 2007. A competição viu a aplicação de várias técnicas de aprendizado de máquina, incluindo redes neurais e abordagens de aprendizado profundo, que mais tarde foram influentes no campo mais amplo da inteligência artificial.
Legado e Impacto
O Netflix Prize demonstrou a eficácia de métodos de conjunto e técnicas de fatoração de matrizes na filtragem colaborativa. Ele estimulou pesquisa acadêmica e industrial significativa em sistemas de recomendação, influenciando desenvolvimentos posteriores em IA generativa e modelos de linguagem em larga escala. A competição também aumentou a conscientização sobre questões de privacidade no compartilhamento de dados, pois pesquisadores mais tarde mostraram que os dados anonimizados poderiam ser reidentificados, levando a um processo judicial em 2010 e a mudanças subsequentes na forma como as empresas lidam com dados de usuários. O prêmio é frequentemente citado como um evento marcante na história do aprendizado de máquina e da resolução de problemas por crowdsourcing, e inspirou competições semelhantes em outros domínios.
Conclusão
O Netflix Prize terminou em 21 de setembro de 2009, quando o prêmio principal foi concedido à BellKor's Pragmatic Chaos, uma equipe que combinou os esforços de BellKor, Pragmatic Theory e BigChaos. O algoritmo vencedor alcançou um RMSE de 0,8567 no conjunto de teste, uma melhoria de 10,06% sobre o Cinematch. A competição não apenas avançou o estado da arte em algoritmos de recomendação, mas também destacou o potencial da inovação aberta e a importância da qualidade dos dados e da privacidade na era digital. Sua influência persiste nos sistemas modernos de recomendação usados por serviços de streaming e plataformas de comércio eletrônico.