RegressionSolution : Global

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 7 Minuten Lesedauer
  • Die RegressionSolution -API ist ein skriptfähiges Objekt, das in den Filialen Predictive Intelligence verwendet wird.

    Diese(s) Die API erfordert das Plugin Predictive Intelligence (com.glide.platform_ml) und wird im Namespace sn_ml bereitgestellt.

    Der Lösungs-Setup-zu-Schulungs-Flow sieht wie folgt aus:
    1. Erstellen Sie einen Datensatz mit der DatasetDefinition -API.
    2. Optional. Erstellen Sie einen Encoder mit der Encoder -API.
    3. Verwenden Sie den Konstruktor, um ein Regressionslösungsobjekt zu erstellen.
    4. Fügen Sie das Lösungsobjekt dem Regressionslösungsspeicher mit der Methode „RegressionSolutionStore - add()“ hinzu.
    5. Trainieren Sie die Lösung mit der Methode „submitTrainingJob()“. Dadurch wird eine Version des Objekts erstellt, die Sie mit der RegressionSolutionVersion -API verwalten können.
    6. Vorhersagen mit der Methode „RegressionSolutionVersion –predict()“ abrufen.
    Hinweis:
    Diese API wird vor Release Washington DCPatch 7 mit vollständigen Rechten ausgeführt. Nach diesem Release gewähren Sie Zugriff über ACLs. Weitere Informationen finden Sie unter Query ACLs.

    Richtlinien zur Verwendung finden Sie unter ML-APIs verwenden.

    RegressionSolution: RegressionSolution(Object config)

    Erstellt eine Regressionslösung.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Konfiguration Objekt JavaScript-Objekt mit Konfigurationseigenschaften für Lösung.
    {
      "algorithmConfig": {Object},
      "dataset": {Object},
      "domainName": "String",
      "encoder": {Object},
      "inputFieldNames": [Array],
      "label": "String",
      "minRowCount": "String",
      "predictedFieldName": "String",
      "predictedInterval": [Array],
      "processingLanguage": "String",
      "stopwords": [Array],
      "trainingFrequency": "String"
    }
    config.dataset Objekt Nameder Datensatzdefinition.
    config.domainName Zeichenfolge Optional. Domänenname, der diesem Datensatz zugeordnet ist. Siehe Domain Separation und Predictive Intelligence.

    Standard: Aktuelle Domäne, z. B. „global“.

    config.encoder Objekt Optional. Trainiertes Encoder-Objekt, das dieser Lösung zugewiesen werden soll. Siehe Encoder: Encoder (Objektkonfiguration).
    config.inputFieldNames Array Liste der Eingabefeldnamen als Zeichenfolgen. Das Modell verwendet diese Felder, um Vorhersagen zu treffen.
    config.label Zeichenfolge Gibt die Vorhersageaufgabe an.
    config.minRowCount Zeichenfolge Optional. Mindestanzahl von Datensätzen, die im Datensatz für das Training erforderlich sind.

    Standard: 10000

    config.predictedFieldName Zeichenfolge Obligatorisch, sofern nicht predictedIntervalfestgelegt wird. Gibt ein Feld an, das für die Vorhersagbarkeit trainiert werden soll.
    config.predictedInterval Array Obligatorisch, sofern nicht predictedFieldNamefestgelegt wird. Legt einen Bereich von Feldern fest, um Ihre Lösung auf Vertrauen zu trainieren. Unterstützt die Bereitstellung von nicht numerischen Datumsfeldern für 2. Beispiel: „predictedInterval“: ['sys_updated_on', 'sys_created_on'].
    config.processingLanguage Zeichenfolge Optional. Verarbeitungssprache im zweibuchstabigen ISO 639-1-Sprachcodeformat.

    Standard: „en“

    config.stoppwords Array Optional. Voreingestellte Liste von Zeichenfolgen, die das System basierend auf der Einstellung der Eigenschaft language automatisch generiert. Einzelheiten hierzu finden Sie unter Anwenderdefinierte Stoppwortliste erstellen.

    Standard: Englische Stoppwörter

    config.trainingFrequency Zeichenfolge Die Häufigkeit, mit der das Modell neu trainiert werden soll.
    Mögliche Werte:
    • jeden_30_Tage
    • jeden_60_Tage
    • jeden_90_Tage
    • jeden_120_Tage
    • jeden_180_Tage
    • run_once
    Standard: run_once

    Das folgende Beispiel zeigt, wie Sie ein Objekt erstellen und zu hinzufügen RegressionSolution Store.

    var myNewData = new sn_ml.DatasetDefinition(
      { 
         'tableName' : 'incident', 
         'fieldNames' : ['category', 'short_description', 'priority'],
         'fieldDetails' : [
           {
             'name' : 'category',
             'type' : 'nominal'
           },
           {
             'name' : 'short_description',
             'type' : 'text'
           }], 
         'encodedQuery' : 'activeANYTHING'
      });
    
    var mySimSolution = new sn_ml.SimilaritySolution({
      'label': "my solution definition",
      'dataset' : myNewData,
      'predictedFieldName' : 'category',
      'inputFieldNames': ['short_description']
    });
    
    var mySimilarityName = sn_ml.SimilaritySolutionStore.add(mySimSolution);

    Im folgenden Beispiel wird gezeigt, wie Sie mit der Eigenschaft predictedInterval ein zu trainierendes Objekt erstellen.

    var myIncidentData = new sn_ml.DatasetDefinition({
    'tableName' : 'incident',
    'fieldNames' : ['short_description', 'sys_updated_on','sys_created_on'],
    'encodedQuery' : 'activeANYTHING'
    });
     
    var mySolution = new sn_ml.RegressionSolution({
    'label': 'reg assinGroup',
    'dataset' : myIncidentData,
    'predictedInterval': ['sys_updated_on', 'sys_created_on'],
    'inputFieldNames': ['short_description']
    });
     
    var my_unique_name = sn_ml.RegressionSolutionStore.add(mySolution)

    RegressionSolution – cancelTrainingJob()

    Storniert einen Auftrag für ein Lösungsobjekt , das zum Trainieren übermittelt wurde.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie Sie einen vorhandenen Trainingsauftrag abbrechen.

    var mySolution = sn_ml.RegressionSolutionStore.get('ml_sn_global_global_regression');
    
    mySolution.cancelTrainingJob();

    RegressionSolution – getActiveVersion()

    Ruft das aktive ab RegressionSolutionVersion- Objekt.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 5. Ergebnisse
    Typ Beschreibung
    Objekt Aktives RegressionSolutionVersion- Objekt.

    Das folgende Beispiel zeigt, wie Sie eine aktive RegressionSolution Version aus dem Store abrufen und ihren Schulungsstatus zurückgeben.

    var mlSolution = sn_ml.RegressionSolutionStore.get('ml_x_snc_global_global_regression');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus()), null, 2));

    Ausgabe:

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

    RegressionSolution – getAllVersions()

    Ruft alle Versionen von ab ein RegressionSolution- Objekt.

    Tabelle : 6. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 7. Ergebnisse
    Typ Beschreibung
    Array Vorhandene Versionen eines Lösungsobjekts. Siehe auch RegressionSolutionVersion -API.

    Das folgende Beispiel zeigt, wie Sie alle RegressionSolution- Versionsobjekte abrufen und die Lösungsversionsmethoden getVersionNumber() und getStatus() dafür aufrufen.

    var mlSolution = sn_ml.RegressionSolutionStore.get('ml_x_snc_global_global_regression');
    
    var mlSolutionVersions = mlSolution.getAllVersions();
    
    for (i = 0; i < mlSolutionVersions.length; i++) {
    gs.print("Version " + mlSolutionVersions[i].getVersionNumber() + " Status: " + mlSolutionVersions[i].getStatus() +"\n");
    };

    Ausgabe:

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

    RegressionSolution – getLatestVersion()

    Ruft die aktuelle Version von ab eine Lösung.

    Tabelle : 8. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 9. Ergebnisse
    Typ Beschreibung
    Objekt RegressionSolutionVersion Objekt, das der aktuellen Version von entsprichtin RegressionSolution().

    Das folgende Beispiel zeigt, wie Sie die aktuelle Version einer Lösung abrufen und ihren Trainingsstatus zurückgeben.

    var mlSolution = sn_ml.RegressionSolutionStore.get('ml_x_snc_global_global_regression');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getLatestVersion().getStatus()), null, 2));

    Ausgabe:

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

    RegressionSolution – getName()

    Ruft den Namen des Objekts ab, das für die Interaktion mit dem Store verwendet werden soll.

    Tabelle : 10. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 11. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Name des Lösungsobjekts.

    aktualisiert RegressionSolution Datensatzinformationen

    // Update solution
    var myIncidentData = new sn_ml.DatasetDefinition({
       'tableName' : 'incident',
       'fieldNames' : ['category', 'short_description', 'priority'],
       'encodedQuery' : 'activeANYTHING'
    });
    
    var eligibleFields = JSON.parse(myIncidentData.getEligibleFields('regression'));
    
    var myRegression = new sn_ml.RegressionSolution({
       'label': "my regression solution",
       'dataset' : myIncidentData,
       'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
       'predictedFieldName': 'category'
    });
    
    // update solution
    sn_ml.RegressionSolutionStore.update('ml_x_snc_global_global_my_solution_definition_4', myRegression);
    
    // print solution name
    gs.print('Solution Name: '+myRegression.getName());

    Ausgabe:

    Solution Name: ml_x_snc_global_global_my_solution_definition_4

    RegressionSolution – getProperties()

    Ruft Lösungsobjekteigenschaften ab.

    Tabelle : 12. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 13. Ergebnisse
    Typ Beschreibung
    Objekt Inhalt der Details des Datensatzes und des RegressionSolution() -Objekts im RegressionSolutionStore.
    {
      "datasetProperties": {Object},
      "domainName": "String",
      "encoder": {Object},
      "inputFieldNames": [Array],
      "label": "String",
      "name": "String",
      "predictedFieldName": "String",
      "predictedInterval": [Array],
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "trainingFrequency": "String"
    }
    <Object>.datasetProperties

    Listet die Eigenschaften des DatasetDefinition()- Objekts auf, das der Lösung zugeordnet ist.

    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Datentyp: Objekt.

    <Object>.datensatzEigenschaften.tabellenname Name der Tabelle für den Datensatz. Beispiel: „tableName“ : „Incident“.

    Datentyp: Zeichenfolge.

    <Object>.datasetProperties.fieldNames Liste der Feldnamen aus der angegebenen Tabelle als Zeichenfolgen. Beispiel: „fieldNames“ : ["short_description", "priority"].

    Datentyp: Array.

    <Object>.datasetProperties.fieldNames.fieldDetails Liste von JavaScript-Objekten, die Feldeigenschaften angeben.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Datentyp: Array.

    <Object>.datasetProperties.fieldNames.fieldDetails.<object>.name Name des Felds, das die Art der Informationen definiert, auf die dieser Datensatz beschränkt werden soll

    Datentyp: Zeichenfolge.

    <Object>.datasetProperties.fieldDetails.<object>.type Feldtyp für maschinelles Lernen.

    Datentyp: Zeichenfolge.

    <Object>.datasetProperties.fieldDetails.encodedQuery Codierte Abfragezeichenfolge im Standard-Glide-Format. Siehe Codierte Abfragezeichenfolgen.

    Datentyp: Zeichenfolge.

    <Object>.Domänenname Domänenname, der diesem Datensatz zugeordnet ist. Siehe Domain Separation und Predictive Intelligence.

    Datentyp: Zeichenfolge.

    <Object>.Encoder Encoder-Objekt, das dieser Lösung zugewiesen ist. Siehe Encoder: Encoder (Objektkonfiguration).

    Datentyp: Objekt.

    <Object>.eingabeFeldNamen Liste der Eingabefeldnamen als Zeichenfolgen. Das Modell verwendet diese Felder, um Vorhersagen zu treffen.

    Datentyp: Zeichenfolge.

    <Object>.label Gibt die Vorhersageaufgabe an.
    {
      "label": "my first prediction"
    }

    Datentyp: Zeichenfolge.

    <Object>.name Vom System zugewiesener Name

    Datentyp: Zeichenfolge.

    <Object>.predictedFieldName Gibt ein Feld an, das für die Vorhersagbarkeit trainiert werden soll.

    Datentyp: Zeichenfolge.

    <Object>.predictedInterval Wertebereich, der das Konfidenzniveau der Vorhersage angibt.

    Datentyp: Array

    <Object>.processingLanguage Verarbeitungssprache im zweibuchstabigen ISO 639-1-Sprachcodeformat.

    Datentyp: Zeichenfolge.

    <Object>.scope Objektbereich. Derzeit ist globalder einzige gültige Wert.

    Datentyp: Zeichenfolge

    <Object>.Stoppwörter Optional. Voreingestellte Liste von Zeichenfolgen, die das System basierend auf der Einstellung der Eigenschaft language automatisch generiert. Einzelheiten hierzu finden Sie unter Anwenderdefinierte Stoppwortliste erstellen.

    Datentyp: Array.

    <Object>.trainingFrequency Die Häufigkeit, mit der das Modell neu trainiert werden soll.
    Mögliche Werte:
    • jeden_30_Tage
    • jeden_60_Tage
    • jeden_90_Tage
    • jeden_120_Tage
    • jeden_180_Tage
    • run_once
    Standard: run_once

    Datentyp: Zeichenfolge.

    Im folgenden Beispiel werden Eigenschaften eines -Lösungsobjekts im Store abgerufen.

    var mySolution = sn_ml.RegressionSolutionStore.get('ml_sn_global_global_regression_solution');
    
    gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
    Ausgabe:
    *** Script: {
      "datasetProperties": {
        "tableName": "cloudinfratext",
        "fieldNames": [
          "short_description",
          "sourcedc",
          "targetdc",
          "dbsize",
          "duration"
        ]
      },
      "domainName": "global",
      "encoderProperties": {
        "datasetsProperties": [],
        "name": "wc_regression"
      },
      "inputFieldNames": [
        "short_description",
        "sourcedc",
        "targetdc",
        "dbsize"
      ],
      "label": "Regression Test for DB Restore",
      "name": "ml_x_snc_global_global_regression",
      "predictedFieldName": "duration",
      "processingLanguage": "en",
      "scope": "global",
      "stopwords": [
        "Default English Stopwords"
      ],
      "trainingFrequency": "every_30_days"
    }

    RegressionSolution – getVersion(Zeichenfolgenversion)

    Ruft eine Lösung ab anhand der angegebenen Versionsnummer.

    Tabelle : 14. Parameter
    Name Typ Beschreibung
    Version Zeichenfolge Vorhandene Versionsnummer einer Lösung.
    Tabelle : 15. Ergebnisse
    Typ Beschreibung
    Objekt Angegebene Version des RegressionSolution()- Objekts, für das Sie RegressionSolutionVersion -API-Methoden aufrufen können.

    Das folgende Beispiel zeigt, wie Sie den Trainingsstatus einer Lösung anhand der Versionsnummer abrufen.

    var mlSolution = sn_ml.RegressionSolutionStore.get('ml_x_snc_global_global_regression');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getVersion('1').getStatus()), null, 2));

    Ausgabe:

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

    RegressionSolution – setActiveVersion(String version)

    Aktiviert eine angegebene Version einer Lösung im Store.

    Tabelle : 16. Parameter
    Name Typ Beschreibung
    Version Zeichenfolge Name der zu aktivierenden Version des RegressionSolution() -Objekts.

    Durch die Aktivierung dieser Version werden alle anderen Versionen deaktiviert.

    Tabelle : 17. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie Sie eine Lösungsversion im Store aktivieren.

    sn_ml.RegressionSolution.setActiveVersion("ml_incident_categorization");

    RegressionSolution –submitTrainingJob()

    Übermittelt einen Trainingsauftrag.

    Hinweis:
    Bevor Sie diese Methode ausführen können, müssen Sie dem Speicher mit der Methode „RegressionSolutionStore - add()“ eine Lösung hinzufügen.
    Tabelle : 18. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 19. Ergebnisse
    Typ Beschreibung
    Objekt RegressionSolutionVersion entspricht RegressionSolution trainierten

    Das folgende Beispiel zeigt, wie Sie einen Datensatz erstellen, auf eine Lösung anwenden, die Lösung einem Store hinzufügen und den Trainingsauftrag übermitteln.

    // Create a dataset 
    var myData = new sn_ml.DatasetDefinition({
    
      'tableName' : 'incident',
      'fieldNames' : ['assignment_group', 'short_description', 'description'],
      'encodedQuery' : 'activeANYTHING'
    
    });
    
    // Create a solution 
    var mySolution = new sn_ml.RegressionSolution({
    
      'label': "my solution definition",
      'dataset' : myData,
      'predictedFieldName' : 'assignment_group',
      'inputFieldNames':['short_description']
    
    });
    
    // Add the solution to the store to later be able to retrieve it.
    var my_unique_name = sn_ml.RegressionSolutionStore.add(mySolution);
    
    // Train the solution - this is a long running job 
    var myRegressionVersion = mySolution.submitTrainingJob();