Codeur - Global
L’API Encoder fournit un objet pouvant contenir des scripts et pouvant être utilisé dans les Intelligence prédictive magasins. Cet objet convertit les données d’entrée en vecteurs de nombres, en fonction d’objectifs et de configurations spécifiques à l’encodeur. Les encodeurs peuvent être utilisés indépendamment pour exécuter des codages ou peuvent être configurés dans le cadre de solutions pour coder des colonnes de texte.
Ce L’API nécessite le module d’extension Intelligence prédictive (com.glide.platform_ml) et est fournie dans l’espace de noms sn_ml .
Les encodeurs sont des objets de traitement de texte qui sont soit préentraînés, soit entraînés en fonction des jeux de données linguistiques que vous fournissez. Vous pouvez former des codeurs qui déterminent comment le système interprète et traite les champs de texte. Pour les solutions ML qui incluent du texte, vous pouvez former un encodeur pour spécifier comment traiter le texte et utiliser l’encodeur formé dans une solution.
Les encodeurs ont une configuration et des versions, et peuvent être entraînés indépendamment avec leur propre fréquence de reformation. Les codeurs définis par API sont différents des codeurs définis par l’interface utilisateur, car la réentraînement des codeurs définis par l’interface utilisateur est contrôlée par les solutions qui les utilisent.
- Créez un ou plusieurs jeux de données à l’aide de l’API DatasetDefinition .
- Utilisez le constructeur pour créer un objet codeur.
- Ajoutez l’objet encoder au magasin d’encodeurs à l’aide de la méthode EncoderStore - add().
- Formez l’encodeur à l’aide de la méthode submitTrainingJob(). Cela crée une version de l’objet que vous pouvez gérer à l’aide de l’API EncoderVersion .
- Solution de classification
- ClusteringSolution (requis sauf si l’algorithme de distance de Levenshtein est utilisé)
- Solution de régression
- SimilaritySolution (obligatoire)
Pour obtenir des instructions d’utilisation, consultez Utilisation des API ML.
Encodeur - Encodeur (configuration d’objet)
Crée un encodeur.
Pour obtenir un encodeur pour un ou plusieurs jeux de données, utilisez ce constructeur pour créer un objet codeur avec un nom unique.
| Nom | Type | Description |
|---|---|---|
| configuration | Objet | Objet JavaScript contenant les propriétés de configuration de la codeur. |
| config.algorithmConfig | Objet | Facultatif. Objet JavaScript contenant les propriétés de configuration de l’algorithme. |
| config.algorithmConfig.algorithm | Chaîne | Nom de l’algorithme pour l’entraînement de cet encodeur.
Valeurs possibles :
|
| config.datasets | Tableau | Liste des noms d’objets DatasetDefinition . |
| config.domainName | Chaîne | Facultatif. Nom du domaine associé à cet ensemble de données. Voir Séparation de domaine et Intelligence prédictive. Par défaut : domaine actuel, par exemple, |
| config.label | Chaîne | Identifie la tâche de prédiction. |
| config.minRowCount | Chaîne | Facultatif. Nombre minimum d’enregistrements requis dans l’ensemble de données pour la formation. Par défaut : 10 000 |
| config.processingLanguage | Chaîne | Facultatif. Traitement du langage au format de code de langue ISO 639-1 à deux lettres. Par défaut : « en » |
| config.mots vides | Tableau | Facultatif. Liste prédéfinie de chaînes que le système génère automatiquement en fonction du language paramètre de propriété. Pour plus d’informations, reportez-vous à la section Créer une liste de mots vides personnalisés. Par défaut : mots vides en anglais |
| config.trainingFrequency | Chaîne | Fréquence de reformation du modèle.
Valeurs possibles :
|
L’exemple suivant montre comment créer une tâche d’encodeur et l’ajouter au magasin d’encodeurs.
var myPrbData = new sn_ml.DatasetDefinition({
'tableName' : 'problem',
'fieldNames' : ['short_description'],
'encodedQuery' : 'activeANYTHING'
});
var myIncidentData = new sn_ml.DatasetDefinition({
'tableName' : 'incident',
'fieldNames' : ['short_description', 'description'],
'encodedQuery' : 'activeANYTHING'
});
var myEncoder = new sn_ml.Encoder({
'label': "encoder",
'datasets' : [myPrbData, myIncidentData],
'algorithmConfig' : {
'algorithm' : 'tf-idf'
}
});
var myEncoderName = sn_ml.EncoderStore.add(myEncoder);
Encodeur : cancelTrainingJob()
Annule une tâche pour un objet d’encodeur qui a été soumis pour une formation.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment annuler une tâche de formation existante.
var myEncoder = sn_ml.EncoderStore.get('ml_sn_global_global_encoder');
myEncoder.cancelTrainingJob();
Encodeur : getActiveVersion()
Obtient l’actif Objet EncoderVersion.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | Objet EncoderVersion actif. |
L’exemple suivant montre comment obtenir une version active Codeur à partir du magasin et renvoyer son état de formation.
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getStatus()), null, 2));
Sortie :
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encodeur : getAllVersions()
Obtient toutes les versions de un encodeur.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Tableau | Versions existantes d’un objet d’encodage. Voir aussi API EncoderVersion . |
L’exemple suivant montre comment obtenir tous les objets de version d’Encoder et y appeler les méthodes de version de l’encodeur getVersionNumber() et getStatus().
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
var mlEncoderVersions = mlEncoder.getAllVersions();
for (i = 0; i < mlEncoderVersions.length; i++) {
gs.print("Version " + mlEncoderVersions[i].getVersionNumber() + " Status: " + mlEncoderVersions[i].getStatus() +"\n");
};
Sortie :
Version 3 Status: {"state":"encoder_complete","percentComplete":"100","hasJobEnded":"true"}
Version 2 Status: {"state":"encoder_complete","percentComplete":"100","hasJobEnded":"true"}
Version 1 Status: {"state":"encoder_cancelled","percentComplete":"0","hasJobEnded":"true"}
Encodeur : getLatestVersion()
Obtient la dernière version de un encodeur.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | EncoderVersion Objet correspondant à la dernière version de un Encoder(). |
L’exemple suivant montre comment obtenir la dernière version d’une un encodeur et renvoyer son état de formation.
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getLatestVersion().getStatus()), null, 2));
Sortie :
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encodeur : getName()
Obtient le nom de l’objet à utiliser pour l’interaction avec le magasin.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Nom de l’objet codeur. |
L’exemple suivant montre comment mettre à jour Codeur les informations du jeu de données et imprimer le nom de l’objet.
// Update encoder
var myIncidentData = new sn_ml.DatasetDefinition({
'tableName' : 'incident',
'fieldNames' : ['category', 'short_description', 'priority'],
'encodedQuery' : 'activeANYTHING'
});
var eligibleFields = JSON.parse(myIncidentData.getEligibleFields(encoder));
var myEncoder = new sn_ml.Encoder({
'label': "my encoder",
'datasets' : [myIncidentData],
'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
'predictedFieldName': 'category'
});
// update encoder
sn_ml.EncoderStore.update('ml_x_snc_global_global_my_definition_4', myEncoder);
// print encoder name
gs.print('Encoder Name: '+myEncoder.getName());
Sortie :
Encoder Name: ml_x_snc_global_global_my_definition_4
Encodeur : getProperties()
Obtient les propriétés de l’objet de solution.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | Contenu du jeu de données et détails de l’objet Encoder() dans l’EncoderStore. |
| <Object>.algorithmConfig.algorithm | Nom de l’algorithme pour l’entraînement de cet encodeur. Valeurs possibles :
Type de données : chaîne. |
| <Object>.algorithmConfig | Facultatif. Objet JavaScript contenant les propriétés de configuration de l’algorithme.
Type de données : Objet. |
| <Object>.datasetsProperties | Liste des propriétés DatasetDefinition() associées à l’encodeur.
Type de données : tableau. |
| <Object>.datasetsProperties.tableName | Nom de la table pour l’ensemble de données. Par exemple, « tableName » : « Incident ». Type de données : chaîne. |
| <Object>.datasetsProperties.fieldNames | Liste des noms de champs de la table spécifiée en tant que chaînes. Par exemple, « fieldNames » : ["short_description », « priority"]. Type de données : tableau. |
| <Object>.datasetsProperties.fieldNames.fieldDetails | Liste des objets JavaScript qui spécifient les propriétés du champ.
Type de données : tableau. |
| <Object>.datasetsProperties.fieldNames.fieldDetails.<object>. nom | Nom du champ définissant le type d’informations auquel limiter cet ensemble de données. Type de données : chaîne. |
| <Object>.datasetsProperties.fieldDetails.<object>. type | Type de champ d’apprentissage machine. Type de données : chaîne. |
| <Object>.datasetsProperties.fieldDetails.encodedQuery | Chaîne de requête codée au format Glide standard. Reportez-vous à la section Chaînes de requêtes codées. Type de données : chaîne. |
| <Object>.domainName | Nom du domaine associé à cet ensemble de données. Voir Séparation de domaine et Intelligence prédictive. Type de données : chaîne. |
| <Object>.étiquette | Identifie la tâche de prédiction.
Type de données : chaîne. |
| <Object>.nom | Nom affecté par le système. Type de données : chaîne. |
| <Object>.predictedFieldName | Identifie un champ à former pour des raisons de prévisibilité. Type de données : chaîne. |
| <Object>.processingLanguage | Traitement du langage au format de code de langue ISO 639-1 à deux lettres. Type de données : chaîne. |
| <Object>.portée | Périmètre de l’objet. Actuellement, la seule valeur valide est global.Type de données : chaîne |
| <Object>.mots vides | Facultatif. Liste prédéfinie de chaînes que le système génère automatiquement en fonction du language paramètre de propriété. Pour plus d’informations, reportez-vous à la section Créer une liste de mots vides personnalisés. Type de données : tableau. |
| <Object>.trainingFrequency | Fréquence de reformation du modèle. Valeurs possibles :
Type de données : chaîne. |
L’exemple suivant obtient les propriétés d’un objet solution un objet d’encodeur dans le magasin.
var myEncoder = sn_ml.EncoderStore.get('ml_sn_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(myEncoder.getProperties()), null, 2));
*** Script: {
"datasetsProperties": [
{
"tableName": "incident",
"fieldNames": [
"assignment_group",
"short_description",
"description"
],
"encodedQuery": "activeANYTHING"
}
],
"domainName": "global",
"label": "my encoder definition",
"name": "ml_x_snc_global_global_my_encoder_definition",
"processingLanguage": "en",
"scope": "global",
"stopwords": [
"Default English Stopwords"
],
"trainingFrequency": "run_once"
}Encodeur : getVersion(version de chaîne)
Obtient un encodeur par numéro de version fourni.
| Nom | Type | Description |
|---|---|---|
| version | Chaîne | Numéro de version existante d’une un encodeur. |
| Type | Description |
|---|---|
| Objet | Version spécifiée de l’objet Encoder() sur lequel vous pouvez appeler les méthodes de l’API EncoderVersion . |
L’exemple suivant montre comment obtenir l’état de formation d’une Un encodeur par numéro de version.
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getVersion('1').getStatus()), null, 2));
Sortie :
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encodeur : setActiveVersion(version de chaîne)
Active une version spécifiée d’un encodeur dans le magasin.
| Nom | Type | Description |
|---|---|---|
| version | Chaîne | Nom de la version de l’objet Encoder() à activer. L’activation de cette version désactive toutes les autres versions. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment activer un encodeur version de solution dans le Store.
sn_ml.Encoder.setActiveVersion("ml_incident_categorization");
Encodeur : submitTrainingJob()
Soumet une tâche de formation.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | EncoderVersion Encoder Objet correspondant à l’objet d’entraînement . |
L’exemple suivant montre comment créer un jeu de données, l’appliquer à un encodeur, ajoutez-le à un magasin et soumettre la tâche de formation.
// Create a dataset
var myData = new sn_ml.DatasetDefinition({
'tableName' : 'incident',
'fieldNames' : ['assignment_group', 'short_description', 'description'],
'encodedQuery' : 'activeANYTHING'
});
// Create an encoder
var myEncoder = new sn_ml.Encoder({
'label': "my encoder definition",
'datasets' : [myData],
'predictedFieldName' : 'assignment_group',
'inputFieldNames':['short_description']
});
// Add the encoder to the store to later be able to retrieve it.
var my_unique_name = sn_ml.EncoderStore.add(myEncoder);
// Train the encoder - this is a long running job
var myEncoderVersion = myEncoder.submitTrainingJob();