O que é LoRA? Personalizando a IA com um pouquinho de treino extra
Retreinar uma IA gigante do zero é caro demais, mas você quer ajustá-la só para você; o LoRA (Low-Rank Adaptation) realiza esse desejo congelando o modelo original e treinando apenas uma pequena peça adicional (um adaptador), cortando os parâmetros treináveis em cerca de 90%. O LoRA torna o fine-tuning drasticamente mais barato e rápido, e é enormemente popular na geração de imagens, como no Stable Diffusion, como um pequeno arquivo que adiciona um personagem ou estilo. Este artigo explica com uma analogia de remendo. O LoRA é o carro-chefe do fine-tuning eficiente em parâmetros (PEFT): deixar os enormes pesos originais congelados, inserir uma pequena matriz adicional em cada camada e treinar apenas isso (W = W0 + BA, onde W0 fica congelado e BA é a pequena parte adicionada). Ele se baseia na descoberta de que adaptar uma IA não exige grandes mudanças (um rank baixo basta). Benefícios: cerca de 90% menos parâmetros treináveis (segundo relatos, 10.000x menos na escala do GPT-3), menos memória de GPU (cerca de 3x menos), treinamento mais rápido e barato, sem latência de inferência depois que o adaptador é mesclado, e menor risco de overfitting. Sua maior força são os adaptadores intercambiáveis: mantenha uma base comum e troque pequenos arquivos LoRA (de poucos MB) por caso de uso (suporte, tom da empresa, um personagem específico) instantaneamente. Muita gente encontra o LoRA pela primeira vez na geração de imagens, onde LoRAs do Stable Diffusion que aprenderam um personagem, estilo ou tema são amplamente compartilhados. O QLoRA combina a quantização, treinando o LoRA sobre uma base 4-bit para ~4x menos memória que o LoRA padrão, permitindo o fine-tuning de modelos enormes em uma GPU de consumo (às vezes CPU) com perda mínima de precisão. Diferentemente do fine-tuning completo (treinar todos os pesos), o LoRA difere nos pesos treinados, no custo, no resultado e no melhor uso; para a maior parte do trabalho, o LoRA basta. Mantenha a base, tempere pouco. Os números são citados de materiais públicos, como orientação.