Bestimmte Algorithmen in Watson Natural Language Processing können mit Ihren eigenen Daten trainieren. Sie können beispielsweise angepasste Modelle auf der Basis Ihrer eigenen Daten für die Entitätsextraktion erstellen, Daten klassifizieren, Stimmungen extrahieren und Zielsentiments extrahieren.
Sie können ein eingebautes transformatorbasiertes IBM foundation model namens Slate verwenden, um Ihre eigenen Modelle zu erstellen. Das Slate-Modell wurde mit einem sehr großen Dataset trainiert, das vorverarbeitet wurde, um Hass, Verzerrung und Profanität zu filtern.
Um eine eigene Klassifikation, ein eigenes Entitätsextraktionsmodell oder ein eigenes Stimmungsmodell zu erstellen, können Sie das Slate-Modell für Ihre eigenen Daten optimieren. Um das Modell in angemessener Zeit zu trainieren, wird empfohlen, GPU-basierte Umgebungen zu verwenden.
- Entitäten mit einem angepassten Wörterverzeichnis erkennen
- Entitäten mit regulären Ausdrücken erkennen
- Entitäten mit einem angepassten Umsetzungsmodell erkennen
- Text mit einem angepassten Klassifikationsmodell klassifizieren
- Stimmung mit einem angepassten Transformer-Modell extrahieren
- Zielstimmung mit einem angepassten Transformatormodell extrahieren
Sprachunterstützung für angepasste Modelle
Sie können angepasste Modelle erstellen und die folgenden, vorab trainierten Wörterverzeichnis- und Klassifikationsmodelle für die angegebenen Sprachen verwenden.
Benutzerdefiniertes Modell | Unterstützte Sprachencodes |
---|---|
Wörterverzeichnismodelle | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw (alle Sprachen mit Unterstützung für syntaktisches Wortarttagging) |
Reguläre Ausdrücke | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw (alle Sprachen mit Unterstützung für syntaktisches Wortarttagging) |
SVM-Klassifizierung mit TFIDF | af, ar, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw |
SVM-Klassifizierung mit USE | ar, de, en, es, fr, it, ja, ko, nl, pl, pt, ru, tr, zh_cn, zh_tw |
CNN-Klassifizierung mit GloVe | ar, de, en, es, fr, it, ja, ko, nl, pt, zh_cn |
Mehrsprachige BERT-Klassifizierung | af, ar, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw |
Transformer-Modell | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw |
Stoppwortlisten | ar, de, en, es, fr, it, ja, ko |
Eine Liste der Sprachcodes und der entsprechenden Sprachen finden Sie unter Sprachcodes.
Angepasste Modelle speichern und laden
Wenn Sie Ihr angepasstes Modell in einem anderen Notebook verwenden möchten, speichern Sie es als Datenasset in Ihrem Projekt. Auf diese Weise können Sie das Modell als Teil eines Projektexports exportieren.
Verwenden Sie die Bibliothek ibm-watson-studio-lib
, um angepasste Modelle zu speichern und zu laden.
So speichern Sie ein angepasstes Modell in Ihrem Notebook als Datenasset, das exportiert und in einem anderen Projekt verwendet werden kann:
Stellen Sie sicher, dass Sie über ein Zugriffstoken auf der Seite Zugriffssteuerung in der Registerkarte Verwalten Ihres Projekts verfügen. Nur Projektadministratoren können Zugriffstokens erstellen. Das Zugriffstoken kann die Zugriffsberechtigung eines Anzeigeberechtigten oder eines Bearbeiters (Editor) enthalten. Nur Bearbeiter können das Token in ein Notebook einfügen.
Fügen Sie das Projekttoken zu einem Notebook hinzu, indem Sie in der Aktionsleiste des Notebooks auf Mehr > Projekttoken einfügen klicken und anschließend die Zelle ausführen. Wenn Sie die eingefügte verdeckte Codezelle ausführen, wird ein
wslib
-Objekt erstellt, das Sie für Funktionen in der Bibliothekibm-waton-studio-lib
verwenden können. Details zu den verfügbarenibm-watson-studio-lib
-Funktionen finden Sie unteribm-watson-studio-lib
für Python.Führen Sie die Methode
train()
aus, um ein angepasstes Modell für ein Wörterverzeichnis, einen regulären Ausdruck oder eine Klassifizierung zu erstellen und dieses angepasste Modell einer Variablen zuzuordnen. Beispiel:custom_block = CNN.train(train_stream, embedding_model.embedding, verbose=2)
Wenn Sie ein benutzerdefiniertes Wörterverzeichnis oder ein Modell mit regulären Ausdrücken speichern wollen, konvertieren Sie es in einen RBRGeneric-Block. Die Konvertierung eines benutzerdefinierten Wörterbuchs oder eines Modells mit regulärem Ausdruck in einen RBRGeneric-Block ist nützlich, wenn Sie das Modell mithilfe der API für Watson Natural Language Processing for Embed laden und ausführen möchten. Bisher unterstützt Watson Natural Language Processing for Embed die Ausführung von Wörterbuchmodellen und Modellen für reguläre Ausdrücke nur als RBRGeneric-Blöcke. Führen Sie die folgenden Befehle aus, um ein Modell in einen RBRGeneric-Block zu konvertieren:
# Create the custom regular expression model custom_regex_block = watson_nlp.resources.feature_extractor.RBR.train(module_folder, language='en', regexes=regexes) # Save the model to the local file system custom_regex_model_path = 'some/path' custom_regex_block.save(custom_regex_model_path) # The model was saved in a file "executor.zip" in the provided path, in this case "some/path/executor.zip" model_path = os.path.join(custom_regex_model_path, 'executor.zip') # Re-load the model as a RBRGeneric block custom_block = watson_nlp.blocks.rules.RBRGeneric(watson_nlp.toolkit.rule_utils.RBRExecutor.load(model_path), language='en')
Speichern Sie das Modell als Datenasset in Ihrem Projekt mit
ibm-watson-studio-lib
:wslib.save_data("<model name>", custom_block.as_bytes(), overwrite=True)
Beim Speichern von Umsetzungsmodellen haben Sie die Möglichkeit, das Modell im CPU-Format zu speichern. Wenn Sie das Modell nur in CPU-Umgebungen verwenden möchten, wird Ihr angepasstes Modell durch die Verwendung dieses Formats effizienter ausgeführt. Legen Sie dazu die Option für das CPU-Format wie folgt fest:
wslib.save_data('<model name>', data=custom_model.as_bytes(cpu_format=True), overwrite=True)
So laden Sie ein angepasstes Modell in ein Notebook, das aus einem anderen Projekt importiert wurde:
Stellen Sie sicher, dass Sie über ein Zugriffstoken auf der Seite Zugriffssteuerung in der Registerkarte Verwalten Ihres Projekts verfügen. Nur Projektadministratoren können Zugriffstokens erstellen. Das Zugriffstoken kann die Zugriffsberechtigung eines Anzeigeberechtigten oder eines Bearbeiters (Editor) enthalten. Nur Bearbeiter können das Token in ein Notebook einfügen.
Fügen Sie das Projekttoken zu einem Notebook hinzu, indem Sie in der Aktionsleiste des Notebooks auf Mehr > Projekttoken einfügen klicken und anschließend die Zelle ausführen. Wenn Sie die eingefügte verdeckte Codezelle ausführen, wird ein
wslib
-Objekt erstellt, das Sie für Funktionen in der Bibliothekibm-watson-studio-lib
verwenden können. Details zu den verfügbarenibm-watson-studio-lib
-Funktionen finden Sie unteribm-watson-studio-lib
für Python.Laden Sie das Modell unter Verwendung von
ibm-watson-studio-lib
undwatson-nlp
:custom_block = watson_nlp.load(wslib.load_data("<model name>"))
Übergeordnetes Thema: Watson Natural Language Processing-Bibliothek