O que é adaptação de baixa classificação (LoRA)?

A adaptação de baixa classificação (LoRA) é uma maneira de adaptar um grande modelo de aprendizado de máquina para usos específicos sem treinar novamente todo o modelo.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Definir "adaptação de baixa classificação" (LoRA)
  • Explicar de forma simples como funciona a LoRA
  • Entender as vantagens de usar a LoRA

Copiar o link do artigo

O que é adaptação de baixa classificação (LoRA)?

A adaptação de baixa classificação (LoRA) é uma técnica para adaptar rapidamente modelos de aprendizado de máquina a novos contextos. A LoRA ajuda a tornar modelos de aprendizado de máquina enormes e complicados muito mais adequados para usos específicos. Ela funciona adicionando peças leves ao modelo original, em vez de alterar o modelo inteiro. A LoRA ajuda os desenvolvedores a expandir rapidamente os casos de uso para os modelos de aprendizado de máquina que eles criam.

O que a LoRA faz?

Modelos de aprendizado de máquina grandes e complexos, como os usados para modelos de linguagem grande (LLMs) como o ChatGPT, levam muito tempo e consomem muitos recursos. Eles podem ter trilhões de parâmetros que são definidos com valores específicos. Uma vez concluído esse processo, o modelo pode ser poderoso e preciso em geral, mas não é necessariamente ajustado para realizar tarefas específicas.

Fazer um modelo funcionar em contextos específicos pode exigir muito retreinamento, alterando todos os seus parâmetros. Com a quantidade de parâmetros em tais modelos, esse retreinamento é caro e demorado. A LoRA fornece uma maneira rápida de adaptar o modelo sem retreiná-lo.

Imagine que o Jim se mude da Europa para a América do Norte e todos os seus aparelhos (micro-ondas, chaleira elétrica, etc.) não se encaixem nas tomadas de sua nova casa, já que essas duas regiões seguem padrões diferentes de plugues elétricos. O Jim tem duas opções. Ele pode retirar e substituir todas as tomadas de sua casa para que elas se encaixem nos plugues de seus eletrodomésticos. Ou ele pode simplesmente comprar alguns adaptadores de tomada baratos e conectar seus dispositivos dessa forma.

A LoRA é a segunda opção do Jim. Em vez de retreinar completamente um modelo do início ao fim, a LoRA adiciona uma parte leve e mutável ao modelo para que ele se ajuste ao novo contexto. Para os desenvolvedores de IA, isso é muito mais rápido e consome menos recursos, assim como comprar alguns adaptadores na loja de ferramentas é mais barato para o Jim do que contratar um empreiteiro para ir até sua casa e substituir as tomadas.

Como a adaptação de baixa classificação afeta um modelo de aprendizado de máquina?

Um modelo de aprendizado de máquina é a combinação de um algoritmo de aprendizado de máquina com um conjunto de dados. O resultado dessa combinação é um programa de computador que pode identificar padrões, encontrar objetos ou estabelecer relações entre itens até mesmo em conjuntos de dados que nunca viu antes.

Para tarefas complexas, como gerar texto, produzir imagens ou realizar outros aplicativos modernos de aprendizado de máquina, os modelos se baseiam em muitos dados e usam algoritmos altamente complexos. Pequenas alterações nos algoritmos ou no conjunto de dados significam que o modelo produzirá resultados diferentes. Entretanto, obter os tipos de resultados necessários em um contexto específico pode exigir muito treinamento.

Em vez de refazer o modelo inteiro, a LoRA congela os pesos* e os parâmetros do modelo como estão. Em seguida, além desse modelo original, ela acrescenta um acréscimo leve chamado matriz de baixa classificação, que é aplicada a novas entradas para obter resultados específicos para o contexto. A matriz de baixa classificação se ajusta aos pesos do modelo original para que os resultados correspondam ao caso de uso desejado.

*Em modelos de aprendizado de máquina, um "peso" é um valor matemático que ajuda a determinar a importância de diferentes tipos de entradas.

O que é uma matriz de baixa classificação na LoRA?

Uma matriz, em matemática, é uma variedade ou coleção de números, como:

Exemplo de matriz de baixa classificação: primeira coluna 2 4 6, segunda coluna 4 8 12, terceira coluna 6 12 18

As matrizes são uma parte importante de como funcionam os modelos de aprendizado de máquina e as redes neurais . Para esses usos, elas podem ser muito maiores do que o exemplo acima. Para a LoRA, o importante a entender é que as matrizes de baixa classificação são menores e têm muito menos valores do que as matrizes maiores. Elas não ocupam muita memória e exigem menos etapas para adicionar ou multiplicar. Isso as torna mais rápidas para os computadores processarem.

A LoRA adiciona matrizes de baixa classificação ao modelo original de aprendizado de máquina congelado. Essas matrizes contêm novos pesos a serem aplicados ao modelo ao gerar resultados. Esse processo altera os resultados que o modelo produz com poder de computação e tempo de treinamento mínimos.

Na analogia usada acima, Jim comprou adaptadores baratos para conectar seus dispositivos na parede. As matrizes de baixa classificação são como aqueles adaptadores baratos, com as tomadas sendo os modelos originais de aprendizado de máquina.

Como funciona o aprendizado de máquina?

Aprendizado de máquina é um termo que se refere a um tipo de algoritmo estatístico que pode aprender a encontrar padrões em dados, sem receber instruções específicas de um ser humano. O aprendizado de máquina pode generalizar a partir de exemplos para classificar dados que nunca viu antes. É fundamental para muitos tipos de aplicativos de inteligência artificial (IA) .

A Cloudflare permite que os desenvolvedores integrem rapidamente modelos populares de aprendizado de máquina por meio de serviços como:

Saiba mais sobre a plataforma completa da Cloudflare para IA.