Modelos de linguagem grande

O que é um modelo de linguagem?

Um modelo de linguagem estima a probabilidade de um token ou sequência de tokens que ocorrem dentro de uma sequência mais longa. Um token pode ser uma palavra, uma subpalavra (um subconjunto de uma palavra) ou até mesmo um único caractere.

Considere a seguinte frase e os tokens que podem completá-la:

When I hear rain on my roof, I _______ in my kitchen.

Um modelo de linguagem determina as probabilidades de diferentes tokens ou sequências de tokens para completar esse espaço em branco. Por exemplo, os seguintes a tabela de probabilidade identifica alguns tokens possíveis e suas probabilidades:

Probabilidade Token(s)
9,4% cozinhar sopa
5,2% aquecer uma chaleira
3,6% se agachar
2,5% cochilar
2,2% relaxar

Em algumas situações, a sequência de tokens pode ser uma frase inteira, parágrafo ou até mesmo um texto inteiro.

Um aplicativo pode usar a tabela de probabilidade para fazer previsões. A previsão pode ser a mais alta probabilidade (por exemplo, "sopa cozida") ou uma seleção aleatória de tokens com probabilidade maior que um determinado o limite mínimo.

Estimar a probabilidade do que preenche a lacuna em uma sequência de texto pode pode ser estendida a tarefas mais complexas, incluindo:

  • Gerando texto.
  • Traduzir texto de um idioma para outro.
  • Resumir documentos.

Ao modelar os padrões estatísticos dos tokens, os modelos modernos de linguagem desenvolvem representações internas extremamente poderosas de linguagem e podem gerar linguagem plausível.

Modelos de linguagem N-gram

N-gramas são sequências ordenadas de palavras usada para criar modelos de linguagem, em que N é o número de palavras na sequência. Por exemplo, quando N é 2, o N-grama é chamado de 2-grama (ou bigram); quando N for 5, o N-grama será chamada de 5-gramas. Considere a seguinte frase em um documento de treinamento:

you are very nice

Os 2-gramas resultantes são os seguintes:

  • você é
  • são muito
  • muito bom

Quando N for 3, o N-grama é chamado de 3-grama (ou trigrama). Dada a mesma frase, os 3-gramas resultantes são:

  • você é muito
  • são muito legais

Com duas palavras como entrada, um modelo de linguagem baseado em 3-gramas pode prever probabilidade da terceira palavra. Por exemplo, considerando estas duas palavras:

orange is

Um modelo de linguagem examina todos os 3-gramas diferentes derivados do treinamento que comece com orange is para determinar a terceira palavra mais provável. Centenas de 3 gramas podem começar com as duas palavras orange is, mas você pode concentrar-se apenas nestas duas possibilidades:

orange is ripe
orange is cheerful

A primeira possibilidade (orange is ripe) é relacionada à laranja da fruta, enquanto a segunda possibilidade (orange is cheerful) está relacionada à cor laranja.

Contexto

Os humanos conseguem reter contextos relativamente longos. Ao assistir à Lei 3 de uma peça, você manter o conhecimento dos caracteres introduzidos na Atividade 1. Da mesma forma, na conclusão de uma piada longa faz você rir porque consegue se lembrar do contexto do contexto da piada.

Nos modelos de linguagem, contexto é uma informação útil antes ou depois dos token de destino. O contexto pode ajudar um modelo de linguagem a determinar se "laranja" refere-se a uma fruta cítrica ou a uma cor.

O contexto pode ajudar um modelo de linguagem a fazer previsões melhores, mas 3-gramas fornecem contexto suficiente? Infelizmente, o único contexto fornece são as duas primeiras palavras. Por exemplo, as duas palavras orange is não fornecem contexto suficiente para que o modelo de linguagem preveja a terceira palavra. Devido à falta de contexto, os modelos de linguagem baseados em 3-gramas cometem muitos erros.

N-gramas maiores certamente forneceriam mais contexto do que N-gramas mais curtos. No entanto, à medida que N aumenta, a ocorrência relativa de cada instância diminui. Quando N fica muito grande, o modelo de linguagem normalmente tem apenas uma instância de cada ocorrência de N tokens, o que não é muito útil a previsão do token de destino.

Redes neurais recorrentes

Neural recorrente redes fornecem mais contexto do que N-gramas. Uma rede neural recorrente é um tipo de rede neural que é treinada com uma sequência de tokens. Por exemplo, uma rede neural recorrente podem aprender gradualmente (e aprender a ignorar) o contexto selecionado de cada palavra; em uma frase, como se fosse ouvir alguém falar. Uma grande rede neural recorrente pode obter contexto de uma passagem de várias frases

Embora as redes neurais recorrentes aprendam mais contexto do que N-gramas, a quantidade de um contexto útil de redes neurais recorrentes podem intuitar ainda é relativamente limitada. As redes neurais recorrentes avaliam as informações "token por token". Já os modelos de linguagem grandes, o tópico do próximo seção, pode avaliar todo o contexto de uma só vez.

Observe que o treinamento de redes neurais recorrentes para contextos longos é limitado o gradiente de extinção problema.

Exercício: testar seu conhecimento

Qual modelo de idioma faz previsões melhores para textos em inglês?
  • Um modelo de linguagem baseado em 6-gramas
  • Um modelo de linguagem baseado em 5-gramas
A resposta depende do tamanho e da diversidade do treinamento definido.
Se o conjunto de treinamento abrange milhões de documentos diversos, então o modelo baseado em 6 gramas provavelmente vai superar o modelo com base em 5-gramas.
O modelo de linguagem baseado em 6-gramas.
Esse modelo de linguagem tem mais contexto, mas, a menos que o modelo tenha treinado muitos documentos, a maioria dos 6-gramas ser raro.
O modelo de linguagem baseado em 5-gramas.
Este modelo de linguagem tem menos contexto, então é improvável que supere o modelo de linguagem baseado em 6-gramas.