Jeux de données de modèle personnalisé
Passez en revue les jeux de données pris en charge pour les modèles personnalisés et la façon de convertir les jeux de données dans un format pris en charge.
Jeux de données autorisés pour la classification de texte personnalisée
Vous pouvez fournir des données étiquetées pour les modèles de classification de texte personnalisé de deux manières :
- Projets Data Labeling
- Fichiers de valeurs séparées par une virgule (
.csv
)
- Exigences relatives aux fichiers CSV
-
-
La première ligne doit être un en-tête contenant les noms de deux colonnes suivants :
text
: capture le texte à classer.labels
: capture des classes affectées. Pour les ensembles de données de classification à plusieurs étiquettes, vous pouvez spécifier plusieurs noms de classe en les joignant avec le symbole|
.
- Toutes les lignes après la ligne d'en-tête contiennent des enregistrements de formation.
- Si le fichier comporte plus de deux colonnes, seules les colonnes
text
etlabels
sont utilisées pour entraîner le modèle. -
Pour l'encodage du fichier CSV, utilisez UTF-8. Lorsque vous utilisez Excel, enregistrez le fichier au format CSV UTF-8 (délimité par des virgules) (.csv).
- Pour le délimiteur, utilisez la virgule (
,
). - Pour le caractère d'échappement, utilisez un guillemet double (
"
), également connu avec le caractère Unicode deU+0022
.Par exemple, dans Excel, si vous saisissez le texte suivant :
This is a "double quote" sentence
La phrase précédente est stockée dans le fichier CSV comme suit :
"This is a ""double quote"" sentence"
Exemple de fichier CSV pour la classification de texte à libellé unique :
text,labels Windows OS -unable to print,Network Printer Failure Citrix Account frequently locking,Account (Password reset) Pull print queue not working ,Application Component Disconnect wifi disable and lan is disconnected at the desktop,Hardware Device Failure
Exemple de fichier CSV pour la classification de texte avec plusieurs libellés :Windows OS -unable to print,Network Printer Failure Pull print queue not working ,Application Component Disconnect|Network Printer Failure wifi disable and lan is disconnected at the desktop,Hardware Device Failure|Network Connection Issue
-
Formats de jeu de données autorisés pour NER personnalisé
Vous pouvez fournir des données étiquetées pour les modèles NER personnalisés de deux manières :
- Projets Data Labeling
- Format des lignes JSON (
.jsonl
).
- Exigences relatives aux fichiers JSON
-
Le fichier JSON n'inclut pas les données d'entraînement. Au lieu de cela, le fichier JSON est un fichier manifeste qui contient des libellés et des pointeurs (chemins relatifs) vers des fichiers avec des données sans étiquette.
Le format JSON est un format de lignes JSON (JSONL), où chaque ligne est un objet JSON unique :
- La première ligne de l'objet décrit l'ensemble de libellés ou de classes et le type de fichier d'annotation.
- Toutes les lignes suivantes décrivent un enregistrement de formation.
-
Enregistrez tous les fichiers texte dans le même répertoire que le fichier manifeste
(.jsonl)
et demandez aux enregistrements d'entraînement de nommer les fichiers.
- Définition de schéma
-
- La première ligne est une ligne d'en-tête. Il contient un objet JSON qui décrit le type de fichier.
- Toute ligne suivante contient un objet JSON qui représente un enregistrement étiqueté.
- Format de ligne d'en-tête
-
Champ Type Description labelsSet
Tableau d'objets. Objet avec un membre de chaîne,
"name"
, qui indique l'ensemble d'entités prises en charge pour l'annotation. Répertoriez toutes les entités ici.annotationFormat
Chaîne (String) Utilisez "ENTITY_EXTRACTION"
pour les ensembles de données NER.datasetFormatDetails
Object Objet avec un membre de chaîne, "formatType"
, qui indique le type de données annotées. Définissez la valeur deformatType
sur"TEXT"
pour Language. - Exemple de schéma JSON :
-
{ "labelsSet": [ { "name": "Label1" }, { "name": "Label2" }, { "name": "Label3" }, { "name": "Label4" } ], "annotationFormat": "ENTITY_EXTRACTION", "datasetFormatDetails": { "formatType": "TEXT" } }
- Format d'enregistrement étiqueté
-
Champ Type Description sourceDetails
Object Objet avec un membre de chaîne,
path
, qui pointe vers le fichier en cours d'annotation.Le chemin du fichier est relatif à l'emplacement du fichier
json
.annotations
Object Objet complexe qui décrit les annotations. entities
Tableau (objets) Liste des entités identifiées dans l'enregistrement. entityType
Chaîne (String) Type d'annotation d'entité. Pour la valeur, utilisez "TEXTSELECTION"
pour NER.labels
Tableau (objets) Chaque objet du tableau possède le membre "label_name"
qui représente le type d'entité identifié.textSpan
Object Objet qui représente l'étendue du texte. Contient deux membres numériques obligatoires : "offset"
et"length"
. - Exemple de schéma JSON pour le format d'enregistrement étiqueté :
-
{ "sourceDetails": { "path": "Complaint3.txt" }, "annotations": [ { "entities": [ { "entityType": "TEXTSELECTION", "labels": [ { "label_name": "Label1" }, { "label_name": "Label2" } ], "textSpan": { "offset": 0, "length": 28 } }, { "entityType": "TEXTSELECTION", "labels": [ { "label_name": "Label1" } ], "textSpan": { "offset": 196, "length": 11 } } ] } ] }
Téléchargement vers le serveur des ensembles de données
Téléchargez des ensembles de données vers des buckets Object Storage.
Vous pouvez également créer des ensembles de données à l'aide du service OCI Data Labeling.
Création d'un bucket
Si vous disposez d'un bucket Object Storage pour les ensembles de données, ignorez cette section.
- Ouvrez le menu de navigation et cliquez sur Stockage. Sous Object Storage et Archive Storage, cliquez sur Regroupements.
- Sous Portée de la liste, dans la liste Compartiment, cliquez sur le nom du compartiment dans lequel créer le bucket. Vous devez déjà être autorisé à ajouter des ressources Object Storage à ce compartiment.
- Cliquez sur Créer un bucket.
- Saisissez le nom du bucket propre à la région.
- Pour les autres champs, cliquez sur les liens En savoir plus, puis choisissez les options qui s'appliquent aux données.
-
Cliquez sur Créer. Par défaut, les buckets ont une visibilité privée, sauf si vous modifiez leur visibilité après les avoir créés.
Vous devez disposer de noms de bucket uniques dans un espace de noms. L'espace de noms est spécifique d'une région mais le nom d'espace de noms est le même dans toutes les régions. Par exemple, si le nom d'espace de noms <your-namespace>
est affecté à la location, il s'agit de son nom dans toutes les régions.
Vous pouvez créer un bucket nommé MyBucket dans la région Ouest des Etats-Unis (Phoenix). Vous ne pouvez pas créer un autre bucket nommé MyBucket dans US West (Phoenix). Toutefois, vous pouvez créer un bucket nommé MyBucket dans la région Allemagne centrale (Francfort). Le nom d'espace de noms étant unique pour un locataire, d'autres utilisateurs peuvent créer des buckets nommés MyBucket dans leurs propres espaces de noms.
Ajout de données à un bucket
Après avoir créé un bucket, ajoutez les ensembles de données au bucket. Si vos ensembles de données se trouvent déjà dans un bucket, ignorez cette section.
Vous stockez les fichiers en tant qu'objets dans des buckets. L'objet est composé des données lui-même et des métadonnées le concernant.
- Ouvrez le menu de navigation et cliquez sur Stockage. Sous Object Storage et Archive Storage, cliquez sur Regroupements.
- Sous Portée de la liste, dans la liste Compartiment, cliquez sur le nom du compartiment qui héberge le bucket.
- Cliquez sur le nom du bucket dans lequel ajouter des données.
- Cliquez sur Charger.
- Chargez les données.