Classificação dos temas

Saiba como os temas são inferidos e a atribuição aos usuários navegadores e como os usuários podem controlar a lista de tópicos.

Status da implementação

O que é um tópico?

Na API Topics, um tema é um assunto em que um usuário está interessado, conforme evidenciado pelos sites que ele visita.

Os temas são um indicador que ajuda as plataformas de adtech a selecionar anúncios relevantes. Ao contrário dos cookies de terceiros, essas informações são compartilhadas sem revelar mais informações sobre o próprio usuário ou sobre a atividade de navegação dele.

A API Topics permite que terceiros, como plataformas de adtech, observem e acessem temas de interesse de um usuário. Por exemplo, a API pode sugerir o tópico "Fibra e Artes têxteis" para um usuário que visita o site knitting.example.

A lista de temas usada pela API Topics é pública, selecionada por humanos, legível e projetada para evitar categorias sensíveis. Esta é a lista atual, que vai ser expandida com o tempo. A lista é estruturada como uma taxonomia. Os tópicos podem ser de alto nível ou mais específicos. Por exemplo, Food & Drink é uma categoria ampla, com uma subcategoria de Cooking & Recipes. As subcategorias podem ser divididas em outras subcategorias.

Essa taxonomia de temas precisa encontrar um equilíbrio entre utilidade e privacidade. Se os temas forem muito específicos, eles poderão ser usados para identificar um usuário individual. Se forem muito gerais, não serão úteis para selecionar publicidade ou outro conteúdo.

A taxonomia dos temas é criada com dois requisitos básicos em mente:

  • Suporte à publicidade com base em interesses
  • Mantenha os usuários seguros e proteja a privacidade deles

Isso sugere várias perguntas. Exemplo:

  • Qual é a melhor maneira para a API inferir temas de interesse para um usuário com base na atividade de navegação dele, sem deixar de preservar a privacidade do usuário?
  • Como a taxonomia poderia ser estruturada para torná-la mais útil?
  • Quais itens específicos a taxonomia deve incluir?

Como a API infere temas para um site

Os temas são derivados de um modelo de classificador que mapeia os nomes de host de sites para zero ou mais tópicos. A análise de informações adicionais (como URLs completos ou conteúdo da página) pode permitir anúncios mais relevantes, mas também reduzir a privacidade.

O modelo de classificador para mapear nomes de host para temas está disponível publicamente e, conforme a explicação, é possível ver os temas de um site usando as ferramentas para desenvolvedores do navegador. Espera-se que o modelo evolua e melhore ao longo do tempo e seja atualizado periodicamente. a frequência ainda está sendo considerada.

Somente os sites que incluem código que chama a API Topics são incluídos no histórico de navegação qualificado para cálculos de frequência de temas, e os autores das chamadas da API só recebem temas observados. Em outras palavras, os sites não se qualificam para cálculos de frequência de temas sem que o site ou um serviço incorporado chame a API.

Além disso, o autor da chamada só pode receber tópicos que seu código "viu". Portanto, se o código de outro autor da chamada registrou um tema (por exemplo, /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks) para o navegador de um usuário e seu código não fez com que esse tópico fosse registrado no navegador dele, você não poderá aprender sobre esse tema de interesse para o navegador desse usuário ao chamar a API pelo código incorporado. Como a API agora inclui ancestrais conforme observados, o exemplo acima, /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks, também faria com que Autos & Vehicles e Motor Vehicles fossem observados.

Os tópicos retornados para um usuário são recalculados para o autor da chamada, dependendo do site de nível superior. Por exemplo, se adtech.example solicitar os temas do usuário em news-a.example, depois em news-b.example e depois em news-c.example, os temas retornados a eles serão recalculados em cada site. Isso significa que é provável que um autor de chamada receba temas diferentes para um usuário em diferentes sites de nível superior, já que os três temas retornados (máximo) são escolhidos aleatoriamente entre os cinco principais das últimas três épocas (com 5% de chance de encontrar um tema aleatório). Isso dificulta para o autor da chamada identificar um usuário por tópicos, já que eles provavelmente serão diferentes em sites de nível superior distintos (mesmo para o mesmo usuário, autor da chamada e época).

Modelo do classificador

Os temas são selecionados manualmente em 50 mil domínios principais, e essa seleção é usada para treinar o classificador. Essa lista pode ser encontrada em override_list.pb.gz, disponível em chrome://topics-internals/ no modelo atual na guia Classificador. As associações de domínio para tópico na lista são usadas pela API no lugar da saída do próprio modelo.

Página chrome://topics-internals com o painel Classificador selecionado.
O painel do classificador da página chrome://topics-internals lista a versão do modelo, o caminho dela e os tópicos associados a cada host listado.

Para executar o modelo diretamente, consulte o guia do TensorFlow para executar um modelo (em inglês).

Para inspecionar o arquivo override_list.pb.gz, primeiro descompacte-o:

gunzip -c override_list.pb.gz > override_list.pb

Use protoc para inspecionar como texto:

protoc --decode_raw < override_list.pb > output.txt

Uma taxonomia de temas com IDs completa está disponível no GitHub.

Como enviar feedback ou entradas sobre o modelo do classificador

Existem vários canais para fornecer feedback sobre a API Topics. Para enviar feedback sobre o modelo de classificador, recomendamos enviar um problema do GitHub ou responder a um problema existente. Exemplo:

Como os cinco principais tópicos do usuário são selecionados

A API retorna um tema para cada época, até um máximo de três. Se três forem retornados, isso incluirá temas da época atual e das duas anteriores.

  1. No final de cada período, o navegador compila uma lista de páginas que atendem aos seguintes critérios:
    • A página foi visitada pelo usuário durante a época.
    • A página inclui um código que chama document.browsingTopics().
    • A API foi ativada (por exemplo, não foi bloqueada pelo usuário ou por um cabeçalho de resposta).
  2. O navegador no dispositivo do usuário usa o modelo de classificador fornecido pela API Topics para mapear o nome do host de cada página para uma lista de temas.
  3. O navegador acumula a lista de temas.
  4. O navegador gera uma lista dos cinco tópicos principais por frequência.

O método document.browsingTopics() retorna um tema aleatório dos cinco principais para cada época, com 5% de chance de que qualquer um deles seja escolhido aleatoriamente da taxonomia completa de temas. No Chrome, os usuários também podem remover temas individuais ou limpar o histórico de navegação para reduzir o número de temas retornados pela API. Os usuários também podem desativar a API.

É possível conferir informações sobre os temas observados durante a época atual na página chrome://topics-internals.

Como a API decide quais autores da chamada veem quais temas

Os autores das chamadas de API só recebem temas observados recentemente, e os temas de um usuário são atualizados uma vez a cada época. Isso significa que a API oferece uma janela contínua em que um determinado autor da chamada pode receber determinados temas.

A tabela abaixo descreve um exemplo (embora irrealista) de um histórico de navegação hipotético de um usuário durante uma única época, mostrando temas associados aos sites visitados e os autores de chamadas de API presentes em cada site (as entidades que chamam document.browsingTopics() no código JavaScript incluído no site).

Site Tópicos Autores de chamadas da API no site
yoga.example Condicionamento físico adtech1.example adtech2.example
knitting.example Artesanato adtech1.example
caminhada-férias.example Condicionamento físico, viagem e Transporte adtech2.example
diy-clothing.example Artesanato, moda e Estilo [nenhum]

No final do período (atualmente uma semana), a API Topics gera os principais temas do navegador para a semana.

  • adtech1.example agora está qualificada para receber a categoria "Fitness" e "Artesanato" já que os observaram em ioga.example e também em tricô.example.
  • adtech1.example não está qualificada para receber a classificação "Viagem e Transporte" para esse usuário, pois ele não está presente em sites que o usuário visitou recentemente e que estão associados a esse tópico.
  • adtech2.example viu o termo "Fitness" e "Viagens e Transporte" tópicos, mas não viu a seção "Artesanato" tópico.

O usuário visitou o site faça você mesmo-roupas.example, que tem a seção "Moda e Estilo" mas não havia chamadas para a API Topics nesse site. Neste ponto, a seção "Moda e Estilo" tópico não será retornado pela API para nenhum autor da chamada.

Na segunda semana, o usuário visita outro site:

Site Tópicos Autores de chamadas da API no site
sewing.example Artesanato adtech2.example

Além disso, o código de adtech2.example é adicionado a "faça você mesmo-roupas.example":

Site Tópicos Autores de chamadas da API no site
diy-clothing.example Artesanato, moda e Estilo adtech2.example

Além de "Condicionamento físico" e "Viagens e Transporte" na primeira semana, isso significa que adtech2.example vai poder receber "Artesanato" e "Moda e Estilo" mas não até o período seguinte, a semana 3. Isso garante que terceiros não possam saber mais sobre o passado de um usuário (nesse caso, um interesse em moda) do que poderiam com cookies.

Depois de mais duas semanas, “Condicionamento físico” e "Viagens e Transporte" poderá sair da lista de temas qualificados de adtech2.example se o usuário não acessar sites com esses temas que incluem código de adtech2.example.

Controles de usuário, transparência e desativação

Os usuários precisam ser capazes de entender a finalidade da API Topics, reconhecer o que está sendo dito sobre eles, saber quando a API está em uso e receber controles para ativar ou desativar.

A taxonomia legível da API permite que os usuários aprendam e controlem os temas que podem ser sugeridos pelo navegador. Os usuários podem remover temas que não querem que a API Topics compartilhe com anunciantes ou editores. Além disso, há controles para informar o usuário sobre a API e mostrar como ativar ou desativar. O Chrome fornece informações e configurações para a API Topics em chrome://settings/adPrivacy. Além disso, os temas não ficam disponíveis para os autores das chamadas de API no modo de navegação anônima, e os temas são apagados quando o histórico de navegação é apagado.

A lista de temas retornados ficará vazia se:

  • O usuário desativa a API Topics nas configurações do navegador em chrome://settings/adPrivacy.
  • O usuário limpou seus temas (nas configurações do navegador em chrome://settings/adPrivacy) ou limpou os cookies.
  • O navegador está no modo de navegação anônima.

A explicação fornece mais detalhes sobre as metas de privacidade e como a API tenta abordá-las.

Desativar site

Além da possibilidade de desativação, o usuário também pode desativar a API Topics no seu site ou nas páginas dele. O Guia do desenvolvedor explica como fazer isso.

Como usar a API Topics em sites com prebid.js

Conforme observado no lançamento do Prebid 7, a comunidade desenvolveu ativamente uma integração com a API Topics usando um novo módulo. Este módulo foi mesclado em dezembro de 2022.

Saiba mais aqui:

Próximas etapas

Interaja e compartilhe feedback