ClassificationSolution : Global
Die ClassificationSolution -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.
- 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 hinzu, indem Sie die Methode ClassificationSolutionStore - add() verwenden.
- 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.
- Vorhersagen mit der Methode „ClassificationSolutionVersion –predict()“ abrufen.
Richtlinien zur Verwendung finden Sie unter ML-APIs verwenden.
ClassificationSolution: ClassificationSolution(Object config)
Erstellt eine Klassifizierungslösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Konfiguration | Objekt | JavaScript-Objekt mit Konfigurationseigenschaften für Lösung. |
| config.algorithmConfig | Objekt | JavaScript-Objekt, das Algorithmuskonfigurationseigenschaften enthält. |
| config.algorithmConfig.algorithm | Zeichenfolge | Methode zur Codierung Ihrer Lösung.
Mögliche Werte:
|
| config.algorithmConfig.targetClassRecall | Zeichenfolge | Wendet einen Klassenrückruf-Parameter 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. Um diesen Lösungsparameter beispielsweise für alle Datensätze, die Sie in der Klasse E-Mail 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 Domain Separation 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 (Objektkonfiguration). |
| config.groupByFieldName | Zeichenfolge | Optional. Feldname, nach dem Datensätze vom System gruppiert werden, um Klassifizierungslösungen zu erstellen. Informationen zur Verwendung finden Sie unter Group by für Klassifizierung verwenden. |
| 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 | Gibt ein Feld an, das für die Vorhersagbarkeit trainiert werden soll. |
| 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:
|
Das folgende Beispiel zeigt, wie Sie ein Objekt erstellen und zu hinzufügen Klassifizierungslösungsspeicher.
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()
Storniert einen Auftrag für ein Lösungsobjekt , das zum Trainieren übermittelt wurde.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie einen vorhandenen Trainingsauftrag abbrechen.
var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification');
mySolution.cancelTrainingJob();
ClassificationSolution – getActiveVersion()
Ruft das aktive ab ClassificationSolutionVersion- Objekt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Aktives ClassificationSolutionVersion- Objekt. |
Das folgende Beispiel zeigt, wie Sie eine aktive Klassifizierungslösung Version aus dem Store abrufen und ihren Schulungsstatus 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 Klassifizierungslösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Array | Vorhandene Versionen eines Lösungsobjekts. Siehe auch ClassificationSolutionVersion -API. |
Das folgende Beispiel zeigt, wie Sie alle ClassificationSolution- Versionsobjekte abrufen und die Lösungsversionsmethoden getVersionNumber() und getStatus() dafür aufrufen.
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 aktuelle Version von ab eine Lösung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | ClassificationSolutionVersion Objekt, das der aktuellen Version von entsprichtin ClassificationSolution(). |
Das folgende Beispiel zeigt, wie Sie die aktuelle 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 Store verwendet werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Name des Lösungsobjekts. |
aktualisiert Klassifizierungslösung Datensatzinformationen
// 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 Lösungsobjekteigenschaften ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Inhalt der Details des Datensatzes und des ClassificationSolution() -Objekts im ClassificationSolutionStore |
| <Object>.Algorithmuskonfiguration | Methode zum Codieren der Lösung. Datentyp: Objekt. |
| <Object>.algorithmKonfiguration.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>.datasetProperties | Listet die Eigenschaften des DatasetDefinition()- Objekts auf, das der Lösung zugeordnet ist.
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.
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>.groupByFieldName | Feldname, nach dem Datensätze vom System gruppiert werden, um Klassifizierungslösungen zu erstellen. Datentyp: Zeichenfolge |
| <Object>.eingabeFeldNamen | Liste der Eingabefeldnamen als Zeichenfolgen. Das Modell verwendet diese Felder, um Vorhersagen zu treffen. Datentyp: Zeichenfolge. |
| <Object>.label | Gibt die Vorhersageaufgabe an.
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>.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:
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 anhand der angegebenen 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 Sie den Trainingsstatus einer Lösung anhand der Versionsnummer abrufen.
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 Sie eine Lösungsversion im Store aktivieren.
sn_ml.ClassificationSolution.setActiveVersion("ml_incident_categorization");
ClassificationSolution –submitTrainingJob()
Übermittelt einen Trainingsauftrag.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | KlassifizierungslösungVersions entspricht -Klassifizierungslösung 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.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();