Glossário

Tokenização

Descobre o poder da tokenização em NLP e ML! Aprende como dividir o texto em tokens melhora as tarefas de IA, como a análise de sentimentos e a geração de texto.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

A tokenização é um passo fundamental no Processamento de Linguagem Natural (PLN) e na Aprendizagem Automática (AM) que envolve a decomposição do texto em unidades mais pequenas, conhecidas como tokens. Estes tokens podem ser palavras, subpalavras, caracteres ou símbolos, dependendo dos requisitos específicos da tarefa e do modelo que está a ser utilizado. Ao converter texto em bruto num formato numérico que os modelos de aprendizagem automática podem compreender, a tokenização é crucial para várias aplicações de IA.

Definição

A tokenização é o processo de segmentação de uma cadeia de texto em tokens individuais. Pensa nisto como cortar uma frase em pedaços. Esses pedaços, ou tokens, tornam-se as unidades básicas que um computador pode processar. Por exemplo, a frase "Ultralytics YOLO é rápido." pode ser dividida em ["Ultralytics", "YOLO", "é", "rápido", "."]. A forma como o texto é tokenizado pode afetar significativamente a forma como um modelo compreende e processa a linguagem. Existem diferentes estratégias de tokenização, cada uma com seus próprios pontos fortes e fracos. Os métodos mais comuns incluem:

  • Tokenização de palavras: Esta é a abordagem mais direta, em que o texto é dividido em palavras individuais, normalmente com base em espaços e pontuação. Por exemplo, "Vamos aprender IA!" torna-se ["Vamos", "'s", "aprender", "IA", "!"].
  • Tokenização de caracteres: Aqui, cada caractere é considerado um token. A mesma frase, "Vamos aprender IA!", seria tokenizada em ["L", "e", "t", "'", "s", " ", "l", "e", "a", "r", "n", " ", "A", "I", "!"]. Este método é útil para as línguas em que as palavras não estão claramente separadas por espaços ou quando se trata de palavras fora do vocabulário.
  • Tokenização de subpalavras: Este método atinge um equilíbrio entre a tokenização de palavras e caracteres. Divide as palavras em unidades mais pequenas (subpalavras) com base em sequências de caracteres frequentes. Por exemplo, "inquebrável" pode ser tokenizado em ["un", "break", "able"]. Esta técnica é eficaz no tratamento de palavras raras e na redução do tamanho do vocabulário, o que é particularmente benéfico em modelos como a família BERT (Bidirectional Encoder Representations from Transformers) e GPT (Generative Pre-trained Transformer), incluindo GPT-4 e GPT-3.

Relevância e aplicações

A tokenização é um pré-requisito para quase todas as tarefas de PNL, permitindo que as máquinas processem e compreendam a linguagem humana. As suas aplicações são vastas e abrangem vários domínios:

  • Análise de sentimento: Na análise de sentimentos, a tokenização ajuda a dividir as avaliações dos clientes ou as publicações nas redes sociais em palavras ou frases individuais, que são depois analisadas para determinar o sentimento geral (positivo, negativo ou neutro). Por exemplo, ao analisar a frase "Este Ultralytics HUB é incrivelmente fácil de utilizar!", a tokenização permite que o modelo de análise de sentimentos se concentre em palavras individuais como "incrivelmente" e "fácil de utilizar" para avaliar o sentimento positivo.
  • Tradução automática: A tokenização é essencial para a tradução automática. Antes de traduzir uma frase de um idioma para outro, a frase é primeiro tokenizada. Isto permite que o modelo de tradução processe o texto palavra a palavra ou subpalavra a subpalavra, facilitando traduções precisas e conscientes do contexto. Por exemplo, a tradução de "How to train Ultralytics YOLO models" envolve primeiro a tokenização em palavras ou subpalavras antes de mapear esses tokens para outro idioma.
  • Geração de texto: Os modelos utilizados para a geração de texto, como os modelos de linguagem de grande porte (LLMs), dependem muito da tokenização. Ao gerar texto, esses modelos prevêem o próximo token em uma seqüência. A tokenização garante que o resultado seja construído a partir de unidades significativas, sejam palavras ou subpalavras, levando a um texto coerente e gramaticalmente correto.
  • Mecanismos de pesquisa e recuperação de informações: Os motores de busca utilizam a tokenização para indexar páginas Web e processar consultas de pesquisa. Quando procuras por "deteção de objectos com Ultralytics YOLO ", o motor de busca converte a tua consulta em palavras-chave e compara essas palavras-chave com o conteúdo indexado para obter resultados relevantes. A pesquisa semântica refina ainda mais este processo ao compreender o significado dos símbolos e o seu contexto.

Tipos de Tokenização

Embora o conceito básico de tokenização seja simples, existem várias técnicas que se adaptam a diferentes línguas e tarefas de PNL:

  • Tokenização de espaço em branco: Este método simples divide o texto com base nos caracteres de espaço em branco (espaços, tabulações, novas linhas). Embora seja fácil de implementar, pode não lidar com a pontuação de forma eficaz e pode ter dificuldades com idiomas que não usam espaços para separar palavras.
  • Tokenização baseada em regras: Esta abordagem utiliza regras predefinidas para tratar a pontuação, as contracções e outras nuances específicas da língua. Por exemplo, podem ser definidas regras para separar sinais de pontuação como tokens individuais ou para tratar contracções como "can't" como dois tokens: "ca" e "n't".
  • Tokenização estatística: Técnicas mais avançadas utilizam modelos estatísticos treinados em grandes corpora de texto para determinar os limites dos tokens. Esses métodos, incluindo algoritmos de tokenização de subpalavras como Byte Pair Encoding (BPE) e WordPiece, são particularmente eficazes para lidar com idiomas complexos e palavras fora do vocabulário.

Benefícios da Tokenização

A tokenização oferece várias vantagens importantes no contexto da IA e do ML:

  • Simplifica os dados textuais: Ao dividir o texto em unidades menores e gerenciáveis, a tokenização transforma dados de texto complexos e não estruturados em um formato que os algoritmos podem processar com eficiência.
  • Permite a representação numérica: Os tokens podem ser facilmente convertidos em representações numéricas, como vectores, que são a entrada padrão para modelos de aprendizagem automática. Esta conversão é essencial para que os modelos aprendam padrões e relações em dados de texto. Técnicas como a incorporação de palavras melhoram ainda mais esta representação, capturando o significado semântico.
  • Melhora o desempenho do modelo: A tokenização eficaz pode melhorar significativamente o desempenho dos modelos de PNL. A escolha da estratégia de tokenização certa para uma tarefa e idioma específicos pode levar a uma melhor precisão e eficiência em tarefas como classificação, tradução e geração.
  • Gerencia o tamanho do vocabulário: A tokenização de subpalavras, em particular, ajuda a gerenciar o tamanho do vocabulário. Ao dividir as palavras em unidades de subpalavras, reduz o número de tokens únicos que um modelo precisa de aprender, tornando os modelos mais eficientes e capazes de lidar com uma gama mais vasta de texto, incluindo palavras raras ou não vistas.

Em resumo, a tokenização é uma etapa crítica de pré-processamento em PNL e ML, permitindo que os computadores compreendam e processem dados textuais. A sua eficácia depende da técnica escolhida e da sua adequação à tarefa e à língua específicas. Compreender a tokenização é fundamental para qualquer pessoa que trabalhe com aplicações de IA baseadas em texto, desde a análise de sentimentos a modelos de linguagem complexos como Ultralytics YOLO -World, que consegue compreender pedidos textuais para deteção de objectos.

Lê tudo