0 / 0
Retourner à la version anglaise de la documentation
Création de vos propres modèles
Dernière mise à jour : 28 nov. 2024
Création de vos propres modèles

Certains algorithmes de Watson Natural Language Processing peuvent être entraînés avec vos propres données. Par exemple, vous pouvez créer des modèles personnalisés basés sur vos propres données pour l'extraction d'entité, pour classer des données, pour extraire des sentiments et pour extraire des sentiments cible.

Vous pouvez utiliser un modèle IBM Foundation basé sur un transformateur intégré, appelé Slate, pour créer vos propres modèles. Le modèle Slate a été entraîné sur un ensemble de données très volumineux qui a été prétraité pour filtrer la haine, les biais et les grossièretés.

Pour créer votre propre classification, modèle d'extraction d'entité ou modèle de sentiment, vous pouvez affiner le modèle Slate sur vos propres données. Pour entraîner le modèle dans un délai raisonnable, il est recommandé d'utiliser des environnements basés sur GPU.

Prise en charge de langue pour les modèles personnalisés

Vous pouvez créer des modèles personnalisés et utiliser les modèles de dictionnaire et de classification préformés suivants pour les langues affichées.

Langues prises en charge pour les modèles de dictionnaire et de classification pré-entraînés
Modèle personnalisé Codes de langue pris en charge
Modèles de dictionnaire Af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw (toutes les langues prises en charge dans la partie Syntaxe de l'étiquetage de la parole)
Régles Af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw (toutes les langues prises en charge dans la partie Syntaxe de l'étiquetage de la parole)
Classification SVM avec TFIDF Af, ar, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw
Classification SVM avec USE ar, de, en, es, fr, it, ja, ko, nl, pl, pt, ru, tr, zh_cn, zh_tw
Classement de CNN avec GloVe ar, de, en, es, fr, it, ja, ko, nl, pt, zh_cn
BERT Classification multilingue Af, ar, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw
modèle Transformer af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw
Listes de mots d'arrêt ar, de, en, es, fr, it, ja, ko

Pour une liste des codes de langue et des langues correspondantes, voir Codes de langue.

Sauvegarde et chargement de modèles personnalisés

Si vous souhaitez utiliser votre modèle personnalisé dans un autre bloc-notes, enregistrez-vous en tant qu'actif de données pour votre projet. De cette façon, vous pouvez exporter le modèle dans le cadre d'une exportation de projet.

Utilisez la bibliothèque ibm-watson-studio-lib pour sauvegarder et charger des modèles personnalisés.

Pour sauvegarder un modèle personnalisé dans votre bloc-notes en tant qu'actif de données à exporter et à utiliser dans un autre projet :

  1. Vérifiez que vous disposez d'un jeton d'accès sur la page Contrôle d'accès de l'onglet Gérer de votre projet. Seuls les administrateurs de projet peuvent créer des jetons d'accès. Le jeton d'accès peut disposer d'autorisations Editeur ou d'affichage. Seuls les éditeurs peuvent injecter le jeton dans un bloc-notes.

  2. Ajoutez le jeton de projet à un bloc-notes en cliquant sur Plus > Insérer un jeton de projet dans la barre d'actions du bloc-notes, puis exécutez la cellule. Lorsque vous exécutez la cellule de code masquée insérée, un objet wslib est créé et vous pouvez l'utiliser pour les fonctions de la bibliothèque ibm-waton-studio-lib . Pour plus de détails sur les fonctions ibm-watson-studio-lib disponibles, voir Utilisation de ibm-watson-studio-lib pour Python.

  3. Exécutez la méthode train() pour créer un dictionnaire personnalisé, une expression régulière ou un modèle de classification et affectez ce modèle personnalisé à une variable. Par exemple :

    custom_block = CNN.train(train_stream, embedding_model.embedding, verbose=2)
    
  4. Si vous souhaitez sauvegarder un dictionnaire personnalisé ou un modèle d'expression régulière, convertissez-le en bloc RBRGeneric. La conversion d'un dictionnaire personnalisé ou d'un modèle d'expression régulière en bloc RBRGeneric est utile si vous souhaitez charger et exécuter le modèle à l'aide de l' API pour Watson Natural Language Processing for Embed . A ce jour, Watson Natural Language Processing for Embed prend en charge l'exécution de modèles de dictionnaire et d'expression régulière uniquement en tant que blocs RBRGeneric. Pour convertir un modèle en bloc RBRGeneric, exécutez les commandes suivantes:

    # Create the custom regular expression model
    custom_regex_block = watson_nlp.resources.feature_extractor.RBR.train(module_folder, language='en', regexes=regexes)
    
    # Save the model to the local file system
    custom_regex_model_path = 'some/path'
    custom_regex_block.save(custom_regex_model_path)
    
    # The model was saved in a file "executor.zip" in the provided path, in this case "some/path/executor.zip"
    model_path = os.path.join(custom_regex_model_path, 'executor.zip')
    
    # Re-load the model as a RBRGeneric block
    custom_block = watson_nlp.blocks.rules.RBRGeneric(watson_nlp.toolkit.rule_utils.RBRExecutor.load(model_path), language='en')
    
  5. Sauvegardez le modèle en tant qu'actif de données dans votre projet à l'aide de ibm-watson-studio-lib:

    wslib.save_data("<model name>", custom_block.as_bytes(), overwrite=True)
    

    Lors de la sauvegarde des modèles de transformateur, vous avez la possibilité de sauvegarder le modèle au format UC. Si vous prévoyez d'utiliser le modèle uniquement dans des environnements d'UC, l'utilisation de ce format rendra votre modèle personnalisé plus efficace. Pour ce faire, définissez l'option de format d'UC comme suit:

    wslib.save_data('<model name>', data=custom_model.as_bytes(cpu_format=True), overwrite=True)
    

Pour charger un modèle personnalisé dans un bloc-notes importé à partir d'un autre projet :

  1. Vérifiez que vous disposez d'un jeton d'accès sur la page Contrôle d'accès de l'onglet Gérer de votre projet. Seuls les administrateurs de projet peuvent créer des jetons d'accès. Le jeton d'accès peut disposer d'autorisations Editeur ou d'affichage. Seuls les éditeurs peuvent injecter le jeton dans un bloc-notes.

  2. Ajoutez le jeton de projet à un bloc-notes en cliquant sur Plus > Insérer un jeton de projet dans la barre d'actions du bloc-notes, puis exécutez la cellule. Lorsque vous exécutez la cellule de code masquée insérée, un objet wslib est créé et vous pouvez l'utiliser pour les fonctions de la bibliothèque ibm-watson-studio-lib . Pour plus de détails sur les fonctions ibm-watson-studio-lib disponibles, voir Utilisation de ibm-watson-studio-lib pour Python.

  3. Chargez le modèle à l'aide de ibm-watson-studio-lib et watson-nlp:

    custom_block = watson_nlp.load(wslib.load_data("<model name>"))
    

Rubrique parent : Watson Bibliothèque de traitement de langage naturel

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus