English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

visitante
1 / ?

Palavras para Números

Um Tradutor em uma Fronteira

Um modelo de linguagem nunca vê texto. Ele vê inteiros. Um tokenizador fica em uma travessia de fronteira: palavras humanas entram, IDs inteiros saem. A geração reverte o fluxo: IDs inteiros voltam, um tokenizador renderiza texto.


Três funções:


1. Segmentar. Dividir uma string em pedaços (tokens).

2. Mapear. Atribuir a cada pedaço um ID inteiro único de um vocabulário fixo.

3. Reverter. Reconstruir o texto a partir dos IDs no momento da geração.


Por que pedaços, não palavras inteiras

Um vocabulário de palavras inteiras explode. O inglês sozinho tem centenas de milhares de formas. Pior, um modelo treinado em palavras inteiras não consegue lidar com um erro de digitação, um novo nome ou uma frase estrangeira: qualquer palavra não vista é mapeada para um único slot <UNK>.


A tokenização de subpalavras corrige isso. Um vocabulário de peças comuns compõe qualquer palavra, incluindo as nunca vistas durante o treinamento. Duas estratégias dominam: BPE (byte pair encoding) & segmentação distribucional. ANDREA escolhe uma segunda estratégia.


Harris vs BPE

Por que Subpalavras

Um tokenizador de palavras completas falha na palavra rara `proporian` (uma palavra produzida pelo ANDREA-12M no passo 43.100). Nomeie dois problemas distintos que um tokenizador de subpalavras (BPE ou Harris) evita e que um tokenizador de palavras completas não pode.

Onde uma Palavra é Quebrada

Zellig Harris, 1955

Um linguista chamado Zellig Harris notou algo. Dentro de uma palavra, a contagem de letras distintas que seguem uma dada sequência de letras varia bruscamente. Após un você pode encontrar dezenas de letras: a, b, c, d, e ... Após unbel apenas um conjunto minúsculo segue: i (então ievable).


Um pico na variedade de sucessores marca uma provável fronteira de morfema. Após un (um prefixo), a variedade aumenta porque muitas raízes podem seguir. Dentro de uma raiz como believ, a variedade permanece baixa porque as letras se preveem mutuamente. Na transição entre morfemas, a variedade aumenta novamente.


De Picos de Variedade a Segmentos

Execute esse detector em um corpus de treinamento. Cada palavra doa evidência estatística. Um tokenizador coleta segmentos de alta frequência que recorr em limites com formato de morfema: un, re, pre, believ, know, ing, able, ly, tion, ed.


Sem rótulos. Nenhum linguista marca morfemas manualmente. Uma estatística de coocorrência de letras faz o trabalho.


Harris vs BPE


PropriedadeHarrisBPE
Critério de limitePico de variedade de sucessoresFrequência de pares
Forma linguísticaAlinhado com morfema (prefixo, raiz, sufixo)Pares de bytes frequentes
Exemplo: unbelievablyun + believ + abl + yunb + eli + eva + bly
GeneralizaçãoForte (raiz + afixo recombinam)Mais fraca (pares não precisam alinhar)

Ambos produzem peças subpalavras. As peças de Harris tendem a se alinhar com o que um linguista chamaria de morfema: a menor unidade significativa. As peças BPE otimizam a compressão: o par de bytes mais frequente é mesclado, independentemente do significado.

Segmentar uma Palavra

Aplique o raciocínio no estilo de Harris à palavra `replayed`. Proponha três segmentos de morfema e justifique cada um em uma frase (qual papel desempenha: prefixo, raiz ou sufixo).

Três Camadas de Vocabulário

Anatomia de um Vocabulário ANDREA

A tokenização Harris produz um vocabulário com três camadas:


Laje 1: 256 bytes base. Cada byte UTF-8 possível (0x00 até 0xFF) recebe seu próprio ID de token. Uma rede de segurança: qualquer caractere que um corpus contenha, um tokenizador pode representar como uma sequência de bytes. Nenhum <UNK> nunca é ativado.


Laje 2: N segmentos de morfemas. Peças comuns descobertas por meio de análise distributiva. ANDREA-12M treinou N = 4096; ANDREA-120M treinou N = 8192. Cada segmento comprime uma string multibyte recorrente em um único token.


Laje 3: 1 token BOS. Um marcador especial colocado no início de cada sequência de treinamento. Permite que um modelo aprenda 'esta posição não tem passado'. ANDREA-12M & ANDREA-120M ambos reservam exatamente um ID para BOS.


Tamanhos do Vocabulário


ModeloBytes baseSegmentos de morfema (N)BOSTamanho do vocabulário
ANDREA-12M256409614353
ANDREA-120M256819218449

256 + N + 1 = tamanho do vocabulário. Simples. Reprodutível. Aberto.


Por que um Bloco de Bytes Importa

Um fallback de byte garante cobertura. Se um modelo encontrar 日本語 e um tokenizador não tiver morfemas japoneses, bytes UTF-8 individuais carregam uma sequência adiante. Um modelo treina em bytes; a qualidade em scripts raros depende de capacidade e exposição, mas nenhuma entrada nunca trava um tokenizador.

Calcule um Vocabulário

ANDREA-480M (um terceiro modelo em uma família, atividade futura 24 o cobre) planeja treinar um tokenizador Harris com N = 16.384 segmentos em um corpus maior. Calcule seu tamanho de vocabulário. Mostre uma fórmula. Em seguida, explique em uma frase por que um slab de byte permanece em 256 mesmo quando N cresce.

Início da Sequência

Por Que uma Sequência Precisa de um Marcador

Um transformer apenas decodificador prevê o próximo token a partir do contexto anterior. A posição 0 não tem contexto anterior. Sem um marcador, a posição 0 fica em um buraco lógico: o modelo não tem nada para atender.


BOS resolve um buraco. Um único token especial (ID = 256 + N) fica no início de toda sequência durante o treinamento. O modelo aprende:


- 'Quando você vê BOS, preveja um primeiro token provável de texto natural.'

- 'Quando você vê BOS seguido de uma palavra, essa palavra é o início de uma sequência, não uma continuação.'


Um Token, Muitos Usos


O BOS aparece em:


- Tempo de treinamento: pré-anexado a cada pedaço de texto fornecido ao modelo.

- Tempo de inferência: pré-anexado a um prompt para que o modelo veja um sinal familiar de 'novo início'.

- Marcação de limites: em alguns pipelines, um separador entre documentos concatenados.


ANDREA reserva exatamente um ID para BOS. Sem EOS, sem PAD, sem tokens especiais além do que um vocabulário precisa. Simplicidade permanece um valor permacomputador: cada token ganha seu slot.


Atividade 3 Continua

Activity 3 (grow_a_language_model_tokenizer_diet) covers what happens when N is too large or a tokenizer corpus diverges from a training corpus. ANDREA-12M desperdiçou 63.6% de seu vocabulário; ANDREA-120M corrigiu isso. Continue lendo.

Tradeoffs Apenas BOS

Reflita sobre uma escolha de design que ANDREA faz: apenas um token especial (BOS), sem EOS, sem PAD. Nomeie um tradeoff que isso cria. Tradeoff pode ser um benefício (motor mais simples, menos slots desperdiçados) ou uma restrição (alguns truques de treinamento precisam de tokens extras). Uma frase é suficiente.