Table des matières
Résultats d'apprentissage
Table des matières
Exploration de l'ensemble de données: données essentielles pour l'analyse des sentiments
Accéder à l'ensemble de données TRC2
Méthodologie de recherche: étapes pour analyser le sentiment financier
Étape 1: étiquetage de Finbert
Étape2: prétraitement des données et formatage JSONL
Étape 3: Mini GPT-4O fin
Étape 4: Évaluation et analyse comparative
Étape 5: Déploiement et application pratique
GPT-4O Mini pour l'analyse des sentiments financiers
Étape 1: configuration initiale
Étape2: Définissez une fonction pour générer des étiquettes de sentiment avec Finbert
Étape 3: Prétraitement des données et échantillonnage de l'ensemble de données TRC2
Étape 4: Générez des étiquettes et préparez les données JSONL pour le réglage fin
Étape 5: Convertir les étiquettes en minuscules
Étape 6: Trissure et divisez l'ensemble de données en ensembles de formation et de validation
Étape7: effectuer un échantillonnage stratifié et enregistrer un ensemble de données réduit
Étape8: amende GPT-4O Mini en utilisant l'API à réglage fin d'Openai
Étape 9: Test et évaluation du modèle
Conclusion
Principaux à retenir
Questions fréquemment posées
Maison Périphériques technologiques IA GPT-4O Mini pour l'analyse des sentiments financiers

GPT-4O Mini pour l'analyse des sentiments financiers

Mar 18, 2025 am 11:35 AM

L'analyse des sentiments en finance est un outil puissant pour comprendre les tendances du marché et le comportement des investisseurs. Cependant, les modèles généraux d'analyse des sentiments sont souvent insuffisants lorsqu'ils sont appliqués aux textes financiers en raison de leur complexité et de leur nature nuancée. Ce projet propose une solution en réglant GPT-4O Mini, un modèle de langage léger. En utilisant l'ensemble de données TRC2, une collection d'articles de presse financière Reuters étiquetés avec des classes de sentiment par le modèle expert Finbert, nous visons à améliorer la capacité de GPT-4O Mini à capturer des nuances de sentiment financier.

Ce projet fournit une approche efficace et évolutive de l'analyse des sentiments financiers, ouvrant la porte à une analyse plus basée sur le sentiment nuancé en finance. À la fin, nous démontrons que GPT-4O Mini, lorsqu'il est affiné avec des données spécifiques au domaine, peut servir d'alternative viable à des modèles plus complexes comme Finbert dans des contextes financiers.

Résultats d'apprentissage

  • Comprenez le processus de réglage fin GPT-4O pour l'analyse des sentiments financiers à l'aide de données spécifiques au domaine.
  • Apprenez à prétraiter et à formater les données de texte financier pour la formation des modèles de manière structurée et évolutive.
  • Gardez un aperçu de l'application de l'analyse des sentiments pour les textes financiers et de son impact sur les tendances du marché.
  • Découvrez comment tirer parti des ensembles de données marqués par des experts comme Finbert pour améliorer les performances du modèle dans l'analyse des sentiments financiers.
  • Explorez le déploiement pratique d'un mini-modèle GPT-4O affiné dans les applications financières du monde réel telles que l'analyse du marché et le suivi automatisé du sentiment des nouvelles.

Cet article a été publié dans le cadre du Blogathon de la science des données.

Table des matières

  • Exploration de l'ensemble de données: données essentielles pour l'analyse des sentiments
  • Méthodologie de recherche: étapes pour analyser le sentiment financier
  • GPT-4O Mini pour l'analyse des sentiments financiers
  • Conclusion
  • Questions fréquemment posées

Exploration de l'ensemble de données: données essentielles pour l'analyse des sentiments

Pour ce projet, nous utilisons le jeu de données TRC2 (Trec Reuters Corpus, volume 2), une collection d'articles de presse financière organisés par Reuters et mis à disposition par le biais de l'Institut national des normes et de la technologie (NIST). L'ensemble de données TRC2 comprend une sélection complète d'articles de presse financière de Reuters, souvent utilisés dans les modèles de langage financier en raison de sa large couverture et de sa pertinence pour les événements financiers.

Accéder à l'ensemble de données TRC2

Pour obtenir l'ensemble de données TRC2, les chercheurs et les organisations doivent demander l'accès via NIST. L'ensemble de données est disponible chez NIST Trec Reuters Corpus, qui fournit des détails sur les accords de licence et d'utilisation. Vous aurez besoin de:

  • Visitez le Nisttrecreterscorpus.
  • Suivez le processus de demande de jeu de données spécifié sur le site Web.
  • Assurer la conformité aux exigences de licence pour utiliser l'ensemble de données dans des projets de recherche ou commerciaux.

Une fois que vous avez obtenu l'ensemble de données, prétraitez-vous et segmentez-le en phrases pour l'analyse des sentiments, vous permettant d'appliquer Finbert pour générer des classes de sentiment marquées par des experts.

Méthodologie de recherche: étapes pour analyser le sentiment financier

La méthodologie pour le réglage fin GPT-4O avec des étiquettes de sentiment dérivées de Finbert se compose des étapes principales suivantes:

Étape 1: étiquetage de Finbert

Pour créer l'ensemble de données à réglage fin, nous tirons parti de Finbert, un modèle de langue financière pré-formée sur le domaine financier. Nous appliquons Finbert à chaque phrase de l'ensemble de données TRC2, générant des étiquettes de sentiment d'experts sur trois classes: positive, négative et neutre. Ce processus produit un ensemble de données étiqueté où chaque phrase de Trc2 est associée à un sentiment, fournissant ainsi une base pour la formation de GPT-4O Mini avec des étiquettes fiables.

Étape2: prétraitement des données et formatage JSONL

Les données étiquetées sont ensuite prétraitées et formatées en une structure JSONL adaptée à l'API à réglage fin d'OpenAI. Nous formons chaque point de données avec la structure suivante:

  • Un message système spécifiant le rôle de l'assistant en tant qu'expert financier.
  • Un message utilisateur contenant la phrase financière.
  • Une réponse adjointe qui indique l'étiquette du sentiment prévu de Finbert.

Après l'étiquetage, nous effectuons des étapes de prétraitement supplémentaires, telles que la conversion d'étiquettes en minuscules pour la cohérence et la stratification des données pour garantir une représentation équilibrée d'étiquette. Nous avons également divisé l'ensemble de données en ensembles de formation et de validation, réservant 80% des données pour la formation et 20% pour la validation, ce qui aide à évaluer la capacité de généralisation du modèle.

Étape 3: Mini GPT-4O fin

En utilisant l'API à réglage fin d'Openai, nous affinons GPT-4O Mini avec l'ensemble de données pré-étiqueté. Les paramètres de réglage fin, tels que le taux d'apprentissage, la taille du lot et le nombre d'époches, sont optimisés pour atteindre un équilibre entre la précision du modèle et la généralisation. Ce processus permet à GPT-4O Mini d'apprendre des données spécifiques au domaine et améliore ses performances sur les tâches d'analyse des sentiments financiers.

Étape 4: Évaluation et analyse comparative

Après la formation, les performances du modèle sont évaluées en utilisant des mesures d'analyse des sentiments courants comme la précision et le score F1, permettant une comparaison directe avec les performances de Finbert sur les mêmes données. Cette analyse comparative montre à quel point GPT-4O Mini généralise les classifications des sentiments dans le domaine financier et confirme si elle peut systématiquement surpasser Finbert en précision.

Étape 5: Déploiement et application pratique

Après avoir confirmé des performances supérieures, GPT-4O Mini est prêt pour le déploiement dans les applications financières du monde réel, telles que l'analyse du marché, le conseil en investissement et le suivi automatisé du sentiment d'information. Ce modèle affiné fournit une alternative efficace aux modèles financiers plus complexes, offrant des capacités d'analyse de sentiment robustes et évolutives adaptées à l'intégration dans les systèmes financiers.

Si vous souhaitez apprendre les bases de l'analyse des sentiments, consultez notre article sur l'analyse des sentiments à l'aide de Python!

GPT-4O Mini pour l'analyse des sentiments financiers

Suivez cette approche structurée et étape par étape pour naviguer de manière transparente dans chaque étape du processus. Que vous soyez débutant ou expérimenté, ce guide garantit la clarté et la réussite de la mise en œuvre du début à la fin.

Étape 1: configuration initiale

Chargez les bibliothèques requises et configurez l'environnement.

 De Transformers Import Autotokenzizer, AutomodeforsequenceClassification
Importer une torche
Importer des pandas en tant que PD
à partir de TQDM IMPORT TQDM

tokenizer = autotokenizer.from_pretraind ("PROSUSAI / FINBERT")
modèle = AutomodelorsEquenceClassification.from_pretraind ("Prosusai / Finbert")

Device = torch.device ('cuda' if torch.cuda.is_available () else 'CPU')
Model.To (Device)
Copier après la connexion

Étape2: Définissez une fonction pour générer des étiquettes de sentiment avec Finbert

  • Cette fonction accepte l'entrée de texte, la tokenise et utilise Finbert pour prédire les étiquettes de sentiment.
  • Mappage d'étiquettes: Finbert produit trois classes - positif, négatif et neutre.
 def get_sentiment (texte):
    entrées = tokenizer (texte, return_tensers = "pt", troncature = true, max_length = 512) .to (périphérique)
    avec torch.no_grad ():
        sorties = modèle (** entrées)
    Logits = sorties.logits
    Sentiment = torch.argmax (Logits, dim = 1) .item ()
    Sentiment_Label = ["positif", "négatif", "neutre"] [Sentiment]
    Retour Sentiment_Label
Copier après la connexion

Étape 3: Prétraitement des données et échantillonnage de l'ensemble de données TRC2

Vous devez prévoir soigneusement l'ensemble de données TRC2 pour conserver uniquement les phrases pertinentes pour le réglage fin. Les étapes suivantes décrivent comment lire, nettoyer, diviser et filtrer les données de l'ensemble de données TRC2.

Compte tenu des contraintes de non-divulgation, cette section fournit un aperçu de haut niveau du flux de travail de prétraitement des données avec lepseudocode.

  • Données de chargement et d'extraction: l'ensemble de données, fourni dans un format compressé, a été chargé et extrait à l'aide de méthodes de gestion de texte standard. Les sections pertinentes de chaque document ont été isolées pour se concentrer sur le contenu textuel clé.
  • Nettoyage de texte et segmentation des phrases: Après avoir isolé les sections de contenu, chaque document a été nettoyé pour supprimer les caractères étrangers et assurer la cohérence de la mise en forme. Cela a préparé le contenu pour se diviser en phrases ou unités de texte plus petites, ce qui améliore les performances du modèle en fournissant des segments gérables pour l'analyse des sentiments.
  • Stockage des données structurées: Pour faciliter le traitement rationalisé, les données ont été organisées dans un format structuré où chaque ligne représente une phrase ou un segment de texte individuel. Cette configuration permet un traitement, un filtrage et un étiquetage efficaces, ce qui le rend adapté aux modèles de langage fin.
  • Filtre et écran pour les segments de texte pertinents: Pour maintenir une qualité de données élevée, nous avons appliqué divers critères pour filtrer les segments de texte non pertinents ou bruyants. Ces critères comprenaient l'élimination des segments trop courts, l'élimination de ceux avec des modèles spécifiques indiquant un contenu non-sentiment et à l'exclusion de segments avec des caractères spéciaux excessifs ou des caractéristiques de formatage spécifiques.
  • Prétraitement final: seuls les segments qui répondaient aux normes de qualité prédéfinis ont été conservés pour la formation modèle. Les données filtrées ont été enregistrées en tant que fichier structuré pour une référence facile dans le flux de travail de réglage fin.
 # Chargez l'ensemble de données compressé à partir du fichier
ouvrir compresser_file en tant que fichier:
    # Lisez le contenu du fichier en mémoire
    data = read_file (fichier)

# Extraire des sections pertinentes de chaque document
Pour chaque document dans les données:
    Extraire Document_ID
    Date d'extraction
    extraire main_text_content

# Définir une fonction pour nettoyer et segmenter le contenu du texte
fonction Clean_and_segment_text (texte):
    # Supprimer les caractères indésirables et les espaces blancs
    Cleaned_text = retire_special_characters (texte)
    Cleaned_text = standardize_whitespace (Cleaned_text)
    
    # Divisez le texte nettoyé en phrases ou en segments de texte
    Sentences = Split_into_Sentences (Cleaned_text)
    
    phrases de retour

# Appliquer la fonction de nettoyage et de segmentation au contenu de chaque document
Pour chaque document dans les données:
    Sentures = Clean_and_segment_text (document ['main_text_content'])
    Enregistrer les phrases au format structuré
    
# Créez un stockage de données structuré pour les phrases individuelles
Initialiser la liste vide de Structured_data

Pour chaque phrase en phrases:
    # Ajouter la phrase aux données structurées
    Structured_data.append (phrase)

# Définissez une fonction pour filtrer les phrases indésirables en fonction de critères spécifiques
fonction filter_sences (phrase):
    Si la phrase est trop courte:
        retourner faux
    Si la phrase contient des modèles spécifiques (par exemple, dates ou symboles excessifs):
        retourner faux
    Si la phrase correspond aux caractéristiques de formatage indésirables:
        retourner faux
    
    Retour vrai

# Appliquer le filtre aux données structurées
filtered_data = [phrase pour la phrase dans Structured_data si filter_sences (phrase)]

# Filtrez en outre les phrases en fonction de la longueur minimale ou d'autres critères
final_data = [phrase pour la phrase dans filtered_data si rencontre_minimum_length (phrase)]

# Enregistrer la structure de données finale pour la formation du modèle
Enregistrer final_data comme structuré_file
Copier après la connexion
  • Chargez l'ensemble de données et échantillonnez 1 000 000 de phrases au hasard pour assurer une taille de jeu de données gérable pour le réglage fin.
  • Stockez les phrases échantillonnées dans une fragmentation des données pour permettre une manipulation structurée et un traitement facile.
 df_sampled = df.sample (n = 1000000, random_state = 42) .reset_index (drop = true)
Copier après la connexion

Étape 4: Générez des étiquettes et préparez les données JSONL pour le réglage fin

  • Boucle à travers les phrases échantillonnées, utilisez Finbert pour étiqueter chaque phrase et formatez-la comme JSONL pour GPT-4O MINI FINE-TUNING.
  • Structure pour JSONL: chaque entrée comprend un message système, un contenu utilisateur et la réponse de sentiment de l'assistant.
 Importer JSON

JSONL_DATA = []
Pour _, Row in TQDM (df_sampled.ITERROWS (), Total = df_sampled.shape [0]):
    contenu = row ['phrase']
    Sentiment = get_sentiment (contenu)
    
    jsonl_entry = {
        "Messages": [
            {"rôle": "système", "contenu": "L'assistant est un expert financier."},
            {"rôle": "utilisateur", "contenu": contenu},
            {"Role": "Assistant", "Content": Sentiment}
        ]]
    }
    JSONL_DATA.APPEND (JSONL_ENTRY)

avec open ('finetuning_data.jsonl', 'w') comme jsonl_file:
    Pour l'entrée dans JSONL_DATA:
        jsonl_file.write (json.dumps (entrée) '\ n')
Copier après la connexion

Étape 5: Convertir les étiquettes en minuscules

  • Assurer la cohérence de l'étiquette en convertissant les étiquettes de sentiment en minuscules, en alignant le formatage d'Openai pour le réglage fin.
 avec open ('finetuning_data.jsonl', 'r') comme jsonl_file:
    data = [json.loads (ligne) pour la ligne dans JSONL_FILE]

Pour l'entrée dans les données:
    entrée ["Messages"] [2] ["Content"] = entrée ["Messages"] [2] ["Content"]. Lower ()

avec open ('finetuning_data_lowercase.jsonl', 'w') comme new_jsonl_file:
    Pour l'entrée dans les données:
        new_jsonl_file.write (json.dumps (entrée) '\ n')
Copier après la connexion

Étape 6: Trissure et divisez l'ensemble de données en ensembles de formation et de validation

  • Mélanger les données: randomisez l'ordre des entrées pour éliminer le biais de commande.
  • Split en une formation 80% et des ensembles de validation de 20%.
 Importer au hasard
Random.seed (42)

Random.shuffle (données)

Split_ratio = 0,8
Split_index = int (len (data) * Split_ratio)

Training_Data = Data [: Split_index]
validation_data = data [Split_index:]

avec Open ('Training_data.jsonl', 'W') comme train_file:
    Pour l'entrée dans Training_Data:
        Train_file.write (json.dumps (entrée) '\ n')

avec open ('validation_data.jsonl', 'w') comme val_file:
    pour l'entrée dans validation_data:
        val_file.write (json.dumps (entrée) '\ n')
Copier après la connexion

Étape7: effectuer un échantillonnage stratifié et enregistrer un ensemble de données réduit

  • Pour optimiser davantage, effectuez un échantillonnage stratifié pour créer un ensemble de données réduit tout en maintenant les proportions d'étiquettes.
  • Utilisez l'échantillonnage stratifié: assurez-vous une distribution égale des étiquettes sur les ensembles de formation et de validation pour un réglage fin équilibré.
 de sklearn.model_selection import train_test_split

data_df = pd.dataframe ({{
    'contenu': [entrée ["messages"] [1] ["Contenu"] pour la saisie dans les données], 
    'Label': [entrée ["Messages"] [2] ["Content"] pour la saisie dans les données]
})

df_sampled, _ = Train_test_split (data_df, stratify = data_df ['label'], test_size = 0.9, random_state = 42)
Train_df, val_df = Train_test_split (df_sampled, stratify = df_sampled ['label'], test_size = 0.2, random_state = 42)

def df_to_jsonl (df, nom de fichier):
    JSONL_DATA = []
    pour _, ligne dans df.Iterrows ():
        jsonl_entry = {
            "Messages": [
                {"rôle": "système", "contenu": "L'assistant est un expert financier."},
                {"rôle": "utilisateur", "contenu": row ['contenu']},
                {"Role": "Assistant", "Content": Row ['Label']}
            ]]
        }
        JSONL_DATA.APPEND (JSONL_ENTRY)
    
    avec ouvert (nom de fichier, 'w') comme jsonl_file:
        Pour l'entrée dans JSONL_DATA:
            jsonl_file.write (json.dumps (entrée) '\ n')

DF_TO_JSONL (Train_DF, 'Reduced_training_data.jsonl')
df_to_jsonl (val_df, 'reduction_validation_data.jsonl')
Copier après la connexion

Étape8: amende GPT-4O Mini en utilisant l'API à réglage fin d'Openai

  • Avec vos fichiers JSONL préparés, suivez la documentation d'Openai pour affiner GPT-4O Mini sur les ensembles de données de formation et de validation préparés.
  • Téléchargez des données et démarrez des réglages fins: Téléchargez les fichiers JSONL sur la plate-forme d'OpenAI et suivez leurs instructions API pour lancer le processus de réglage fin.

GPT-4O Mini pour l'analyse des sentiments financiers

Étape 9: Test et évaluation du modèle

Pour évaluer les performances du modèle GPT-4O à réglage fin, nous l'avons testée sur un ensemble de données de sentiment financier étiqueté disponible sur Kaggle. Cet ensemble de données contient 5 843 phrases étiquetées dans des contextes financiers, ce qui permet une comparaison significative entre le modèle affiné et Finbert.

Finbert a marqué une précision de 75,81%, tandis que le modèle GPT-4O affiné a atteint 76,46%, démontrant une légère amélioration.

Voici le code utilisé pour les tests:

 Importer des pandas en tant que PD
Importer un système d'exploitation
Importer Openai
à partir de Dotenv Import Load_Dotenv

# Chargez le fichier CSV
csv_file_path = 'data.csv' # Remplacez par votre chemin de fichier réel
df = pd.read_csv (csv_file_path)

# Convertir DataFrame au format texte
avec open ('phrases.txt', 'w', encoding = 'utf-8') comme f:
    pour index, ligne dans df.Iterrows ():
        phrase = ligne ['phrase']. strip () # phrase propre
        Sentiment = Row ['Sentiment']. Strip (). Lower () # Assurez-vous que le sentiment est minuscule et propre
        f.write (f "{phrase} @ {Sentiment} \ n")             

# Variables d'environnement de chargement
load_dotenv ()

# Définissez votre clé API Openai
openai.api_key = os.getenv ("openai_api_key") # Assurez-vous que Openai_API_KEY est défini dans vos variables d'environnement

# Chemin vers le fichier texte de l'ensemble de données
file_path = 'Sentences.txt' # Fichier texte contenant des phrases et des étiquettes

# Lire les phrases et les véritables étiquettes de l'ensemble de données
phrases = []
true_labels = []

avec open (file_path, 'r', encoding = 'utf-8') en tant que fichier:
    Lines = file.readlines ()

# Extraire les phrases et les étiquettes
Pour la ligne en lignes:
    line = line.strip ()
    Si '@' en ligne:
        phrase, label = line.rsplit ('@', 1)
        phrases.append (phrase.strip ())
        true_labels.append (label.strip ())

# Fonction pour obtenir des prédictions du modèle affiné
def get_openai_predictions (phrase, modèle = "your_finetuned_model_name"): # remplacer par le nom de votre modèle
    essayer:
        réponse = openai.chatcompletion.create (
            modèle = modèle,
            messages = [
                {"rôle": "système", "contenu": "Vous êtes un expert en analyse des sentiments financiers."},
                {"rôle": "utilisateur", "contenu": phrase}
            ],
            max_tokens = 50,
            Température = 0,5
        )
        retour de réponse ['choix'] [0] ['message'] ['contenu']. strip ()
    sauf exception comme e:
        print (f "Erreur de génération de prédiction pour la phrase: '{phrase}'. Erreur: {e}")
        retourner "inconnu"

# Générer des prédictions pour l'ensemble de données
prédit_labels = []
pour la phrase en phrases:
    prédiction = get_openai_predictions (phrase)
    
    # Normalisez les prédictions vers «positif», «neutre», «négatif»
    Si «positif» dans Prediction.Lower ():
        prédit_labels.append ('positif')
    elif 'neutre' dans Prediction.Lower ():
        prédit_labels.append ('neutre')
    elif 'négatif' dans Prediction.Lower ():
        prédit_labels.append («négatif»)
    autre:
        prédit_labels.append ('inconnu')

# Calculez la précision du modèle
correct_count = sum ([pred == true for Pred, true in zip (prédit_labels, true_labels)]))
précision = correct_count / len (phrases)

Imprimer (f'Agiatie: {Précision: .4f} ') # Sortie attendue: 0,7646
Copier après la connexion

Conclusion

En combinant l'expertise des étiquettes du domaine financier de Finbert avec la flexibilité de GPT-4O Mini, ce projet réalise un modèle de sentiment financier haute performance qui dépasse Finbert en précision. Ce guide et cette méthodologie ouvrent la voie à l'analyse des sentiments reproductibles, évolutifs et interprétables, spécifiquement adapté à l'industrie financière.

Principaux à retenir

  • GPT-4O Mini avec des données spécifiques au domaine améliore sa capacité à capturer le sentiment financier nuancé, surperformant des modèles comme Finbert en précision.
  • L'ensemble de données TRC2, organisé par Reuters, fournit des articles de presse financière de haute qualité pour une formation efficace d'analyse des sentiments.
  • Le prétraitement et l'étiquetage avec Finbert permettent à GPT-4O Mini pour générer des prévisions de sentiment plus précises pour les textes financiers.
  • L'approche démontre l'évolutivité de GPT-4O Mini pour les applications financières du monde réel, offrant une alternative légère aux modèles complexes.
  • En tirant parti de l'API à réglage fin d'Openai, cette méthode optimise GPT-4O Mini pour une analyse efficace et efficace des sentiments financiers.

Questions fréquemment posées

Q1. Pourquoi utiliser GPT-4O Mini au lieu de Finbert pour l'analyse des sentiments financiers?

A. GPT-4O Mini fournit une alternative légère et flexible et peut surpasser Finbert sur des tâches spécifiques avec un réglage fin. En affinant des données spécifiques au domaine, GPT-4O Mini peut capturer des modèles de sentiment nuancées dans les textes financiers tout en étant plus efficace et plus facile à déployer.

Q2. Comment demander l'accès à l'ensemble de données TRC2?

A. Pour accéder à l'ensemble de données TRC2, soumettez une demande par le biais de l'Institut national des normes et de la technologie (NIST) sur ce lien. Passez en revue les instructions du site Web pour conclure des accords de licence et d'utilisation, généralement requis pour la recherche et l'utilisation commerciale.

Q3. Puis-je utiliser un ensemble de données différent pour l'analyse des sentiments financiers?

A. Vous pouvez également utiliser d'autres ensembles de données comme la phrase financière ou des ensembles de données personnalisés contenant des textes financiers étiquetés. Le jeu de données TRC2 convient particulièrement bien aux modèles de sentiment de formation, car il inclut le contenu des actualités financières et couvre un large éventail de sujets financiers.

Q4. Comment Finbert génère-t-il les étiquettes de sentiment?

A. Finbert est un modèle linguistique spécifique au domaine financier qui préfère les données financières et les amendes pour l'analyse des sentiments. Lorsqu'il est appliqué aux phrases TRC2, il classe chaque phrase en un sentiment positif, négatif ou neutre en fonction du contexte linguistique dans les textes financiers.

Q5. Pourquoi devons-nous convertir les étiquettes en minuscules en JSONL?

A. La conversion des étiquettes en minuscules garantit une cohérence avec les exigences de réglage d'ouverture d'Openai, qui s'attendent souvent à ce que les étiquettes soient sensibles à la casse. Il aide également à prévenir les décalages pendant l'évaluation et maintient une structure uniforme dans l'ensemble de données JSONL.

Les médias présentés dans cet article ne sont pas détenus par l'analytique vidhya et sont utilisés à la discrétion de l'auteur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
Nordhold: Système de fusion, expliqué
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1672
14
Tutoriel PHP
1276
29
Tutoriel C#
1256
24
Comment construire des agents d'IA multimodaux à l'aide d'AGNO Framework? Comment construire des agents d'IA multimodaux à l'aide d'AGNO Framework? Apr 23, 2025 am 11:30 AM

Tout en travaillant sur une IA agentique, les développeurs se retrouvent souvent à naviguer dans les compromis entre la vitesse, la flexibilité et l'efficacité des ressources. J'ai exploré le cadre de l'IA agentique et je suis tombé sur Agno (plus tôt c'était Phi-

Comment ajouter une colonne dans SQL? - Analytique Vidhya Comment ajouter une colonne dans SQL? - Analytique Vidhya Apr 17, 2025 am 11:43 AM

Instruction ALTER TABLE de SQL: Ajout de colonnes dynamiquement à votre base de données Dans la gestion des données, l'adaptabilité de SQL est cruciale. Besoin d'ajuster votre structure de base de données à la volée? L'énoncé de la table alter est votre solution. Ce guide détaille l'ajout de Colu

Openai change de mise au point avec GPT-4.1, priorise le codage et la rentabilité Openai change de mise au point avec GPT-4.1, priorise le codage et la rentabilité Apr 16, 2025 am 11:37 AM

La version comprend trois modèles distincts, GPT-4.1, GPT-4.1 Mini et GPT-4.1 Nano, signalant une évolution vers des optimisations spécifiques à la tâche dans le paysage du modèle grand langage. Ces modèles ne remplacent pas immédiatement les interfaces orientées utilisateur comme

Nouveau cours court sur les modèles d'intégration par Andrew Ng Nouveau cours court sur les modèles d'intégration par Andrew Ng Apr 15, 2025 am 11:32 AM

Déverrouiller la puissance des modèles d'intégration: une plongée profonde dans le nouveau cours d'Andrew Ng Imaginez un avenir où les machines comprennent et répondent à vos questions avec une précision parfaite. Ce n'est pas de la science-fiction; Grâce aux progrès de l'IA, cela devient un R

Simulation et analyse de lancement de fusées à l'aide de Rocketpy - Analytics Vidhya Simulation et analyse de lancement de fusées à l'aide de Rocketpy - Analytics Vidhya Apr 19, 2025 am 11:12 AM

Simuler les lancements de fusée avec Rocketpy: un guide complet Cet article vous guide à travers la simulation des lancements de fusées haute puissance à l'aide de Rocketpy, une puissante bibliothèque Python. Nous couvrirons tout, de la définition de composants de fusée à l'analyse de Simula

Google dévoile la stratégie d'agent la plus complète au cloud prochain 2025 Google dévoile la stratégie d'agent la plus complète au cloud prochain 2025 Apr 15, 2025 am 11:14 AM

Gemini comme fondement de la stratégie d'IA de Google Gemini est la pierre angulaire de la stratégie d'agent AI de Google, tirant parti de ses capacités multimodales avancées pour traiter et générer des réponses à travers le texte, les images, l'audio, la vidéo et le code. Développé par Deepm

Robots humanoïdes open source que vous pouvez imprimer vous-même: les câlins de visage achètent la robotique du pollen Robots humanoïdes open source que vous pouvez imprimer vous-même: les câlins de visage achètent la robotique du pollen Apr 15, 2025 am 11:25 AM

"Super heureux d'annoncer que nous acquérons une robotique de pollen pour amener les robots open source au monde", a déclaré Hugging Face sur X. "Depuis que Remi Cadene nous a rejoints de Tesla, nous sommes devenus la plate-forme logicielle la plus utilisée pour la robotique ouverte grâce à des remerciements grâce à des remerciements grâce à des remerciements à une robotique ouverte grâce à des remerciements à des remerciements à des remerciements à la robotique ouverte grâce à des remerciements à Gérom

Deepcoder-14b: la compétition open source à O3-MinI et O1 Deepcoder-14b: la compétition open source à O3-MinI et O1 Apr 26, 2025 am 09:07 AM

Dans un développement significatif pour la communauté de l'IA, Agetica et ensemble AI ont publié un modèle de codage d'IA open source nommé Deepcoder-14b. Offrir des capacités de génération de code à égalité avec des concurrents à source fermée comme OpenAI

See all articles