O que são os parâmetros de um modelo?
Parâmetros de um modelo de aprendizado de máquina são os valores internos que o modelo ajusta durante o processo de treinamento para minimizar o erro e otimizar o desempenho na tarefa específica.
Esses parâmetros determinam como o modelo transforma as entradas nos resultados previstos. Por exemplo, em redes neurais, os parâmetros incluem pesos e biases das conexões entre neurônios.
O ajuste adequado desses parâmetros é crucial para que o modelo aprenda padrões a partir dos dados de treinamento e faça previsões precisas em novos dados.
Bootcamp LLM4Devs
📚 Você é dev e quer criar aplicações baseadas em LLMs?
No próximo dia 15/06/2024 (sábado), vai rolar um bootcamp online de 3h:30m de duração, sobre desenvolvimento de aplicações baseadas em LLMs. Vai ser super hands on!
Alguns dos tópicos abordados:
🟠 Entendendo sobre LLMs
🟣 Testando prompts e engenharia de prompts
🔵 Entendendo de embeddings
🟢 Comparando dados por similaridade
🟡 Conectando com um banco vetorial
E tem mais! Se inscrevendo no bootcamp, você ganha acesso a três cursos sobre LLMs.
Interessou? Clique aqui e saiba mais:
O que é mesmo aprendizado de máquina?
De maneira simplista, a idéia do aprendizado de máquina é criar (ou melhor, treinar) modelos expondo-os em um conjunto de dados. Com esses modelos treinados é possível, de alguma forma, usa-los para avaliar (ou predizer) um conjunto de dados até então desconhecido.
Digamos que você queira uma função que receba uma imagem e produza um rótulo descrevendo-a, ou qualquer outra tarefa que pareça exigir algum elemento de intuição e reconhecimento de padrões.
A ideia do aprendizado de máquina é que, em vez de tentar definir explicitamente um algoritmo que descreve como realizar essa tarefa em código — que é o que as pessoas teriam feito nos primórdios da IA — você configure uma estrutura flexível com botões (ou melhor, parâmetros) ajustáveis.
Para ajustar os valores desses parâmetros, você fornece muitos, muitos exemplos de como a saída deve ser formatada para uma determinada entrada, de forma que o modelo comece a imitar esse comportamento.
Modelos com poucos parâmetros
Talvez a forma mais simples de aprendizado de máquina seja a regressão linear, onde suas entradas e saídas são números, algo como a metragem quadrada de uma casa e seu preço, e você deseja encontrar uma linha que melhor se ajuste através desses dados, para prever os preços futuros de imóveis.
Essa linha é descrita por dois parâmetros, como o coeficiente angular e o intercepto. O objetivo da regressão linear é encontrar quais são os melhores valores para esses parâmetros, de forma a gerar uma reta que melhor possa descrever os dados.
Modelos com muitos parâmetros
Os modelos baseados em deep learning são muito mais sofisticados. O GPT-3, por exemplo, não possui dois, mas 175 bilhões de parâmetros.
Para que esses modelos sejam treinados nessa escala, os dados precisam seguir um formato específico. Os dados são costumeiramente formatados como um array de números reais, podendo ser uma lista de números, uma matriz bidimensional ou, muitas vezes, matrizes alta dimensão, onde o termo geral usado é tensor.
Muitas vezes pensamos que os dados de entrada são transformados em camadas distintas, onde, novamente, cada camada é sempre estruturada como algum tipo de matriz de números reais, até chegar a uma camada final de saída. Por exemplo, a camada final em um modelo linguístico como o GPT-3 é uma lista de números que representa a probabilidade dos próximos tokens possíveis.
Em deep learning, esses parâmetros do modelo são quase sempre chamados de pesos, e isso ocorre porque uma característica importante desses modelos é que a única maneira pela qual esses parâmetros interagem com os dados que estão sendo processados é por meio de somas ponderadas. Se você pensar em como funciona a multiplicação de vetores de matrizes, cada componente na saída parece uma soma ponderada.
Os dados processados simplesmente codificam as entradas inseridas no modelo para uma determinada execução. Por outro lado, os pesos são o cérebro do modelo; são onde se aprende os padrões durante o treinamento e, assim, determinando o comportamento do modelo.
Olhando rapidamente a evolução dos modelos linguístico, uma característica notável é o progressivo aumento no número de parâmetros desses modelos. Tome por exemplo o GPT2, lançado em 2019, que foi disponibilizado com várias versões, variando entre 117 milhões de parâmetros até 1.5bilhões de parâmetros.
Cerca de um ano depois, a OpenAI lançou o GPT3, agora com 175 bilhões de parâmetros; mais de 100x mais parâmetros do que a versão anterior.
Por que muitos parâmetros são importantes
Ter muitos parâmetros em um modelo de linguagem é importante pois cada parâmetro representa uma parte do conhecimento adquirido durante o treinamento. Imagine que cada parâmetro é como uma pequena peça de um quebra-cabeça, e o quebra-cabeça completo é o entendimento do modelo sobre a linguagem humana. Quanto mais peças, mais detalhada e precisa é a imagem final.
Em modelos de linguagem, parâmetros são usados para capturar padrões, nuances e contextos de dados textuais vastos e variados. Quando um modelo tem muitos parâmetros, ele pode aprender e armazenar uma quantidade imensa de informações sobre gramática, vocabulário, gírias, expressões idiomáticas, contextos culturais, conhecimento factual e até mesmo sutilezas emocionais. Essa riqueza de detalhes permite ao modelo gerar respostas que são mais coerentes, contextualmente apropriadas e muitas vezes indistinguíveis daquelas produzidas por humanos.
Além disso, a capacidade de um modelo com muitos parâmetros de generalizar a partir dos dados de treinamento é significativamente maior. Isso significa que o modelo pode entender e responder adequadamente a uma ampla gama de perguntas e tópicos, mesmo aqueles que não encontrou diretamente durante o treinamento. Por exemplo, um modelo com bilhões de parâmetros pode entender e responder perguntas sobre eventos históricos pouco conhecidos, avançadas teorias científicas ou peculiaridades de diversas culturas.
Conclusão
A importância dos parâmetros em modelos de aprendizado de máquina, especialmente em modelos de linguagem como o GPT-3, não pode ser subestimada.
Cada parâmetro funciona como um componente essencial que ajuda o modelo a capturar e processar uma vasta gama de informações textuais. Com um número maior de parâmetros, o modelo pode armazenar e utilizar um conhecimento mais detalhado sobre gramática, vocabulário, e contextos culturais, permitindo que ele gere respostas mais precisas e coerentes.
Esse aumento na quantidade de parâmetros também melhora a capacidade do modelo de generalizar a partir dos dados de treinamento, possibilitando que ele entenda e responda a uma ampla variedade de questões com alta precisão.
A evolução dos modelos de linguagem demonstra que a ampliação do número de parâmetros parece ser um caminho sem volta como forma de melhorar a capacidade de interação de maneira natural com os usuários.