Ce référentiel est inspiré par l'article "Fonction des modèles de grande langue (LLMS)" et contient du code pour la formation d'un modèle de classification de texte en utilisant le jeu de données Stanford Sentiment TreeBank (SST-2) et LORA (adaptation de faible rang des modèles de grande langue). Lora est un moyen de rendre le modèle de langue plus adaptable et efficace. Au lieu de former à nouveau l'ensemble du modèle pour chaque tâche, Lora gèle le modèle pré-formé et ajoute des matrices d'entraînement plus petites à chaque couche de modèle. Ces matrices aident le modèle à s'adapter à différentes tâches sans modifier tous les paramètres.
Avant d'utiliser le code dans ce référentiel, vous devez installer les bibliothèques requises. Vous pouvez le faire en exécutant les commandes suivantes:
! pip install datasets
! pip install transformers
! pip install peft
! pip install evaluateCes commandes installeront les bibliothèques Python nécessaires pour travailler avec des ensembles de données, Transformers, LORA et des mesures d'évaluation.
Voici comment utiliser le code dans ce référentiel:
Chargez l'ensemble de données SST-2 :
Le code charge l'ensemble de données SST-2 à l'aide de la bibliothèque datasets FACE HUGGING. Le SST-2 est constitué de phrases de critiques de films, annotées avec des étiquettes de sentiment. Vous pouvez trouver plus d'informations sur l'ensemble de données SST-2 ici.
Définissez l'architecture du modèle LORA :
Le code utilise la technique LORA pour affiner un modèle de langue pré-formé pour la classification du texte. LORA adapte efficacement le modèle à la tâche en tirant parti de la propriété de faible rang des différences de poids. L'implémentation de LORA se trouve dans le code.
Tokenize l'ensemble de données :
L'ensemble de données est tokenisé à l'aide du tokenizer du modèle, et des jetons spéciaux comme [PAD] sont ajoutés s'ils n'existent pas déjà.
Former le modèle LORA :
Le code définit les hyperparamètres de formation et forme le modèle adapté à LORA à l'aide de l'ensemble de données fourni. Les arguments de formation tels que le taux d'apprentissage, la taille du lot et le nombre d'époches peuvent être ajustés dans la variable training_args .
Inférer avec le modèle LORA formé :
Après l'entraînement, vous pouvez utiliser le modèle formé adapté à LORA pour l'inférence sur les nouvelles entrées de texte. Le code montre comment charger le modèle et faire des prédictions sur une liste d'exemples de phrases.
Le code utilise un modèle de classification de texte basé sur une architecture de modèle de langue pré-formée. LORA Fineding est appliqué pour adapter efficacement ce modèle pré-formé. La technique LORA exploite la structure de faible rang des différences de poids pour améliorer les performances d'adaptation.
Pour des informations détaillées sur la technique LORA, vous pouvez vous référer au papier LORA.
Pour entraîner le modèle adapté à LORA, suivez ces étapes:
Installez les bibliothèques requises comme mentionné dans la section d'installation.
Définissez votre ensemble de données de formation ou utilisez l'ensemble de données SST-2 fourni.
Configurez l'architecture du modèle et les hyperparamètres dans le code.
Exécutez le code de formation et le modèle sera affiné en utilisant la technique LORA sur votre ensemble de données.
Après l'entraînement, vous pouvez utiliser le modèle formé adapté à LORA pour l'inférence sur les nouvelles entrées de texte. Pour faire ceci:
Chargez le modèle d'adaptation LORA qualifié comme démontré dans le code.
Tokenize votre texte d'entrée à l'aide du tokenizer du modèle.
Passez l'entrée à jetons au modèle de classification des sentiments.
Le modèle prédire si le texte d'entrée a un sentiment positif ou négatif.

