Qual é o tamanho do YouTube?
(ethanzuckerman.com)- Sem um denominador para estimar a plataforma como um todo, até resultados de pesquisa sobre desinformação ou impacto das recomendações tendem a perder contexto, então a equipe tentou estimar o tamanho total do YouTube com uma amostra aleatória
- Os IDs de vídeos do YouTube têm 11 caracteres e o espaço de endereços possível é de 2^64, então encontrar vídeos válidos apenas testando URLs aleatórias é praticamente impossível
- Com a abordagem de “drunk dialing” e técnicas de otimização, a equipe coletou ao longo de vários meses mais de 10 mil vídeos aleatórios reais e estima que hoje existam cerca de 13,325 bilhões de vídeos no YouTube
- A análise da amostra indica que só em 2023 foram enviados mais de 4 bilhões de vídeos, e a mediana de visualizações foi de 39, revelando como a cauda longa do YouTube é enorme
- O Tubestats tenta continuar atualizando essa estimativa de escala, mas permanece também a restrição ética de não expor URLs de vídeos que, embora públicos, na prática quase nunca eram descobertos
O problema do denominador que dificulta a pesquisa sobre o YouTube
- Pesquisas sobre redes sociais tendem a se concentrar em encontrar fenômenos chamativos, como desinformação ou discurso de ódio, mas sem saber qual é a proporção disso na plataforma inteira, fica difícil avaliar a escala
- Por exemplo, dá para contar resultados de buscas por termos como “white genocide” ou “ivermectin”
- O relatório da Avaaz de agosto de 2020 sobre desinformação de COVID contabilizou 3,8 bilhões de visualizações em um ano, mas sem o denominador do total de visualizações da plataforma é difícil dizer se isso é muito ou pouco
- Reddit e Twitter, por um tempo, ofereceram acesso a dados que permitiam estimar a plataforma como um todo
- No Reddit, o Pushshift permitia coletar todas as postagens e comparar o tamanho entre comunidades
- Depois que o acesso público ao Pushshift foi bloqueado no verão de 2023, o Redditmap.social passou a poder usar apenas dados gerados no início daquele ano
- O Twitter oferecia pela API de pesquisa uma amostra de um décimo ou um centésimo de todos os tuítes, mas depois bloqueou esse acesso e passou a cobrar caro por um acesso mais limitado
É difícil obter uma amostra representativa no YouTube
- O YouTube é uma plataforma gigantesca usada por quase todos os usuários de internet
- Segundo o Pew, 93% dos adolescentes usam YouTube
- Os serviços mais próximos são TikTok, com 63%, e Snapchat, com 60%
- Mesmo com uma API documentada, não existe um bom método para obter uma amostra aleatória representativa do YouTube inteiro
- As pesquisas anteriores sobre YouTube dependiam principalmente de duas abordagens
- Coletar e analisar todos os vídeos de canais de usuários selecionados
- Começar de um vídeo específico e coletar seguindo as recomendações de vídeos relacionados
- As duas abordagens podem servir para pesquisas relevantes, mas não bastam para criar uma amostra de todos os vídeos do YouTube ou calcular o tamanho da plataforma
“Drunk dialing”: testando URLs aleatórias
- Jason Baumgartner propôs usar a InnerTube, API não oficial do YouTube, para testar URLs aleatórias
- O ID de vídeo nas URLs do YouTube é a string de 11 caracteres que aparece depois de
watch?v=- Os 10 primeiros caracteres podem ser
a-z,A-Z,0-9,_,- - O último caractere só pode assumir um de 16 valores
- O número de endereços possíveis no YouTube é 2^64, cerca de 18,4 quintilhões
- Os 10 primeiros caracteres podem ser
- Mesmo supondo que existam 1 bilhão de vídeos no YouTube, a chance de uma URL aleatória ser válida seria de cerca de 1 em 18,4 bilhões
- A equipe chamou essa abordagem de “drunk dialing”, e Jason Baumgartner encontrou um desvio que aumentou a eficiência em cerca de 32.000 vezes
- Kevin Zheng escreveu um script de exploração e coletou ao longo de meses mais de 10 mil vídeos aleatórios reais do YouTube
Escala e distribuição do YouTube vistas por uma amostra aleatória
- A estimativa atual do tamanho do YouTube é de 13,325 bilhões de vídeos, atualizada a cada poucas semanas em tubestats.org
- Observando a idade dos vídeos aleatórios, dá para calcular o ritmo de crescimento do YouTube
- Estima-se que só em 2023 tenham sido publicados mais de 4 bilhões de vídeos no YouTube
- A distribuição de visualizações tem uma cauda longa muito forte
- A mediana de visualizações dos vídeos no YouTube é de 39
- O YouTube gosta de recomendar vídeos com mais de 10 mil visualizações
- Vídeos com mais de 10 mil visualizações representam cerca de 4% do conjunto de dados, mas concentram uma grande parcela das visualizações totais do YouTube
- Os vídeos aleatórios coletados também são usados para estimar a distribuição por idioma
- Kevin Zheng conectou o script de busca a vários sistemas de detecção de idioma
- A estimativa é defensável, mas não é perfeita
O método do hífen, mais eficiente
- Como a busca por URLs aleatórias cobre todo o espaço de endereços, ela pode servir de referência para validar a aleatoriedade de outros métodos de amostragem
- A equipe concluiu que, se outra forma de gerar listas de vídeos produzir resultados parecidos com os da busca aleatória, ela pode ser considerada “plausivelmente aleatória”
- Um método descoberto por Jia Zhou e outros em 2011 funciona como uma forma mais eficiente de coletar amostras
- Gera-se uma string de 5 caracteres em que um dos caracteres é um hífen
- O autocompletar do YouTube completa essa URL e, se existir, retorna vídeos correspondentes
- Atualmente, Kevin Zheng consulta o YouTube periodicamente com esse dash method para manter o painel do Tubestats
Vídeos de cauda longa e restrições éticas
- A amostra aleatória é útil não só para estudar influenciadores bem-sucedidos, mas também para observar como criadores na base da cauda longa da mídia gerada por usuários usam as ferramentas
- A maioria dos vídeos coletados foi vista por apenas algumas dezenas de pessoas
- Publicar as URLs pode expor ao escrutínio público vídeos que são “públicos”, mas que na prática quase não eram encontrados
- Por isso, o artigo não inclui a lista de URLs dos vídeos descobertos
- Ryan McGrady liderou o trabalho de assistir manualmente a 1.000 vídeos aleatórios e codificá-los à mão
- O artigo relacionado foi publicado no Journal of Quantitative Description, e a apresentação dos resultados dessa codificação manual está resumida neste texto de Ryan
Por que manter o Tubestats
- A equipe pretende manter o Tubestats no ar pelo maior tempo possível
- É possível que o YouTube se oponha a esse recurso ou ao método de geração dele
- Grandes plataformas de mídia gerada por usuários são uma parte importante da esfera pública digital, então dados de alto nível sobre o que existe na plataforma, quem cria e quem é alcançado deveriam ser divulgados regularmente
1 comentários
Opiniões do Hacker News
A forma de amostragem é realmente engenhosa, e meus parabéns aos autores. Quando eu estava no Pew, tentamos mapear o YouTube por meio de uma caminhada aleatória seguindo o endpoint de "related videos" da API do YouTube e, depois de mais ou menos um ano, parecia que havíamos chegado a um ponto de saturação; mas, olhando para a escala apresentada aqui, parece haver uma cauda longa bem extensa existindo abaixo do radar.
Assim que publicamos a pesquisa, o Google começou quase imediatamente a restringir a API, então é bom ver que ainda há gente continuando esse tipo de pesquisa com scraping à moda antiga. Na época, nossa análise era no nível dos canais e focava apenas em canais populares, mas também é interessante que alguns números do TubeStats sejam bastante parecidos com os que encontramos. Por exemplo, a distribuição de idiomas: https://www.pewresearch.org/internet/2019/07/25/a-week-in-th...
Eles capturam 100 peixes, marcam-nos, esperam uma semana e depois capturam outros 100 para contar quantos deles estão marcados
Esta é uma abordagem interessante para atacar uma mitigação do problema dos tanques alemães https://en.m.wikipedia.org/wiki/German_tank_problem
A solução ideal provavelmente seria aumentar o espaço de endereçamento para que uma amostra aleatória não consiga reunir dados suficientes para chegar a uma conclusão estatisticamente significativa. Deve haver outras boas soluções que tentem alterar a distribuição de várias maneiras, mas, se a amostra for realmente aleatória, as contramedidas nessa direção serão limitadas
Por exemplo, se os endereços vão de /v=0x00 a 0xff, mas na prática só são usados de f0 a ff, ao presumir que os vídeos estão distribuídos aleatoriamente a estimativa não fica sempre enviesada?
Ou seja, seria como aplicar um filtro arbitrário ao espaço endereçável e depois atribuir endereços. Uma amostra aleatória feita do mesmo jeito erraria na mesma proporção, mas eu não teria como saber a esparsidade aplicada pelo meu filtro
Também vale conferir o dataset "YouTube dislikes": https://clickhouse.com/docs/en/getting-started/example-datas...
Ele tem esse nome porque foi um esforço de arquivamento para coletar informações antes da remoção do recurso de dislikes. Pode ser usado para encontrar coisas como os vídeos mais controversos ou os principais vídeos com descrições em determinado idioma
O texto também diz: “O YouTube pode se opor a este recurso ou ao método usado para criá-lo. Como contraponto, acreditamos que esse tipo de dado de alto nível deveria ser divulgado regularmente para todas as grandes plataformas de mídia gerada por usuários. Essas plataformas são uma das partes mais importantes da esfera pública digital, e precisamos de muito mais informação sobre o que existe nelas, quem cria esse conteúdo e quem ele alcança”
O governo deveria regulamentar essas plataformas para que exponham esse tipo de estatística, permitindo que órgãos de estatística as coletem
Eu queria saber quantos dados o YouTube tem, mas esse número não existia. Fazendo uma estimativa aproximada com as estatísticas fornecidas, a duração média dos vídeos fica em torno de 500 segundos
Se assumirmos um bitrate de 400 KB/s e 13 bilhões de vídeos, dá 2,7 exabytes. 400 KB/s é um valor obtido de alguns vídeos FHD 24–30 fps que baixei diretamente, então é uma estimativa bem grosseira. O YouTube provavelmente codifica trechos com menor quantidade perceptível de informação em bitrates mais baixos, e os vídeos têm resoluções e taxas de quadros variadas, cuja distribuição também mudou ao longo da história do serviço. Se assumirmos que todos os vídeos são 4K a um bitrate de 1,5 MB/s, dá 10 exabytes
Essa estimativa joga para baixo o espaço de armazenamento necessário para o YouTube. Vídeos populares devem ficar em vários data centers e ser armazenados tanto em VP9 quanto em AV1. Por outro lado, se vídeos impopulares forem comprimidos ou transcodificados sob demanda a partir de outros formatos, essa estimativa também poderia estar alta, mas isso parece pouco provável
400 KB/s, os 3,2 Mbps comumente usados em codificação de vídeo, é bem baixo para FHD em qualidade original, ou seja, para uploads em 1080p. O número para vídeos 4K fica bem mais próximo de um upload original médio
Também é preciso considerar que o YouTube comprime, no mínimo, em dois codecs de vídeo: H.264 e VP9. Para cada codec há todas as resoluções, de 320p até 1080p ou mais, dependendo da qualidade do upload original. Muitos vídeos populares e vídeos 4K também são codificados em AV1. Alguns chegam a ter HEVC para vídeos surround 360 graus. Você leu certo. Existe H.265 HEVC no YouTube
E tudo isso nem inclui replicação nem armazenamento redundante. Eu não me surpreenderia se o total passasse facilmente de 100 EB. É o tamanho de 100 Dropboxes de 2020
Por outro lado, pode haver uma enorme quantidade de vídeos com visualizações absurdamente baixas. E, ainda por cima, é preciso lembrar que o YouTube teve de criar até seus próprios chips de transcodificação. É literalmente complicado
Há 10 anos eu sabia a resposta para essa pergunta e ajudei o pessoal de armazenamento a reduzir custos. Há alguns dias soube que uma dessas pessoas, R.L., faleceu em fevereiro deste ano. RIP
Esse cálculo não incluía múltiplas versões codificadas nem armazenamento dos originais
Há um site associado como resultado deste texto: https://tubestats.org/
Antigamente, o Google costumava fazer em algumas entrevistas de emprego uma pergunta de escalabilidade relacionada ao YouTube. Em geral ela acabava levando ao problema de sincronizar dados de logs em uma infraestrutura distribuída em crescimento, e resultava em algo ridículo do tipo Big-O(f(n)), quase difícil até de explicar verbalmente
Fonte: fiz algumas entrevistas no Google
O autor escreveu que usou “cheats”. Dependendo do que isso faz, a suposição iid de que as amostras são independentes pode ser quebrada
Se for algo parecido com amostragem por bola de neve, pode gerar uma taxa de sucesso “excessiva” e inflar os números. Há um trecho que diz: “Jason encontrou alguns cheats que tornam esse método cerca de 32.000 vezes mais eficiente, de modo que nossas ‘ligações’ se completam com muito mais frequência”
Ele diz: “Isso foi descoberto por Jia Zhou et al. em 2011 e é muito mais eficiente do que nosso método ingênuo. Se você criar uma string de cinco caracteres em que um deles é um hífen, o YouTube autocompleta a URL e, se ela existir, retorna o vídeo correspondente”
Mesmo sem saber como o checksum é gerado, dá para tentar todos os valores dele para uma amostra do espaço real de IDs
Por exemplo, você chama a API para criar uma playlist contendo os IDs x, x+1, x+2, ... e depois busca a lista; então ela contém apenas x+2, que é o ID alocado
Para um iniciante em estatística como eu, seria necessária uma prova de que, mesmo usando cheats e autocomplete, a independência das amostras não é quebrada e a amostragem permanece o mais aleatória possível
Ligar bêbado para números aleatórios e, toda vez que você disca errado, ter alguém como uma telefonista ajudando você a se conectar com alguém não parece algo aleatório
Mas não li o artigo de 85 páginas. Talvez isso tenha sido tratado lá
É um conjunto de dados interessante. O artigo deixa uma impressão um pouco equivocada sobre as estatísticas de canais
Pelo que entendi, ao analisar o número de inscritos, eles não fazem reponderação para corrigir a tendência de amostragem. Se a amostra for uma pequena parte da população total, a probabilidade de um canal específico aparecer é proporcional ao número de vídeos públicos desse canal, então seria preciso ponderar aproximadamente por 1/número de vídeos por canal
Para quem estiver curioso, a forma de estimativa deles é mais ou menos esta
Eles assumem um intervalo de valores e uma função de probabilidade justa para sortear amostras dentro desse intervalo. O tamanho estimado é a taxa de acertos multiplicada pelo intervalo total de valores
Vamos aceitar que o intervalo de valores possíveis esteja correto. Se for algo como 10 caracteres em uma faixa específica mais 1, isso representa um enorme círculo de possibilidades onde poderia haver vídeos
A distribuição dos identificadores, ou seja, dos vídeos válidos, é tudo. Se o YouTube impôs restrições ou distorções aos IDs que desconhecemos, os IDs de vídeos que realmente existem podem estar em um círculo menor dentro daquele grande círculo de possibilidades, e não distribuídos uniformemente por todo ele. Também pode haver agrupamentos. Nesse caso, para obter a silhueta dessa distorção ou verificar se é mais ou menos aleatório, seria preciso amostrar como quem joga dardos no espaço, talvez usando algo como uma distribuição de Poisson
Só então seria possível estimar o tamanho. É isso que eles estão fazendo? E ninguém simplesmente perguntou ao YouTube?
Esse método é realmente muito fácil de bloquear. Basta retornar vídeos aleatórios para uma certa proporção dos identificadores que não existem. Misturar um pouco de aleatoriedade nisso já é suficiente
Esse é justamente o risco de explicar o método
Por exemplo, condições como a de que o ID de um vídeo deve ser imutável e que um vídeo deve ser representado por um único ID de vídeo exclusivo
Se não for, descarte o resultado e considere que o ID gerado na verdade não existe. Se for igual, dá para saber que é um ID real
Enquanto a URL de vídeo do YouTube for imutável, esse método consegue contornar o bloqueio mencionado acima