Encoder : Global
Die Encoder- API stellt ein skriptfähiges Objekt bereit, das in den Speichern Predictive Intelligence verwendet wird. Dieses Objekt konvertiert Eingabedaten basierend auf Encoder-spezifischen Zielen und Konfigurationen in Zahlenvektoren. Encoder können unabhängig zum Ausführen von Codierungen verwendet oder als Teil von Lösungen zum Codieren von Textspalten konfiguriert werden.
Diese(s) Die API erfordert das Plugin Predictive Intelligence (com.glide.platform_ml) und wird im Namespace sn_ml bereitgestellt.
Encoder sind Textverarbeitungsobjekte, die entweder vortrainiert oder basierend auf den von Ihnen bereitgestellten Sprachdatensätzen trainiert werden. Sie können Encoder trainieren, die bestimmen, wie das System Textfelder interpretiert und verarbeitet. Für ML-Lösungen, die Text enthalten, können Sie einen Encoder trainieren, um anzugeben, wie Text verarbeitet wird, und um den trainierten Encoder in einer Lösung zu verwenden.
Encoder haben eine Konfiguration und Versionen und können unabhängig mit ihrer eigenen Neutrainingshäufigkeit trainiert werden. API-definierte Encoder unterscheiden sich von UI-definierten Encodern darin, dass das erneute Trainieren von UI-definierten Encodern von den Lösungen gesteuert wird, die sie verwenden.
- Erstellen Sie einen oder mehrere Datensätze mit der DatasetDefinition -API.
- Verwenden Sie den Konstruktor, um ein Encoder-Objekt zu erstellen.
- Fügen Sie das Encoder-Objekt dem Encoder-Speicher mit der Methode „EncoderStore - add()“ hinzu.
- Trainieren Sie den Encoder mit der Methode „submitTrainingJob()“. Dadurch wird eine Version des Objekts erstellt, die Sie mit der EncoderVersion -API verwalten können.
- Klassifizierungslösung
- ClusteringSolution (erforderlich, außer bei Verwendung des Levenshtein-Distanzalgorithmus)
- RegressionSolution
- Ähnlichkeitslösung (erforderlich)
Richtlinien zur Verwendung finden Sie unter ML-APIs verwenden.
Encoder: Encoder (Objektkonfiguration)
Erstellt einen Encoder.
Um einen Encoder für einen oder mehrere Datensätze abzurufen, verwenden Sie diesen Konstruktor, um ein neues Encoder-Objekt mit einem eindeutigen Namen zu erstellen.
| Name | Typ | Beschreibung |
|---|---|---|
| Konfiguration | Objekt | JavaScript-Objekt mit Konfigurationseigenschaften für Encoder. |
| config.algorithmConfig | Objekt | Optional. JavaScript-Objekt, das Algorithmuskonfigurationseigenschaften enthält. |
| config.algorithmConfig.algorithm | Zeichenfolge | Name des Algorithmus zum Trainieren dieses Encoders.
Mögliche Werte:
|
| config.datasets | Array | Liste der Datensatzdefinitions -Objektnamen. |
| config.domainName | Zeichenfolge | Optional. Domänenname, der diesem Datensatz zugeordnet ist. Siehe Domain Separation und Predictive Intelligence. Standard: Aktuelle Domäne, z. B. |
| 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.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 einen Encoderauftrag erstellen und dem Encoderspeicher hinzufügen.
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);
Encoder - cancelTrainingJob()
Storniert einen Auftrag für ein Encoder-Objekt , das zum Trainieren übermittelt wurde.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie einen vorhandenen Trainingsauftrag abbrechen.
var myEncoder = sn_ml.EncoderStore.get('ml_sn_global_global_encoder');
myEncoder.cancelTrainingJob();
Encoder - getActiveVersion()
Ruft das aktive ab EncoderVersion-Objekt
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Aktives EncoderVersion- Objekt. |
Das folgende Beispiel zeigt, wie Sie eine aktive Encoder Version aus dem Store abrufen und ihren Schulungsstatus zurückgeben.
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getStatus()), null, 2));
Ausgabe:
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encoder - getAllVersions()
Ruft alle Versionen von ab einen Encoder.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Array | Vorhandene Versionen eines Encoderobjekts. Siehe auch EncoderVersion -API. |
Das folgende Beispiel zeigt, wie Sie alle Encoder- Versionsobjekte abrufen und die Encoder-Versionsmethoden getVersionNumber () und getStatus () dafür aufrufen.
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");
};
Ausgabe:
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"}
Encoder - getLatestVersion()
Ruft die aktuelle Version von ab einen Encoder.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | EncoderVersion Objekt, das der aktuellen Version von entspricht und Encoder(). |
Das folgende Beispiel zeigt, wie Sie die aktuelle Version einer Lösung abrufen einen Encoder und geben dessen Trainingsstatus zurück.
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getLatestVersion().getStatus()), null, 2));
Ausgabe:
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encoder - 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 Encoder-Objekts. |
aktualisiert Encoder Datensatzinformationen
// 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());
Ausgabe:
Encoder Name: ml_x_snc_global_global_my_definition_4
Encoder - getProperties ()
Ruft Lösungsobjekteigenschaften ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Inhalt der Datensatz- und Encoder() -Objektdetails im EncoderStore. |
| <Object>.algorithmKonfiguration.algorithm | Name des Algorithmus zum Trainieren dieses Encoders. Mögliche Werte:
Datentyp: Zeichenfolge. |
| <Object>.Algorithmuskonfiguration | Optional. JavaScript-Objekt, das Algorithmuskonfigurationseigenschaften enthält.
Datentyp: Objekt. |
| <Object>.datasetsProperties | Liste der DatasetDefinition() -Eigenschaften, die dem Encoder zugeordnet sind.
Datentyp: Array. |
| <Object>.datasetsEigenschaften.tabellenname | Name der Tabelle für den Datensatz. Beispiel: „tableName“ : „Incident“. Datentyp: Zeichenfolge. |
| <Object>.datasetsProperties.fieldNames | Liste der Feldnamen aus der angegebenen Tabelle als Zeichenfolgen. Beispiel: „fieldNames“ : ["short_description", "priority"]. Datentyp: Array. |
| <Object>.datasetsProperties.fieldNames.fieldDetails | Liste von JavaScript-Objekten, die Feldeigenschaften angeben.
Datentyp: Array. |
| <Object>.datasetsProperties.fieldNames.fieldDetails.<object>.name | Name des Felds, das die Art der Informationen definiert, auf die dieser Datensatz beschränkt werden soll Datentyp: Zeichenfolge. |
| <Object>.datasetsProperties.fieldDetails.<object>.type | Feldtyp für maschinelles Lernen. Datentyp: Zeichenfolge. |
| <Object>.datasetsProperties.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>.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 ein Encoder-Objekt im Store abgerufen.
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"
}Encoder – getVersion(String version)
Ruft einen Encoder ab anhand der angegebenen Versionsnummer.
| Name | Typ | Beschreibung |
|---|---|---|
| Version | Zeichenfolge | Vorhandene Versionsnummer einen Encoder. |
| Typ | Beschreibung |
|---|---|
| Objekt | Angegebene Version des Encoder()- Objekts, für das Sie EncoderVersion- API-Methoden aufrufen können. |
Das folgende Beispiel zeigt, wie Sie den Trainingsstatus einer Lösung anhand der Versionsnummer abrufen ein Encoder nach Versionsnummer
var mlEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getVersion('1').getStatus()), null, 2));
Ausgabe:
{
"state": "encoder_complete",
"percentComplete": "100",
"hasJobEnded": "true"
}
Encoder – setActiveVersion(String version)
Aktiviert eine angegebene Version eines Encoders im Store.
| Name | Typ | Beschreibung |
|---|---|---|
| Version | Zeichenfolge | Name der zu aktivierenden Encoder() -Objektversion. Durch die Aktivierung dieser Version werden alle anderen Versionen deaktiviert. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie einen Encoder Lösungsversion im Store aktivieren.
sn_ml.Encoder.setActiveVersion("ml_incident_categorization");
Encoder -submitTrainingJob()
Übermittelt einen Trainingsauftrag.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | EncoderVersion- entspricht Encoder trainierten |
Das folgende Beispiel zeigt, wie Sie einen Datensatz erstellen, auf eine Lösung anwenden einen Encoder, fügen Sie ihn hinzu 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 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();