ClassificationSolution – Global
Die ClassificationSolution -API ist ein skriptfähiges Objekt, das in Predictive Intelligence -Speichern verwendet wird.
Diese(s) Die API erfordert das Plugin Predictive Intelligence (com.glide.platform_ml) und wird im sn_ml- Namespace bereitgestellt.
- Erstellen Sie einen Datensatz mit der DatasetDefinition- API.
- Optional. Erstellen Sie einen Encoder mit der Encoder -API.
- Verwenden Sie den Konstruktor, um ein Klassifizierungslösungsobjekt zu erstellen.
- Fügen Sie das Lösungsobjekt dem Klassifizierungslösungsspeicher mit der Methode ClassificationSolutionStore – add() hinzu.
- Trainieren Sie die Lösung mit der Methode „submitTrainingJob() “. Dadurch wird eine Version des Objekts erstellt, die Sie mit der ClassificationSolutionVersion -API verwalten können.
- Rufen Sie Vorhersagen mit der Methode ClassificationSolutionVersion – prediction() ab.
Richtlinien zur Verwendung finden Sie unter ML-APIsverwenden.
ClassificationSolution – ClassificationSolution(Object config)
Erstellt eine Klassifizierungslösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Konfiguration | Objekt | JavaScript-Objekt, das Konfigurationseigenschaften des enthält Lösung. |
| config.algorithmConfig | Objekt | JavaScript-Objekt, das Eigenschaften der Algorithmuskonfiguration enthält. |
| config.algorithmConfig.algorithm | Zeichenfolge | Methode zum Codieren Ihrer Lösung.
Mögliche Werte:
|
| config.algorithmConfig.targetClassRecall | Zeichenfolge | Wendet einen Klassenrückrufparameter an, um das Training einer Lösung so zu steuern, dass eine bestimmte Klasse beeinflusst wird. Format ist „ <ClassName:RecallValue> “, wobei der Rückrufwert eine Zahl zwischen 0 und 100 ist, die einen Prozentsatz darstellt. Beispiel: Um diesen Lösungsparameter für alle Datensätze, die Sie in der E-Mail-Klasse trainieren, auf eine Genauigkeit von 90 % festzulegen und anzuwenden, wird der Wert auf „E-Mail:90“festgelegt. |
| config.dataset | Objekt | Nameder Datensatzdefinition. |
| config.domainName | Zeichenfolge | Optional. Domänenname, der diesem Datensatz zugeordnet ist. Siehe Domänentrennung und Predictive Intelligence. Standard: Aktuelle Domäne, z. B. |
| config.encoder | Objekt | Optional. Trainiertes Encoder-Objekt, das dieser Lösung zugewiesen werden soll. Siehe Encoder: Encoder(Object config). |
| config.groupByFieldName | Zeichenfolge | Optional. Feldname, nach dem das System Datensätze gruppiert, um Klassifizierungslösungen zu erstellen. Weitere Informationen zur Verwendung finden Sie unter „group by“ für die Klassifizierungverwenden. |
| config.inputFieldNames | Array | Liste der Eingabefeldnamen als Zeichenfolgen. Das Modell verwendet die folgenden Felder, um Vorhersagen zu treffen. |
| config.label | Zeichenfolge | Identifiziert die Vorhersageaufgabe. |
| config.minRowCount | Zeichenfolge | Optional. Mindestanzahl von Datensätzen, die im Datensatz für das Training erforderlich sind. Standard: 10.000 |
| config.predictedFieldName | Zeichenfolge | Identifiziert ein Feld, das für die Vorhersagbarkeit trainiert werden soll. |
| config.processingLanguage | Zeichenfolge | Optional. Verarbeitungssprache im aus zwei Buchstaben bestehenden ISO 639-1-Sprachcodeformat. Standard: „en“ |
| config.stoppwords | Array | Optional. Voreingestellte Liste von Zeichenfolgen, die das System basierend auf der Eigenschaftseinstellung language automatisch generiert. Weitere Informationen finden Sie unter Benutzerdefinierte Stoppwortlisten erstellen. Standard: Englische Stoppwörter |
| config.trainingHäufigkeit | Zeichenfolge | Die Häufigkeit, mit der das Modell neu trainiert werden soll.
Mögliche Werte:
|
Das folgende Beispiel zeigt, wie Sie ein Objekt erstellen und dem hinzufügen ClassificationSolution Store.
var myData = new sn_ml.DatasetDefinition(
{
'tableName' : 'incident',
'fieldNames' : ['category', 'short_description', 'priority'],
'fieldDetails' : [
{
'name' : 'category',
'type' : 'nominal'
},
{
'name' : 'short_description',
'type' : 'text'
}],
'encodedQuery' : 'activeANYTHING'
});
var mySolution = new sn_ml.ClassificationSolution({
'label': "my solution definition",
'dataset' : myData,
'predictedFieldName' : 'category',
'inputFieldNames': ['short_description']
});
var myClassificationName = sn_ml.ClassificationSolutionStore.add(mySolution);
ClassificationSolution – cancelTrainingJob()
Bricht einen Auftrag für ein Lösungsobjekt , das zum Trainieren übermittelt wurde.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie ein vorhandener Trainingsauftrag abgebrochen wird.
var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification');
mySolution.cancelTrainingJob();
ClassificationSolution – getActiveVersion()
Ruft den aktiven ab ClassificationSolutionVersion- Objekt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Aktives ClassificationSolutionVersion- Objekt. |
Das folgende Beispiel zeigt, wie Sie eine aktive KlassifizierungLösung Version aus dem Store abrufen und ihren Trainingsstatus zurückgeben.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus()), null, 2));
Ausgabe:
{
"state": "solution_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
ClassificationSolution – getAllVersions()
Ruft alle Versionen von ab eine Klassifizierungslösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Array | Vorhandene Versionen eines Lösungsobjekts. Siehe auch ClassificationSolutionVersion -API. |
Das folgende Beispiel zeigt, wie alle ClassificationSolution -Versionsobjekte abgerufen und die Lösungsversionsmethoden getVersionNumber() und getStatus() für sie aufgerufen werden.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
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"}
ClassificationSolution – getLatestVersion()
Ruft die neueste Version von ab eine Lösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | ClassificationSolutionVersion Objekt, das der neuesten Version von entspricht eine ClassificationSolution(). |
Das folgende Beispiel zeigt, wie Sie die neueste Version einer Lösung abrufen und ihren Trainingsstatus zurückgeben.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
gs.print(JSON.stringify(JSON.parse(mlSolution.getLatestVersion().getStatus()), null, 2));
Ausgabe:
{
"state": "solution_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
ClassificationSolution – getName()
Ruft den Namen des Objekts ab, das für die Interaktion mit dem Speicher verwendet werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Name des Lösungsobjekts. |
Das folgende Beispiel zeigt, wie KlassifizierungLösung Datensatzinformationen aktualisiert und der Name des Objekts gedruckt wird.
// Update solution
var myIncidentData = new sn_ml.DatasetDefinition({
'tableName' : 'incident',
'fieldNames' : ['category', 'short_description', 'priority'],
'encodedQuery' : 'activeANYTHING'
});
var eligibleFields = JSON.parse(myIncidentData.getEligibleFields('classification'));
var myClassification = new sn_ml.ClassificationSolution({
'label': "my classification solution",
'dataset' : myIncidentData,
'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
'predictedFieldName': 'category'
});
// update solution
sn_ml.ClassificationSolutionStore.update('ml_x_snc_global_global_my_solution_definition_4', myClassification);
// print solution name
gs.print('Solution Name: '+myClassification.getName());
Ausgabe:
Solution Name: ml_x_snc_global_global_my_solution_definition_4
ClassificationSolution – getProperties()
Ruft Eigenschaften des Lösungsobjekts aban.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Inhalt der Datensatz- und ClassificationSolution()- Objektdetails im ClassificationSolutionStore. |
| <Object>.algorithmConfig | Methode zum Codieren der Lösung. Datentyp: Objekt. |
| <Object>.algorithmConfig.algorithm | Name des Codierungsalgorithmus zum Trainieren dieser Lösung. Mögliche Werte:
Datentyp: Zeichenfolge. |
| <Object>.algorithmConfig.targetClassRecall | Klassenrückrufparameter, um das Training einer Lösung so zu steuern, dass eine bestimmte Klasse beeinflusst wird. Der Rückrufwert ist eine Zahl zwischen 0 und 100, die einen Prozentsatz darstellt. Datentyp: Zeichenfolge |
| <Object>.datasetEigenschaften | Listet die Eigenschaften des DatasetDefinition()- Objekts auf, das der Lösung zugeordnet ist.
Datentyp: Objekt. |
| <Object>.datasetProperties.tableName | 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 der JavaScript-Objekte, die Feldeigenschaften angeben.
Datentyp: Array. |
| <Object>.datasetProperties.fieldNames.fieldDetails.<object>.name | Name des Felds, das den Typ der Informationen definiert, auf die dieser Datensatz beschränkt werden soll. Datentyp: Zeichenfolge. |
| <Object>.datasetProperties.fieldDetails.<object>.type | ML-Feldtyp (maschinelles Lernen). Datentyp: Zeichenfolge. |
| <Object>.datasetProperties.fieldDetails.encodedQuery | Codierte Abfragezeichenfolge im Standard-Glide-Format. Weitere Informationen finden Sie unter Codierte Abfragezeichenfolgen. Datentyp: Zeichenfolge. |
| <Object>.domainName | Domänenname, der diesem Datensatz zugeordnet ist. Siehe Domänentrennung und Predictive Intelligence. Datentyp: Zeichenfolge. |
| <Object>.Encoder | Encoder-Objekt, das dieser Lösung zugewiesen ist. Siehe Encoder: Encoder(Object config). Datentyp: Objekt. |
| <Object>.groupByFieldName | Feldname, nach dem das System Datensätze gruppiert, um Klassifizierungslösungen zu erstellen. Datentyp: Zeichenfolge |
| <Object>.inputFieldNames | Liste der Eingabefeldnamen als Zeichenfolgen. Das Modell verwendet die folgenden Felder, um Vorhersagen zu treffen. Datentyp: Zeichenfolge. |
| <Object>.Bezeichnung | Identifiziert die Vorhersageaufgabe.
Datentyp: Zeichenfolge. |
| <Object>.name | Vom System zugewiesener Name. Datentyp: Zeichenfolge. |
| <Object>.predictedFieldName | Identifiziert ein Feld, das für die Vorhersagbarkeit trainiert werden soll. Datentyp: Zeichenfolge. |
| <Object>.processingLanguage | Verarbeitungssprache im aus zwei Buchstaben bestehenden ISO 639-1-Sprachcodeformat. Datentyp: Zeichenfolge. |
| <Object>.Bereich | Objektumfang. Derzeit ist der einzige gültige Wert global.Datentyp: Zeichenfolge |
| <Object>.Stoppwörter | Optional. Voreingestellte Liste von Zeichenfolgen, die das System basierend auf der Eigenschaftseinstellung language automatisch generiert. Weitere Informationen finden Sie unter Benutzerdefinierte Stoppwortlisten erstellen. Datentyp: Array. |
| <Object>.trainingHäufigkeit | Die Häufigkeit, mit der das Modell neu trainiert werden soll. Mögliche Werte:
Datentyp: Zeichenfolge. |
Im folgenden Beispiel werden Eigenschaften eines Lösungsobjekts im Store abgerufen.
var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification_solution');
gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
*** 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 solution definition",
"name": "ml_x_snc_global_global_my_solution_definition_26",
"predictedFieldName": "category",
"processingLanguage": "en",
"scope": "global",
"stopwords": [
"Default English Stopwords"
],
"trainingFrequency": "run_once"
}ClassificationSolution – getVersion(String version)
Ruft eine Lösung ab nach angegebener Versionsnummer.
| Name | Typ | Beschreibung |
|---|---|---|
| Version | Zeichenfolge | Vorhandene Versionsnummer einer Lösung. |
| Typ | Beschreibung |
|---|---|
| Objekt | Angegebene Version des ClassificationSolution()- Objekts, für das Sie ClassificationSolutionVersion -API-Methoden aufrufen können. |
Das folgende Beispiel zeigt, wie der Trainingsstatus einer Lösung anhand der Versionsnummer abgerufen wird.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
gs.print(JSON.stringify(JSON.parse(mlSolution.getVersion('1').getStatus()), null, 2));
Ausgabe:
{
"state": "solution_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
ClassificationSolution – setActiveVersion(String version)
Aktiviert eine angegebene Version einer Lösung im Store.
| Name | Typ | Beschreibung |
|---|---|---|
| Version | Zeichenfolge | Name der zu aktivierenden ClassificationSolution()- Objektversion. Durch die Aktivierung dieser Version werden alle anderen Versionen deaktiviert. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie eine Lösungsversion im Store aktiviert wird.
sn_ml.ClassificationSolution.setActiveVersion("ml_incident_categorization");
ClassificationSolution – submitTrainingJob()
Sendet einen Trainingsauftrag.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | ClassificationSolutionVersion Objekt, das ClassificationSolution dem trainierten entspricht. |
Das folgende Beispiel zeigt, wie Sie einen Datensatz erstellen, auf eine Lösung anwenden, die Lösung einem Speicher 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.ClassificationSolution({
'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.ClassificationSolutionStore.add(mySolution);
// Train the solution - this is a long running job
var myClassifierVersion = mySolution.submitTrainingJob();