PredictabilityEstimate : global

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 7 minutes de lecture
  • L’API PredictabilityEstimate est un objet pouvant contenir des scripts et pouvant être utilisé dans les Intelligence prédictive magasins. Cet objet fournit une estimation du degré de prévisibilité des champs d’un jeu de données et des fonctionnalités qui peuvent être utiles pour prédire ces champs.

    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 .

    Le flux d’estimation de la prévisibilité de la configuration à la formation est le suivant :
    1. Créez un jeu de données à l’aide de l’API DatasetDefinition .
    2. Utilisez le constructeur pour créer un objet d’estimation de la prédictibilité.
    3. Ajoutez l’objet d’estimation de la prévisibilité au magasin d’estimation de la prévisibilité à l’aide de la méthode PredictabilityEstimateStore - add().
    4. Formez l’estimation de la prévisibilité à 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 PredictabilityEstimateVersion .
    5. Obtenir les valeurs prédictives estimées à l’aide de la méthode PredictabilityEstimateVersion – getResults().
    Remarque :
    Cette API s’exécute avec tous les privilèges. Pour restreindre l’accès des utilisateurs, incluez un mécanisme de contrôle d’accès dans le script.

    Pour obtenir des instructions d’utilisation, consultez Utilisation des API ML.

    PredictabilityEstimate : PredictabilityEstimate(configuration d’objet)

    Crée une estimation de la prévisibilité.

    Pour obtenir de nouvelles estimations de prédictibilité sur le même jeu de données, utilisez ce constructeur pour créer un objet PredictabilityEstimate avec un nom unique.

    Tableau 1. Paramètres
    Nom Type Description
    configuration Objet Objet JavaScript contenant les propriétés de configuration de la Estimation de la prévisibilité.
    {
      "dataset": {Object},
      "domainName": "String",
      "inputFieldNames": [Array],
      "label": "String",
      "minRowCount": "String",
      "predictedFieldName": "String",
      "trainingFrequency": "String"
    }
    config.dataset Objet Nom de 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, « global ».

    config.inputFieldNames Tableau Liste des champs d’entrée candidats en tant que chaînes à prendre en compte pour l’estimation.
    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.predictedFieldName Chaîne Identifie un champ à former pour des raisons de prévisibilité.
    config.trainingFrequency Chaîne Facultatif. Fréquence de reformation du modèle.
    Valeurs possibles :
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Par défaut : run_once

    L’exemple suivant montre comment créer une tâche d’estimation et l’ajouter au magasin PredictabilityEstimation.

    var myIncidentData = new sn_ml.DatasetDefinition({
      'tableName' : 'incident',
      'encodedQuery' : 'activeANYTHING'
    });
    
    var myEstimate = new sn_ml.PredictabilityEstimate({
      'label': "predictability estimate",
      'dataset' : myIncidentData,
      'inputFieldNames':['short_description'], 
      'predictedFieldName': 'category'
    });
    
    var myEstimateName = sn_ml.PredictabilityEstimateStore.add(myEstimate);

    PredictabilityEstimate : cancelTrainingJob()

    Annule une tâche pour Un objet d’estimation de la prévisibilité qui a été soumis pour une formation.

    Tableau 2. Paramètres
    Nom Type Description
    Aucun
    Tableau 3. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment annuler une tâche de formation existante.

    var myEstimate = sn_ml.PredictabilityEstimateStore.get('ml_sn_global_global_predictability_estimate');
    
    myEstimate.cancelTrainingJob();

    PredictabilityEstimate : getActiveVersion()

    Obtient l’actif Objet PredictabilityEstimateVersion.

    Tableau 4. Paramètres
    Nom Type Description
    Aucun
    Tableau 5. Renvoie
    Type Description
    Objet Objet PredictabilityEstimateVersion actif.

    L’exemple suivant montre comment obtenir une version active Estimation de la prévisibilité à partir du magasin et renvoyer son état de formation.

    var mlEstimate = sn_ml.PredictabilityEstimateStore.get('ml_x_snc_global_global_predictability_estimate');
    
    gs.print(JSON.stringify(JSON.parse(mlEstimate.getActiveVersion().getStatus()), null, 2));

    Sortie :

    {
      "state": "predictability_estimate_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    PredictabilityEstimate : getAllVersions()

    Obtient toutes les versions de une estimation de la prévisibilité.

    Tableau 6. Paramètres
    Nom Type Description
    Aucun
    Tableau 7. Renvoie
    Type Description
    Tableau Versions existantes d’un objet de solution. Voir également PredictabilityEstimateVersion (en anglais seulement) API.

    L’exemple suivant montre comment obtenir tous les objets de version PredictabilityEstimate et appeler les méthodes de version d’estimation getVersionNumber() et getStatus() sur ceux-ci.

    var mlEstimate = sn_ml.PredictabilityEstimateStore.get('ml_x_snc_global_global_predictability_estimate');
    
    var mlEstimateVersions = mlEstimate.getAllVersions();
    
    for (i = 0; i < mlEstimateVersions.length; i++) {
    gs.print("Version " + mlEstimateVersions[i].getVersionNumber() + " Status: " + mlEstimateVersions[i].getStatus() +"\n");
    };

    Sortie :

    Version 3 Status: {"state":"predictability_estimate_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 2 Status: {"state":"predictability_estimate_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 1 Status: {"state":"predictability_estimate_cancelled","percentComplete":"0","hasJobEnded":"true"}

    PredictabilityEstimate : getLatestVersion()

    Obtient la dernière version de une estimation de la prévisibilité.

    Tableau 8. Paramètres
    Nom Type Description
    Aucun
    Tableau 9. Renvoie
    Type Description
    Objet PredictabilityEstimateVersion Objet correspondant à la dernière version de a PredictabilityEstimate().

    L’exemple suivant montre comment obtenir la dernière version d’une une estimation de la prévisibilité et renvoyer son état de formation.

    var mlEstimate = sn_ml.PredictabilityEstimateStore.get('ml_x_snc_global_global_predictability_estimate');
    
    gs.print(JSON.stringify(JSON.parse(mlEstimate.getLatestVersion().getStatus()), null, 2));

    Sortie :

    {
      "state": "predictability_estimate_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    PredictabilityEstimate : getName()

    Obtient le nom de l’objet à utiliser pour l’interaction avec le magasin.

    Tableau 10. Paramètres
    Nom Type Description
    Aucun
    Tableau 11. Renvoie
    Type Description
    Chaîne Nom de l’objet d’estimation.

    L’exemple suivant montre comment mettre à jour Estimation de la prévisibilité les informations du jeu de données et imprimer le nom de l’objet.

    // Update estimate
    var myIncidentData = new sn_ml.DatasetDefinition({
       'tableName' : 'incident',
       'fieldNames' : ['category', 'short_description', 'priority'],
       'encodedQuery' : 'activeANYTHING'
    });
    
    var myEstimate = new sn_ml.PredictabilityEstimate({
       'label': "my estimate",
       'dataset' : myIncidentData,
       'inputFieldNames':['short_description'],
       'predictedFieldName': 'category'
    });
    
    // update estimate
    sn_ml.PredictabilityEstimateStore.update('ml_x_snc_global_global_my_definition_4', myEstimate);
    
    // print estimate name
    gs.print('Estimate Name: '+myEstimate.getName());

    Sortie :

    Estimate Name: ml_x_snc_global_global_my_definition_4

    PredictabilityEstimate : getProperties()

    Obtient les propriétés de l’objet d’estimation de la prédictibilité.

    Tableau 12. Paramètres
    Nom Type Description
    Aucun
    Tableau 13. Renvoie
    Type Description
    Objet Contenu des détails du jeu de données et de l’objet PredictabilityEstimate() dans PredictabilityEstimateStore.
    {
      "datasetProperties": {Object},
      "domainName": "String",
      "inputFieldNames": [Array],
      "label": "String",
      "name": "String",
      "predictedFieldName": "String",
      "scope": "String",
      "trainingFrequency": "String"
    }
    <Object>.datasetProperties (en anglais seulement)

    Répertorie les propriétés de l’objet DatasetDefinition() associé à l’estimation.

    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }
    <Object>.datasetProperties.tableName Nom de la table pour l’ensemble de données. Par exemple, « tableName » : « Incident ».

    Type de données : chaîne.

    <Object>.datasetProperties.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>.datasetProperties.fieldNames.fieldDetails Liste des objets JavaScript qui spécifient les propriétés du champ.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Type de données : tableau.

    <Object>.datasetProperties.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>.datasetProperties.fieldDetails.<object>. type Type de champ d’apprentissage machine.

    Type de données : chaîne.

    <Object>.datasetProperties.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>.inputFieldNames Liste des champs d’entrée candidats en tant que chaînes à prendre en compte pour l’estimation.

    Type de données : chaîne.

    <Object>.étiquette Identifie la tâche de prédiction.
    {
      "label": "my first prediction"
    }

    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>.portée Périmètre de l’objet. Actuellement, la seule valeur valide est global.

    Type de données : chaîne

    <Object>.trainingFrequency Fréquence de reformation du modèle.
    Valeurs possibles :
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Par défaut : run_once

    Type de données : chaîne.

    L’exemple suivant obtient les propriétés d’un objet solution Un objet d’estimation de la prévisibilité dans le magasin.

    var mySolution = sn_ml.PredictabilityEstimateStore.get('ml_sn_global_global_predictability_estimate');
    
    gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
    Sortie :
    *** Script: {
      "datasetProperties": {
        "tableName": "incident",
        "fieldNames": [
          "category",
          "short_description",
          "priority",
          "assignment_group.name"
        ],
        "fieldDetails": [
          {
            "name": "category",
            "type": "nominal"
          },
          {
            "name": "short_description",
            "type": "text"
          }
        ]
      },
      "domainName": "global",
      "inputFieldNames": [
        "short_description"
      ],
      "label": "my estimate definition",
      "name": "ml_x_snc_global_global_my_definition_26",
      "predictedFieldName": "category",
      "processingLanguage": "en",
      "scope": "global",
      "stopwords": [
        "Default English Stopwords"
      ],
      "trainingFrequency": "run_once"
    }

    PredictabilityEstimate : getVersion(version de chaîne)

    Obtient une estimation de la prévisibilité par numéro de version fourni.

    Tableau 14. Paramètres
    Nom Type Description
    version Chaîne Numéro de version existante d’une une estimation de la prévisibilité.
    Tableau 15. Renvoie
    Type Description
    Objet Version spécifiée de l’objet PredictabilityEstimate() sur lequel vous pouvez appeler les méthodes d’API PredictabilityEstimateVersion .

    L’exemple suivant montre comment obtenir l’état de formation d’une Estimation de la prévisibilité par numéro de version.

    var mlEstimate = sn_ml.PredictabilityEstimateStore.get('ml_x_snc_global_global_predictability_estimate');
    
    gs.print(JSON.stringify(JSON.parse(mlEstimate.getVersion('1').getStatus()), null, 2));

    Sortie :

    {
      "state": "predictability_estimate_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    PredictabilityEstimate : setActiveVersion(version de chaîne)

    Active une version spécifiée d’une estimation de la prévisibilité dans le magasin.

    Tableau 16. Paramètres
    Nom Type Description
    version Chaîne Nom de la version de l’objet PredictabilityEstimate() à activer.

    L’activation de cette version désactive toutes les autres versions.

    Tableau 17. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment activer une estimation de la prévisibilité version de solution dans le Store.

    sn_ml.PredictabilityEstimate.setActiveVersion("ml_x_snc_global_global_my_estimate_definition");

    PredictabilityEstimate : submitTrainingJob()

    Soumet une tâche de formation.

    Remarque :
    Avant d’exécuter cette méthode, vous devez d’abord ajouter une estimation de prédictibilité au magasin à l’aide de la méthode PredictabilityEstimateStore - add().
    Tableau 18. Paramètres
    Nom Type Description
    Aucun
    Tableau 19. Renvoie
    Type Description
    Objet PredictabilityEstimateVersion Objet correspondant à l’objet d’entraînement PredictabilityEstimate .

    L’exemple suivant montre comment créer un jeu de données, l’appliquer à une estimation de la prévisibilité, ajoutez-la à 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 estimate 
    var myEstimate = new sn_ml.PredictabilityEstimate({
    
      'label': "my estimate definition",
      'dataset' : myData,
      'predictedFieldName' : 'assignment_group',
      'inputFieldNames':['short_description']
    
    });
    
    // Add the estimate to the store to later be able to retrieve it.
    var my_unique_name = sn_ml.PredictabilityEstimateStore.add(myEstimate);
    
    // Train the estimate - this is a long running job 
    var myEstimateVersion = myEstimate.submitTrainingJob();