Esse repositório é inspirado no artigo "Modelos de grandes idiomas de ajuste fino (LLMS)" e contém código para treinar um modelo de classificação de texto usando o conjunto de dados de Stanford Sentiment Treebank (SST-2) e LORA (adaptação de baixo rank de modelos de idiomas grandes). Lora é uma maneira de tornar o modelo de idioma mais adaptável e eficiente. Em vez de treinar todo o modelo novamente para cada tarefa, Lora congela o modelo pré-treinado e adiciona matrizes treináveis menores a cada camada de modelo. Essas matrizes ajudam o modelo a se adaptar a diferentes tarefas sem alterar todos os parâmetros.
Antes de usar o código neste repositório, você precisa instalar as bibliotecas necessárias. Você pode fazer isso executando os seguintes comandos:
! pip install datasets
! pip install transformers
! pip install peft
! pip install evaluateEsses comandos instalarão as bibliotecas Python necessárias para trabalhar com conjuntos de dados, transformadores, lora e métricas de avaliação.
Veja como usar o código neste repositório:
Carregue o conjunto de dados SST-2 :
O código carrega o conjunto de dados SST-2 usando a biblioteca datasets de face Hugging. O SST-2 consiste em frases de resenhas de filmes, anotadas com rótulos de sentimentos. Você pode encontrar mais informações sobre o conjunto de dados SST-2 aqui.
Defina a arquitetura do modelo Lora :
O código usa a técnica Lora para ajustar um modelo de idioma pré-treinado para classificação de texto. Lora adapta com eficiência o modelo à tarefa, alavancando a propriedade de baixo rank das diferenças de peso. A implementação do LORA pode ser encontrada no código.
Tokenize o conjunto de dados :
O conjunto de dados é tokenizado usando o tokenizador do modelo, e tokens especiais como [PAD] são adicionados se ainda não existirem.
Treine o modelo Lora :
O código define o treinamento de hiperparâmetros e treina o modelo de Lora adaptado usando o conjunto de dados fornecido. Argumentos de treinamento, como taxa de aprendizagem, tamanho do lote e o número de épocas, podem ser ajustados na variável training_args .
Inferir com o modelo Lora treinado :
Após o treinamento, você pode usar o modelo treinado de Lora adaptado para inferência em novas entradas de texto. O código demonstra como carregar o modelo e fazer previsões em uma lista de frases de exemplo.
O código usa um modelo de classificação de texto com base em uma arquitetura de modelo de linguagem pré-treinada. O ajuste fino de Lora é aplicado para adaptar esse modelo pré-treinado com eficiência. A técnica Lora aproveita a estrutura de baixo rank das diferenças de peso para melhorar o desempenho da adaptação.
Para obter informações detalhadas sobre a técnica LORA, você pode consultar o artigo Lora.
Para treinar o modelo adaptado de Lora, siga estas etapas:
Instale as bibliotecas necessárias, conforme mencionado na seção de instalação.
Defina seu conjunto de dados de treinamento ou use o conjunto de dados SST-2 fornecido.
Configure a arquitetura do modelo e os hiperparâmetros no código.
Execute o código de treinamento e o modelo será ajustado usando a técnica LORA no seu conjunto de dados.
Após o treinamento, você pode usar o modelo treinado de Lora adaptado para inferência em novas entradas de texto. Para fazer isso:
Carregue o modelo treinado de Lora adaptado, conforme demonstrado no código.
Tokenize seu texto de entrada usando o tokenizador do modelo.
Passe a entrada tokenizada para o modelo para classificação de sentimentos.
O modelo preverá se o texto de entrada tem um sentimento positivo ou negativo.

