brainax

Embeddings: o sentido como coordenadas

Aula 4 de 23 do curso “Básico de IA”. Grátis, com animações e teste.

A palavra vira números

O computador não entende palavras, ele trabalha com números. Por isso o modelo transforma cada palavra ou frase em um embedding: uma lista longa de números, normalmente centenas ou milhares. É como as coordenadas de um ponto num mapa, só que com centenas de eixos em vez de dois. O modelo escolhe esses números no treino, olhando ao lado de quais palavras cada palavra aparece nos textos.

Sentido próximo, pontos próximos

Na figura, esse mapa foi espremido em dois eixos. “Gato”, “cachorro” e “filhote” ficam juntos: as pessoas escrevem sobre eles em textos parecidos. “Banana” e “maçã” formam outro grupinho, “bitcoin” e “dólar” mais um. A seta mostra a distância entre os pontos: quanto menor, mais próximo o sentido. O modelo não sabe o que é um gato, mas sabe com o que ele se parece.

Busca por sentido

A busca comum procura palavras iguais. A busca com embeddings procura pontos próximos. Você digita “o que fazer num dia de chuva em São Paulo” e aparece um artigo “museus e cafés para quando o tempo está ruim”, mesmo com quase nenhuma palavra em comum. As recomendações costumam funcionar parecido: chegam ao seu feed vídeos cujos pontos ficam perto dos que você assistiu até o fim.

Rei − homem + mulher

Um truque famoso: do ponto “rei” você tira “homem”, soma “mulher” e cai perto de “rainha”. Ou seja, algumas direções do mapa guardam relações entre palavras, como “gênero” ou “país e sua capital”. Mas sem exagero: é uma ilustração bonita, não funciona para todas as palavras e nem sempre é exata. Não há aqui uma compreensão do mundo como a humana.

Atenção: a palavra olha as vizinhas

Uma palavra pode ter vários sentidos. “Banco” em “sentei no banco da praça” e em “abri conta no banco” são coisas diferentes. O mecanismo de atenção (attention) resolve assim: ao ler cada palavra, o modelo olha as outras palavras da frase e ajusta o sentido dela. “Praça” puxa “banco” para o lado dos assentos. Com o sentido ajustado, o modelo adivinha a próxima palavra, como na figura.

Teste-se

  1. O que é um embedding?
    Resposta certa: Uma lista de números que descreve o sentido. Um embedding são as coordenadas de uma palavra ou frase num mapa de sentidos. Textos parecidos recebem coordenadas próximas.
  2. Por que a busca por sentido acha um artigo sem as suas palavras?
    Resposta certa: Ele procura pontos próximos no sentido. A consulta e os artigos viram embeddings, e a busca pega os pontos mais próximos. Não precisa ter palavras iguais.
  3. Como o modelo sabe que “banco” em “banco da praça” não é instituição financeira?
    Resposta certa: Olha as outras palavras da frase. É o mecanismo de atenção: as palavras vizinhas ajustam o sentido de cada uma, e o significado é escolhido pelo contexto.

← Tokens e janela de contexto Por que as respostas mudam toda vez →