Intents trainieren und testen

Indem Sie ein Modell mit Ihrem Trainingskorpus trainieren, kann Ihr Bot erkennen, was die Benutzer sagen (oder in bestimmten Fällen, was sie zu sagen versuchen).

Sie können die Genauigkeit der Erkennung durch mehrere Runden von Intent-Tests und -Trainings verbessern. Sie steuern das Training allein durch die Intent-Definitionen. Der Skill kann nicht eigenständig aus dem Benutzerchat lernen.

Äußerungen testen

Wir empfehlen, 20 % des Korpus für das Testen von Intents aufzuheben und die verbleibenden 80 % zum Training der Intents zu verwenden. Halten Sie diese beiden Sets getrennt, sodass die Testäußerungen, die Sie in Testfälle integrieren, für den Skill "unbekannt" bleiben.

Wenden Sie die 80/20-Aufteilung auf die Datasets der einzelnen Intents an. Wählen Sie Ihre Äußerungen zufällig aus, bevor Sie diese Aufteilung vornehmen, damit die Trainingsmodelle die Begriffe und Muster in den Äußerungen gleich gewichten können.

Der Äußerungstester

Der Äußerungstester bietet Ihnen einen Überblick über die Erkennungsfähigkeit Ihres Skills. Durch die Eingabe von Wortgruppen, die nicht Teil des Trainingskorpus sind, können Sie anhand des Intent-Konfidenzrankings und der zurückgegebenen JSON feststellen, wie gut Sie die Intents ausgearbeitet haben. Dieses Ranking, das eine Schätzung des Skills für den besten Kandidaten zur Lösung der Benutzereingabe ist, zeigt die Genauigkeit zum aktuellen Zeitpunkt an.
Beschreibung von utterance-tester-quick-test.png folgt
Beschreibung der Abbildung utterance-tester-quick-test.png

Mit dem Äußerungstester können Sie Schnelltests für einmalige Tests ausführen oder eine Äußerung als Testfall integrieren, um die Intent-Lösung für verschiedene Versionen von Trainingsmodellen zu bewerten.

Schnelltests

So finden Sie heraus, wie gut Ihre Intents funktionieren:
  1. Klicken Sie auf Äußerungen testen (links).
  2. Wenn der Skill mehrere native Sprachen unterstützt, wählen Sie die Testsprache aus. Durch Auswahl dieser Option wird sichergestellt, dass die Äußerung der entsprechenden Sprachversion des Korpus hinzugefügt wird. Standardmäßig ist die primäre Sprache des Skills ausgewählt.
  3. Geben Sie eine Zeichenfolge ein.
  4. Klicken Sie auf Testen, und prüfen Sie dann das Ranking und die in der Äußerung erkannten Entitys (sofern vorhanden).
  5. Prüfen Sie die Intent-Konfidenzscores. (Die Fortschrittsbalken für jedes aufgelistete Intent sind grün, wenn sie das Konfidenzniveau erfüllen oder überschreiten, oder rot, wenn sie das Niveau nicht erreichen).
    Wenn der von Ihrem Skill an oberster Stelle eingestufte Kandidat nicht Ihren Erwartungen entspricht, müssen Sie möglicherweise die Intents nachtrainieren, nachdem Sie eine oder beide der folgenden Aktionen durchgeführt haben:
    • Aktualisieren Sie das Korpus des besseren Kandidaten mit dem soeben eingegebenen Eingabetext. Wählen Sie dazu das entsprechende Intent aus, und klicken Sie dann auf Zu Intent hinzufügen.

      Achtung:

      Überlegen Sie, wie sich das Hinzufügen einer neuen Testphrase auf die Trainingsdaten auswirken kann. Das Hinzufügen einer Testwortgruppe kann die Art und Weise ändern, wie die Äußerungen, die dieser Wortgruppe ähnlich sind, nach dem Nachtrainieren klassifiziert werden. Darüber hinaus führt das Hinzufügen einer Testwortgruppe zur Ungültigkeit des Tests, denn die Aufnahme einer Testwortgruppe in das Trainingsset stellt sicher, dass der Test erfolgreich sein wird. Anstatt eine Testwortgruppe zu den Trainingsdaten hinzuzufügen, sollten Sie sie stattdessen als Testfall speichern.
    • Auf der Seite "Intents" können Sie eine Äußerung bearbeiten (Dieses Bild zeigt die Schaltfläche "Bearbeiten".) oder entfernen. Beispiel: Ein Intent mit häufig gestellten Fragen erhält möglicherweise aufgrund des Umfangs und der Formulierung seiner konstituierenden Äußerungen eine hohe Einstufung. Wenn Sie nicht möchten, dass Ihre Benutzer häufig gestellte Fragen erhalten, wenn sie typische Fragen stellen, müssen Sie das Korpus überarbeiten.

    Sie müssen ein Intent immer dann nachtrainieren, wenn Sie eine Äußerung hinzufügen, ändern oder löschen. Training erforderlich Dieses Bild zeigt den Indikator "Training erforderlich". wird immer angezeigt, wenn Sie die Trainingsdaten ändern.

  6. Wenn Intents nicht wie beabsichtigt aufgelöst werden, können Sie das JSON-Fenster erweitern, um die abgeglichenen Intents, Scores und erkannten Entitys in der zurückgegebenen JSON zu prüfen.
  7. Klicken Sie auf Zurücksetzen.

Testfälle

Jeder Test enthält eine Äußerung und das Intent, in das er aufgelöst werden soll. Dies wird als Labelübereinstimmung bezeichnet. Ein Testfall kann auch übereinstimmende Entitywerte und die erwartete Sprache für die Äußerung enthalten. Sie können Testfälle ausführen, wenn Sie einen Skill entwickeln, und später, wenn der Skill in Produktion ist, können Sie die Testfälle für Regressionstests verwenden. Im letzteren Fall können Sie Testfälle ausführen, um herauszufinden, ob ein neues Release des Trainingsmodells die Intent-Auflösung negativ beeinflusst hat.

Wie die Testfälle, die Sie mit dem Unterhaltungstester erstellen, gehören auch Äußerungstestfälle zum Skill und werden mit jeder Version übertragen. Wenn Sie einen Skill erweitern, übernimmt die Erweiterung die Testfälle. Während Unterhaltungstestfälle zum Testen eines Szenarios bestimmt sind, dienen Äußerungstestfälle dazu, Fragmente einer Unterhaltung unabhängig zu testen und sicherzustellen, dass jede Äußerung in das richtige Intent aufgelöst wird.

Testfälle verwalten

Auf die Seite "Testfälle" klicken Sie im Äußerungstester auf Gehe zu Testfällen. Dort werden die Testsuites und die zugehörigen Testfälle aufgeführt. Die Testsuites können von Ihnen erstellte oder von einem Skill geerbt worden sein, den Sie erweitert oder geklont haben. Neben dem Bearbeiten, Hinzufügen und Entfernen von Testfällen können Sie auf dieser Seite Testfälle in Testläufe kompilieren. Standardmäßig ist Alle ausgewählt. Dadurch wird jeder Testfall angezeigt. Wenn Sie die Anzeige nur auf die Testfälle beschränken möchten, die zu einer einzelnen Testsuite gehören, können Sie entweder die Testsuite aus der Liste der Testsuites auswählen oder diese Liste mit einer vollständigen oder teilweisen Übereinstimmung mit dem Testsuitenamen filtern. In der Ansicht der Testsuite können Sie die Testfälle der Suite auf der Registerkarte "Testfälle" verwalten. Auf der Registerkarte "Allgemein" können Sie neben der Aktualisierung des Namens und der Beschreibung der Testsuite auch die Testsuite aus einem Testlauf ausschließen, indem Sie Testsuite aktivieren deaktivieren. Wenn Sie In Skillexport aufnehmen deaktivieren, können Sie verhindern, dass die Testsuite in den Ordner nluTestSuites aufgenommen wird, in dem sich die Testsuites des Skills befinden, wenn der Skill exportiert wird.

Testsuites erstellen

Alle Testfälle gehören zu einer Testsuite. Wir bieten Ihnen eine Standardtest-Suite an, aber Sie können Ihre Tests partitionieren, indem Sie Ihre eigenen Testsuites erstellen. Sie können Testsuites manuell oder durch Importieren einer CSV erstellen. So erstellen Sie eine Testsuite manuell:
  1. Klicken Sie auf + Test Suite.
  2. Ersetzen Sie auf der Registerkarte "Allgemein" den Platzhalternamen (z.B. TestSuite0001) durch einen aussagekräftigeren Namen, indem Sie im Feld "Anzeigename" einen Wert hinzufügen.
  3. Fügen Sie optional eine Beschreibung hinzu, die erläutert, welche Funktionen von der Testsuite abgedeckt werden.
  4. Füllen Sie die Testsuite mit Testfällen auf, und verwenden Sie dabei eine der folgenden Methoden (oder eine Kombination davon):
    • Fügen Sie Testfälle manuell hinzu (entweder durch Erstellen eines Testfalls oder durch Speichern einer Äußerung als Testfall im Äußerungstester).
    • Testfälle werden importiert.
      Hinweis

      Um einer Testsuite über den Import einen Testfall zuzuweisen, kann das Feld testSuite der CSV-Datei entweder leer sein oder einen Namen enthalten, der mit der im Importdialogfeld ausgewählten Testsuite übereinstimmt.
    • Testfall bearbeiten, um seine Testsuite neu zuzuweisen.
  5. Wenn Sie die Testsuite von Testläufen ausschließen möchten, die mit den Optionen Alle und Alle ausführen gestartet werden, deaktivieren Sie die Option Test-Suite aktivieren.
  6. Wenn die Testsuite nicht im Skillexport enthalten sein soll, deaktivieren Sie In Skillexport einschließen. Wenn Sie diese Option für eine Testsuite deaktivieren, wird sie nicht im Ordner nluTestSuites enthalten sein, in dem sich die Testsuites des Skills in der exportierten ZIP-Datei befinden.

Testfälle für Äußerungen erstellen

Sie können Testfälle einzeln mit dem Äußerungstester oder dem Dialogfeld "Neuer Testfall" hinzufügen (auf das Sie durch Klicken auf + Testfall zugreifen). Sie können aber auch eine CSV-Datei hochladen, um sie massenweise hinzuzufügen.

Jeder Testfall muss zu einer Test-Suite gehören. Bevor Sie also einen Testfall erstellen, erstellen Sie zunächst eine Test-Suite, die eine Fähigkeit des Skills oder einen Aspekt der Intent-Tests widerspiegelt, wie Fehlertests oder domäneninterne Tests.

Wir stellen eine Suite namens Standardtestsuite bereit. Sie können dieser Testsuite Testfälle zuweisen, wenn Sie noch keine anderen Suites erstellt haben. Später können Sie den Testfall bearbeiten, um ihn einer neuen Testsession zuzuweisen.

Tipp:

Um eine angemessene Abdeckung in Ihren Tests zu gewährleisten, erstellen Sie Test-Suite-Äußerungen, die nicht nur konzeptionell, sondern auch grammatikalisch unterschiedlich sind, da Benutzer keine Anforderungen einheitlich stellen. Sie können diese Dimensionen hinzufügen, indem Sie Testsuites aus tatsächlichen Benutzernachrichten erstellen, die im Insights Retrainer abgefragt wurden, sowie aus Crowdsourcing-Eingabe, die aus Data Manufacturing erfasst wurde.

Testfälle aus dem Äußerungstester hinzufügen

Sie können nicht nur Äußerungen zum Trainingskorpus hinzufügen, sondern auch auf der Seite "Schnelltest" einen Testfall erstellen:
  1. Klicken Sie auf Test Utterances.
  2. Wenn der Skill mehrsprachig ist, wählen Sie die native Sprache aus.
  3. Geben Sie die Äußerung ein, und klicken Sie auf Testen.
  4. Klicken Sie auf Als Testfall speichern, und wählen Sie eine Testsuite aus.

Testfall erstellen

So erstellen Sie einen einzelnen Testfall:
  1. Klicken Sie im Äußerungstester auf Gehe zu Testfällen.
  2. Klicken Sie auf + Testfall.
  3. Füllen Sie das Dialogfeld "Neuer Testfall" aus:
    • Deaktivieren Sie den Testfall gegebenenfalls.
    • Geben Sie die Testäußerung ein.
    • Wählen Sie die Testsuite aus.
    • Wählen Sie das erwartete Intent aus. Wenn Sie einen Testfall für Fehlertests erstellen, wählen Sie unresolvedIntent aus.
    • Wählen Sie bei mehrsprachigen Skills das Sprachtag und die erwartete Sprache aus.
  4. Klicken Sie auf Zu Suite hinzufügen. Auf der Seite "Testfälle" können Sie einen Testfall löschen oder einen Testfall bearbeiten. Dazu gehört die Neuzuweisung des Testfalls zu einer anderen Testsuite.

  5. So testen Sie Entitywerte:
    • Aktivieren Sie Testentitäten. Klicken Sie anschließend auf Weiter.
    • Markieren Sie das Wort (oder die Wörter), und wenden Sie dann ein Entitylabel an, indem Sie ein Objekt aus der Liste auswählen. Klicken Sie anschließend auf Zu Suite hinzufügen.
      Hinweis

      Wählen Sie immer Wörter oder Wortgruppen aus der Testfalläußerung aus, nachdem Sie Testobjekte aktiviert haben. Der Testfall verläuft nicht erfolgreich, wenn Sie Testentitäten aktiviert, aber keine Wörter hervorgehoben haben.


Testfälle für Testsuites auf Skillebene importieren

Auf der Seite "Testfälle" (auf die Sie durch Klicken auf Gehe zu Testfällen im Äußerungstester zugreifen) können Sie Testsuites und ihre Fälle per Bulkverfahren hinzufügen, indem Sie eine CSV-Datei mit den folgenden Feldern hochladen:
  • testSuite: Der Name der Testsuite, zu der der Testfall gehört. Das Feld testSuite in jeder Zeile der CSV-Datei kann einen anderen Namen für die Testsuite haben oder leer sein.
    • Testfälle mit leeren testSuite-Feldern werden einer Testsuite hinzugefügt, die Sie beim Import der CSV-Datei auswählen. Wenn Sie keine Test-Suite auswählen, werden sie der Standardtest-Suite zugewiesen.
    • Testfälle mit ausgefüllten testSuite-Feldern werden der Testsuite zugewiesen, die Sie beim Import der CSV-Datei auswählen, nur wenn der Name der ausgewählten Testsuite mit dem Namen im Feld testSuite übereinstimmt.
    • Wenn noch keine Testsuite mit dem Namen der im Feld testSuite angegebenen vorhanden ist, wird sie nach dem Import der CSV erstellt.
  • utterance: Eine Beispieläußerung (erforderlich). Wird in Versionen vor 21.04 von Oracle Digital Assistant query zugeordnet.
  • expectedIntent: Das übereinstimmende Intent (erforderlich). Dieses Feld wird in Versionen vor 21.04 von Oracle Digital Assistant TopIntent zugeordnet.

    Tipp:

    Unter Vor-21.04-Versionen der CSV-Datei importieren wird beschrieben, wie Sie CSV-Dateien vor 21.04 neu formatieren, damit Sie sie für Bulktests verwenden können.
  • enabled: TRUE nimmt den Testfall in den Testlauf auf. Bei FALSE wird er ausgeschlossen.
  • languageTag: Das Sprachtag (Beispiel: en). Wenn kein Wert vorhanden ist, wird die in den Spracheinstellungen des Skills erkannte Sprache standardmäßig verwendet.
  • expectedLanguageTag (optional) - Bei mehrsprachigen Skills ist dies das Sprachtag für die Sprache, die das Modell beim Auflösen der Testäußerung in ein Intent verwenden soll. Damit der Testfall erfolgreich verläuft, muss dieses Tag mit der erkannten Sprache übereinstimmen.
  • expectedEntities: Die übereinstimmenden Entitys in der Testfalläußerung, dargestellt als ein Array von entityName-Objekten. Jede entityName gibt die Position des Entitywerts in der Äußerung mit den Eigenschaften beginOffset und endOffset an. Dieser Offset wird durch Zeichen und nicht durch Wort bestimmt und aus dem ersten Zeichen der Äußerung (0-1) berechnet. Beispiel: Das Objekt entityName für den Entitywert PizzaSize "klein" in Ich möchte eine kleine Pizza bestellen lautet:
    [{"entityName":"PizzaSize","beginOffset":18,"endOffset":23,"originalString":"small"}, …]


So importieren Sie diese CSV-Datei:
  1. Klicken Sie auf Mehr, und wählen Sie Importieren aus.
  2. Navigieren Sie zu, und wählen Sie die CSV-Datei aus.
  3. Wählen Sie die Test-Suite. Der Testfall kann der ausgewählten Testsuite nur zugewiesen werden, wenn das Feld testSuite leer ist oder mit dem Namen der ausgewählten Testsuite übereinstimmt.
  4. Klicken Sie auf Hochladen.
Vor-21.04-Versionen der CSV-Datei importieren
Testfälle, die über die CSV-Versionen vor 21.04 importiert wurden, die über die Felder query und TopIntent verfügen, werden nur zur Standardtest-Suite hinzugefügt. Sie können diese Testfälle anderen Testsuites einzeln neu zuweisen, indem Sie sie nach dem Import der CSV-Datei bearbeiten. Sie können die CSV-Datei aber auch auf das aktuelle Format aktualisieren und dann vor dem Import wie folgt bearbeiten:
  1. Klicken Sie auf Mehr > Importieren.
  2. Wählen Sie nach Abschluss des Imports die Option Standardtestsuite aus, und klicken Sie dann auf Mehr > Ausgewählte Suite exportieren. Die exportierte Datei wird in das aktuelle Format konvertiert.
  3. Extrahieren Sie die ZIP-Datei, und bearbeiten Sie die CSV-Datei. Wenn Sie fertig sind, importieren Sie die CSV-Datei erneut (Weitere Informationen > Importieren). Möglicherweise müssen Sie doppelte Testfälle aus der Standardtestsuite löschen.
    Hinweis

    Wenn Sie dieselbe CSV-Datei mehrmals mit geringfügigen Änderungen hochladen, werden alle neuen oder aktualisierten Daten mit der alten Version zusammengeführt. Neue Aktualisierungen werden angewendet, und neue Zeilen werden eingefügt. Sie können jedoch keine Äußerungen löschen, indem Sie eine neue CSV-Datei hochladen. Wenn Sie Äußerungen löschen müssen, müssen Sie sie manuell aus der Benutzeroberfläche löschen.

Testläufe erstellen

Testläufe sind eine Zusammenstellung von Testfällen oder Testsuiten, die darauf abzielen, einen Aspekt der Erkenntnis des Skills zu bewerten. Der Inhalt (und das Volume) eines Testlaufs hängt von der Fähigkeit ab, die Sie testen möchten. Daher kann ein Testlauf eine Teilmenge von Testfällen aus einer Test-Suite, einer vollständigen Test-Suite oder mehreren Test-Suites enthalten.

Die in einem Testlauf enthaltenen Testfälle werden anhand des für den Skill festgelegten Konfidenzschwellenwerts bewertet. Damit ein Testfall in der gesamten Testausführung erfolgreich verläuft, muss er in das erwartete Intent bei oder über dem Konfidenzschwellenwert aufgelöst werden. Wenn angegeben, muss der Testfall auch den Entitywert und die Kriterien für die Sprachübereinstimmung erfüllen. Wenn Sie die Ergebnisse des Testlaufs prüfen, können Sie herausfinden, ob Änderungen an der Plattform oder am Skill selbst die Genauigkeit der Intent-Auflösung beeinträchtigt haben.

Neben dem Testen des Modells können Sie auch die Testlaufergebnisse verwenden, um die Zuverlässigkeit Ihrer Tests zu bewerten. Zum Beispiel können Ergebnisse, die zeigen, dass fast alle Testfälle bestanden haben, auf der Oberfläche auf eine optimale Funktion des Modells hinweisen. Eine Überprüfung der bestandenen Testfälle kann jedoch ergeben, dass die Testfälle das aktuelle Training nicht widerspiegeln, da ihre Äußerungen zu einfach sind oder sich in Bezug auf die Konzepte und die Sprache, auf die sie testen, erheblich überschneiden. Eine hohe Anzahl von nicht erfolgreichen Tests hingegen könnte auf Defizite in den Trainingsdaten hinweisen, aber eine Überprüfung dieser Testfälle könnte zeigen, dass ihre Äußerungen mit den falschen erwarteten Intents gepaart sind.

So erstellen Sie einen Testlauf:
  1. Klicken Sie auf Alle ausführen, um einen Testlauf für alle Testfälle in einer ausgewählten Testsuite zu erstellen. (Wenn Sie alle Testsuites ausführen möchten, wählen Sie Alle aus, und klicken Sie dann auf Alle ausführen.)

    • Um einen Testlauf für eine Auswahl von Testfällen innerhalb einer Suite zu erstellen (oder einen Testlauf für eine Teilmenge aller Testfälle, wenn Sie Alle ausgewählt haben), filtern Sie die Testfälle, indem Sie eine Zeichenfolge hinzufügen, die mit dem Äußerungstext und einem erwarteten Intent übereinstimmt. Wählen Sie die Äußerungen aus, und klicken Sie auf Ausführen.

    • Um die Testsuite aus dem Testlauf auszuschließen, wählen Sie zuerst die Testsuite aus, öffnen die Registerkarte "Allgemein", und deaktivieren Sie dann Testsuite aktivieren.

    • Bei mehrsprachigen Skills können Sie auch nach den Optionen Sprachtag und Erwartete Sprache filtern (auf die Sie über Optionale Attribute zugreifen).

  2. Geben Sie einen Testlaufnamen ein, der das Thema des Tests widerspiegelt. Dies ist ein optionaler Schritt.
  3. Klicken Sie auf Starten

  4. Klicken Sie auf Testergebnisse, und wählen Sie den Testlauf aus.

    Tipp:

    Testläufe, die eine große Anzahl von Testfällen enthalten, können einige Minuten dauern. Bei diesen großen Testläufen müssen Sie möglicherweise regelmäßig auf Aktualisieren klicken, bis der Test abgeschlossen ist. Ein Prozentsatz ersetzt den Status "In Bearbeitung" für die Genauigkeitsmetrik, und der Bericht "Intents" wird wiedergegeben, nachdem alle Testfälle ausgewertet wurden.


  5. Prüfen Sie die Testlaufberichte. Beispiel: Prüfen Sie zunächst die allgemeinen Metriken für den Testlauf, der im Überblicksbericht bereitgestellt wird. Validieren Sie als Nächstes die Testergebnisse anhand der tatsächlichen Testfälle, indem Sie den Bericht Testfälle filtern. Dieser Bericht listet alle Testfälle auf, die in der Testausführung enthalten sind, für bestandene und nicht erfolgreiche Testfälle. Anschließend können Sie die einzelnen Testfallergebnisse prüfen. Sie können den Genauigkeits-Score im Überblicksbericht auch mit dem Genauigkeits-Score im Bericht "Intents" vergleichen, der die Fähigkeit des Modells misst, die richtigen Intents vorherzusagen. Um die in diesem Bericht aufgeführten Testfälle zu prüfen, öffnen Sie den Bericht "Testfälle", und filtern Sie nach Intents.

Testlauf - Übersicht

Der Übersichtsbericht enthält eine Gesamtbewertung, wie erfolgreich das Modell den Typ der Benutzereingabe verarbeiten kann, der im Testlauf behandelt wird. Für die im Testlauf enthaltenen Testsuites wird die Gesamtanzahl der Testfälle angezeigt, die zur Bewertung des Modells verwendet wurden, und aus dieser Summe sowohl die Anzahl der Testfälle (sowohl zuverlässige als auch unzuverlässige), die zusammen mit der Anzahl der zuverlässigen und unzuverlässigen Testfälle nicht erfolgreich waren. Die Gesamtgenauigkeit des Modells – die Fähigkeit, erwartete Intents auf oder über dem Konfidenzniveau des Skills vorherzusagen, Entitywerte zu erkennen und Äußerungen in der Sprache des Skills aufzulösen – wird anhand der Erfolgsrate der erfolgreichen Tests im Testlauf gemessen.
Beschreibung von test-run-test-results-summary.png folgt
Beschreibung der Abbildung test-run-test-results-summary.png

Metriken für Übersichtsbericht
Der Übersichtsbericht enthält die folgenden Metriken:
  • Genauigkeit: Die Genauigkeit des Modells in Bezug auf die Erfolgsrate der erfolgreichen Testfälle (die Anzahl der erfolgreichen Testfälle im Vergleich zur Gesamtanzahl der Testfälle, die im Testlauf enthalten sind).
    Hinweis

    Deaktivierte Testfälle werden nicht im Genauigkeitsscore berücksichtigt. Auch die Tests waren aufgrund von Fehlern nicht erfolgreich. Jeder nicht erfolgreiche Test wird stattdessen der Anzahl "Nicht erfolgreich" hinzugefügt.

    Ein niedriger Genauigkeitswert kann darauf hindeuten, dass der Testlauf das Modell auf Konzepten und Sprachen auswertet, die von den Trainingsdaten nicht ausreichend unterstützt werden. Um den Genauigkeitsgrad zu erhöhen, trainieren Sie das Modell mit Äußerungen, die den Testfällen im Testlauf entsprechen.

    Diese Genauigkeitsmetrik gilt für den gesamten Testlauf und bietet einen separaten Score von der Genauigkeitsmetrik im Intents-Bericht. Diese Kennzahl entspricht dem Prozentsatz der Testfälle, bei denen das Modell alle Testfallkriterien bestanden hat. Der Genauigkeits-Score im Bericht "Intents" hingegen ist kein End-to-End-Test. Es ist der Prozentsatz der Testfälle, bei denen das Modell nur das erwartete Intent bei oder über dem Konfidenzschwellenwert des Skills vorhersagen musste. Andere Testfallkriterien (wie Enity-Wert oder Skill-Sprache) werden nicht berücksichtigt. Angesichts der unterschiedlichen Kriterien, was ein bestandener Testfall für diese beiden Berichte bedeutet, sind ihre jeweiligen Genauigkeitswerte möglicherweise nicht immer Schritt. Der Genauigkeitsscore für die Intent-Übereinstimmung kann höher sein als der Gesamttestlaufscore, wenn die Testdaten nicht mit den Trainingsdaten abgestimmt sind. Wenn das Modell mit Äußerungen trainiert wird, die Testfälle unterstützen, kann es die erwarteten Intents mit höherer Konfidenz vorhersagen, was wiederum den Genauigkeitsscore für den Testlauf erhöht.

    Hinweis

    Die Genauigkeitsmetrik ist erst verfügbar, wenn der Testlauf abgeschlossen ist und nicht für Testläufe verfügbar ist, die abgeschlossen wurden, als der Skill auf Versionen vor 22.12 der Oracle Digital Assistant-Plattform ausgeführt wurde.
  • Testfälle: Die Gesamtanzahl der Testfälle (sowohl zuverlässige als auch unzuverlässige Testfälle) im Testlauf. Übersprungene Testfälle sind in dieser Tally enthalten, werden jedoch bei der Berechnung der Genauigkeitsmetrik nicht berücksichtigt.
  • Erfolgreich: Die Anzahl der Testfälle (sowohl zuverlässig als auch unzuverlässig), die durch Auflösung an das Intent am Konfidenzschwellenwert und durch Abgleich der ausgewählten Entitywerte oder Sprache übergeben wurden.
  • Nicht erfolgreich: Die Anzahl der Testfälle (zuverlässig und unzuverlässig), die beim Konfidenzschwellenwert nicht in das erwartete Intent aufgelöst wurden und nicht mit den ausgewählten Entitywerten oder der ausgewählten Sprache übereinstimmen konnten.

    Um die tatsächlichen Testfälle hinter den Metriken "Erfolgreich" und "Nicht erfolgreich" in diesem Bericht zu prüfen, öffnen Sie den Bericht Testfälle, und wenden Sie dann die Filter Erfolgreich oder Nicht erfolgreich an.
    Beschreibung von test-runs-intent-report.png folgt
    Beschreibung der Abbildung "test-runs-intent-report.png

Test-Suite-Aufschlüsselung

In der Aufgliederungstabelle der Testsuite werden die im Testlauf enthaltenen Testsuites und deren individuelle Statistiken aufgeführt. Sie können die tatsächlichen Testfälle einer Testsuite prüfen, indem Sie auf den Link in der Spalte "Testsuite" klicken.
Beschreibung von test-suite-breakdown.png folgt
Beschreibung der Abbildung test-suite-breakdown.png

Intentsbericht

Die Metriken in diesem Bericht verfolgen die Labelübereinstimmungen des Modells während der Testfälle des Testlaufs. Hier prognostiziert das Modell das erwartete Intent für die Testfalläußerung korrekt. Im Kontext dieses Berichts werden Genauigkeit, Bestehen und Nichtbestehen anhand der Testfälle gemessen, in denen das Modell das richtige erwartete Intent bei oder über dem Konfidenzschwellenwert vorhergesagt hat. Andere Kriterien, die im Übersichtsbericht berücksichtigt werden, wie Entitywertübereinstimmungen oder Skillsprache, werden nicht berücksichtigt. Infolgedessen bietet Ihnen dieser Bericht eine andere Ansicht der Modellgenauigkeit, mit der Sie prüfen können, ob das aktuelle Training es dem Modell ermöglicht, die richtigen Intents konsistent vorherzusagen.

In diesem Bericht erhalten Sie Metriken für die Labelübereinstimmung (oder den Intent-Match) für den Testlauf auf zwei Ebenen: eine, die die Ergebnisse für den Testlauf aggregiert und eine, die diese Ergebnisse nach Intent trennt.
Hinweis

Dieser Bericht ist nicht für Testläufe verfügbar, die abgeschlossen wurden, als der Skill auf einer Version vor 22.12 der Oracle Digital Assistant-Plattform ausgeführt wurde.
Metriken für Intentsbericht
Die allgemeinen Intent-Übereinstimmungsergebnisse umfassen:
  • Testfälle: Die Anzahl der in diesem Testlauf enthaltenen Testfälle. Diese Summe umfasst sowohl zuverlässige als auch unzuverlässige Testfälle. Übersprungene Testfälle sind nicht in dieser Tally enthalten.

    Tipp:

    Die unzuverlässigen Testfalllinks für die Metriken "Testfälle", "Erfolgreich" und "Nicht erfolgreich" öffnen den nach unzuverlässigen Testfällen gefilterten Bericht Testfälle. Diese Navigation ist nicht verfügbar, wenn Sie den Bericht nach Testsuite filtern.
  • Genauigkeit: Die Genauigkeit des Modells beim Abgleich mit dem erwarteten Intent bei oder über dem Konfidenzschwellenwert des Skills in den Testfällen in diesem Testlauf. Die Untermetrik Labelübereinstimmung stellt den Prozentsatz der Testfälle im Testlauf dar, bei denen das Modell das erwartete Intent unabhängig vom Konfidenzscore korrekt vorhergesagt hat. Da Label Match-Faktoren in nicht erfolgreichen Testfällen zusammen mit dem Bestehen von Testfällen berücksichtigt werden, kann sein Score höher sein als der Genauigkeits-Score.
    Sie können diese Genauigkeitsmetrik mit der Genauigkeitsmetrik aus dem Übersichtsbericht vergleichen. Wenn der Genauigkeits-Score im Übersichtsbericht niedrig ist, können Sie mit diesem Bericht schnell herausfinden, ob die Fehler des Modells auf die Unfähigkeit zurückzuführen sind, das erwartete Intent vorherzusagen. Wenn der Genauigkeits-Score in diesem Bericht jedoch hoch ist, können Sie den Labelabgleich als Ursache des Problems ausschließen. Anstatt die Trainingsdaten stark zu überarbeiten, um den Genauigkeits-Score des Testlaufs zu erhöhen, können Sie stattdessen auf das Hinzufügen von Äußerungen fokussieren, die den Konzepten und der Sprache in den Testfalläußerungen entsprechen.
  • Erfolgreich: Die Anzahl der Testfälle (zuverlässig und unzuverlässig), bei denen das Modell das erwartete Intent am Konfidenzschwellenwert des Skills vorhergesagt hat.
  • Nicht erfolgreich: Die Anzahl der Testfälle (zuverlässig und unzuverlässig), bei denen das Modell das erwartete Intent unter dem Konfidenzschwellenwert des Skills vorhergesagt hat.
  • Confidence Pass: Ein Durchschnitt der Konfidenzscores für alle Testfälle, die in diesem Testlauf erfolgreich waren.
  • Konfidenzfehler: Ein Durchschnitt der Konfidenzscores für alle Testfälle, die in diesem Testlauf nicht erfolgreich waren.
Hinweis

Wenn Sie den Intents-Bericht nach Testsuite filtern, ist der Zugriff auf den Testfallbericht über die unzuverlässigen Testfalllinks in den Kacheln "Testfälle", "Erfolgreich" und "Nicht erfolgreich" nicht verfügbar. Diese Links werden wieder aktiv, wenn Sie alle Einträge aus dem Feld "Nach Testsuite filtern" entfernen.
Nach Testsuite filtern
Die Standardergebnisse des Berichts "Intents" spiegeln alle Testsuites wider, die im Testlauf enthalten sind. Ebenso basieren die Metriken auf allen aktivierten Testfällen, die zu diesen Testsuites gehören. Wenn Sie die Performance einzelner Testsuites aufschlüsseln möchten (und im Wesentlichen einen Vergleich zur Tabelle Test-Suite-Aufschlüsselung des Übersichtsberichts erstellen möchten), müssen Sie keine zusätzlichen Testläufe erstellen. Stattdessen können Sie die Ergebnisse für die betreffende Testsuite (oder Testsuiten) mit dem Feld "Nach Testsuite filtern" isolieren. Sie können diesem Feld mindestens eine Testsuite hinzufügen.
Dieses Bild zeigt das Feld "Nach Testsuite filtern".

Der Bericht passt die Metriken für jede Testsuite an, die Sie hinzufügen (oder später entfernen). Es tabelliert die Intent-Übereinstimmungsergebnisse in Bezug auf die Anzahl der aktivierten Testfälle, die zur ausgewählten Testsuite gehören.
Hinweis

Sie können nicht nach Testsuites filtern, die auf einer Plattform vor Version 23.06 ausgeführt wurden. Um diese Testsuites einzuschließen, müssen Sie sie nach dem Upgrade auf Version 23.06 oder höher erneut ausführen.
Hinweis

Wenn Sie nach Testsuite filtern, wird die Navigation zum Testfallbericht über die Links für unzuverlässige Testfälle in den Kacheln "Testfälle", "Erfolgreich" und "Nicht erfolgreich" deaktiviert. Die Links in der Spalte "Gesamt" der Intent-Aufschlüsselung sind ebenfalls deaktiviert. Alle diese Links werden wieder aktiv, nachdem Sie alle Einträge aus dem Feld "Nach Testsuite filtern" entfernt haben.
Intentsaufschlüsselung
Die Tabelle "Intentsaufschlüsselung" des Berichts enthält die folgenden Metriken der obersten Ebene für die erwarteten Intents, die in den Testfällen des Testlaufs benannt sind. Sie können den Fokus eingrenzen, indem Sie die Namen dieser Intents im Feld "Nach Intents filtern" auswählen.
Hinweis

Das Feld "Nach Intent filtern" ändert die Ansicht der Intent-Aufgliederungstabelle, ändert jedoch nicht die Gesamtmetriken des Berichts. Diese Metriken spiegeln die Einträge (oder fehlende Einträge) im Feld "Nach Testsuite filtern" wider.
  • Intent: Der Name des erwarteten Intents.
  • Gesamt: Die Anzahl der Testfälle, die als Link für das erwartete Intent dargestellt werden. Klicken Sie auf diesen Link, um zum Bericht "Testfälle" zu gelangen.
    Hinweis

    Sie können nicht zum Bericht "Testfälle" navigieren, wenn Sie einen Testsuitefilter auf diesen Bericht angewendet haben. Dieser Link wird wieder aktiv, wenn Sie alle Einträge aus dem Feld "Nach Testsuite filtern" entfernen.
  • Genauigkeit: Der Prozentsatz der Testfälle, die zu Labelübereinstimmungen für das erwartete Intent bei oder über dem Konfidenzschwellenwert des Skills geführt haben.
  • Erfolgreich: Die Anzahl der Testfälle (einschließlich unzuverlässiger Testfälle), bei denen das Modell das erwartete Intent bei oder über dem Konfidenzschwellenwert des Skills vorhergesagt hat.
  • Erfolgreich - Unzuverlässig: Die Anzahl der Testfälle, bei denen das Modell das erwartete Intent um höchstens 5% über dem Konfidenzschwellenwert des Skills vorhergesagt hat.
  • Nicht erfolgreich: Die Anzahl der Testfälle im Testlauf, die nicht erfolgreich waren, weil das Modell das erwartete Intent unter dem Konfidenzschwellenwert des Skills vorhergesagt hat.
  • Nicht erfolgreich - Unzuverlässig: Die Anzahl der Testfälle, die nicht erfolgreich waren, weil die Konfidenz des Modells bei der Vorhersage des erwarteten Intents um 5% unter den Konfidenzschwellenwert des Skills fiel. Diese Testfälle können in die
  • Labelübereinstimmung: Die Anzahl der Testfälle, bei denen das Modell das erwartete Intent erfolgreich vorhergesagt hat, unabhängig vom Konfidenzniveau. Da dies bei nicht erfolgreichen Testfällen berücksichtigt wird, sind die Label Match- und Accuracy-Scores möglicherweise nicht immer aufeinander abgestimmt. Beispiel: Vier erfolgreiche Testfälle von fünf ergeben einen 80%-Genauigkeitsscore für das Intent. Wenn das Modell jedoch das Intent für den einen nicht erfolgreichen Testfall korrekt vorhergesagt hat, würde die Labelübereinstimmung die Genauigkeit um 20% übertreffen.
  • Konfidenzpass: Ein Durchschnitt der Konfidenzscores für alle Testfälle, die erfolgreich mit dem erwarteten Intent übereinstimmen.
  • Konfidenzfehler: Ein Durchschnitt der Konfidenzscores für alle Testfälle, die nicht mit dem erwarteten Intent übereinstimmen.

    Tipp:

    Um die tatsächlichen Testfälle zu prüfen, öffnen Sie den Bericht Testfälle, und filtern Sie nach dem Intent.

Testfälle - Bericht

Dieser Bericht listet alle Testfälle auf, die im Testlauf enthalten sind.
  1. Sie können die Ergebnisse filtern, indem Sie auf Alle, Erfolgreich (Grün) oder Nicht erfolgreich (Rot) klicken. Die als übersprungen gezählten Testfälle umfassen sowohl deaktivierte Testfälle als auch Testfälle, bei denen das erwartete Intent deaktiviert wurde.

    Sie können die Ergebnisse nach unzuverlässigen Testfällen filtern, indem Sie in der Warnmeldung entweder auf Unzuverlässige Fälle anzeigen klicken oder den Filter Nur unzuverlässige Fälle auswählen.
  2. Filtern Sie bei Bedarf die Ergebnisse nach einem bestimmten Intent oder einer bestimmten Entity oder nach zuverlässigen oder unzuverlässigen Testfällen.
  3. Bei unzuverlässigen und nicht erfolgreichen Testfällen klicken Sie auf Ähnliche Äußerungen anzeigen (auf der Seite "Testinfo"), um herauszufinden, ob die Testfalläußerung eine Ähnlichkeit mit den Äußerungen im Trainingsset aufweist.
    Dieses Bild zeigt die Schaltfläche "Ähnliche Äußerungen anzeigen".

  4. Prüfen Sie die folgenden Ergebnisse:
    • Testinfo: Zeigt die Testfallübersicht an, einschließlich des Zielkonfidenzschwellenwerts, des erwarteten Intents und der übereinstimmenden Entitywerte.
    • Testergebnis: Die Einstufung des Intents nach Konfidenzniveau. Wenn vorhanden, identifiziert der Bericht auch die in der Äußerung enthaltenen Entitys nach Entityname und Wert. Sie können auch das JSON-Objekt anzeigen, das die vollständigen Ergebnisse enthält.
    • Fehleranalyse: Erläutert, warum der Testfall nicht erfolgreich war. Beispiel: Das tatsächliche Intent ist nicht das erwartete Intent, der beschriftete Entitywert im Testfall stimmt nicht mit der aufgelösten Entity überein, oder die erwartete Sprache ist nicht mit der erkannten Sprache identisch.
Unzuverlässige Testfälle

Einige Testfälle können keine konsistenten Ergebnisse liefern, da sie innerhalb von 5% oder weniger des Konfidenzschwellenwerts aufgelöst werden. Dieser enge Rand macht diese Testfälle unzuverlässig. Beispiel: Wenn der Konfidenzschwellenwert des Skills auf 0,7 festgelegt ist, verläuft ein Testfall mit 74% möglicherweise nicht erfolgreich, nachdem Sie nur geringfügige Änderungen an Ihren Trainingsdaten vorgenommen haben oder weil der Skill auf eine neue Version des Modells upgegradet wurde. Die Fragilität dieser Testfälle kann darauf hinweisen, dass die Äußerungen, die sie in den Trainingsdaten darstellen, möglicherweise zu wenig sind und dass Sie die Trainingsdaten des Intents möglicherweise mit ähnlichen Äußerungen ausgleichen müssen.

So ermitteln Sie unzuverlässige Testfälle:
  1. Führen Sie die Test-Suite aus. Klicken Sie dann auf Testergebnisse, und wählen Sie den Testlauf aus. Die unzuverlässigen Testfälle werden zu Beginn der Testlaufergebnisse sortiert und mit Warnungen gekennzeichnetDieses Bild zeigt das Warnsymbol..

  2. So isolieren Sie die unzuverlässigen Testfälle:
    • Klicken Sie in der Nachricht auf Unzuverlässige Fälle anzeigen.
      Dieses Bild zeigt den Link "Zeige mir die unzuverlässigen Fälle".

    • Wählen Sie im Menü "Nach Fällen filtern" die Option Nur unzuverlässige Fälle aus.
      Dieses Bild zeigt die Filteroption "Nur unzuverlässige Fälle".

  3. Um die Nähe des höchsten Intents des Testfalls zum Konfidenzschwellenwert zu ermitteln, öffnen Sie das Fenster "Testergebnis". Um den Konfidenzscore der obersten Rangfolge mit dem Konfidenzschwellenwert zu vergleichen, klicken Sie auf Dieses Bild zeigt das Warnsymbol. .

  4. Wenn Sie die Trainingsdaten für das hochrangige Intent ergänzen müssen, klicken Sie in der Warnmeldung auf Zum obersten Intent gehen.
    Dieses Bild zeigt den Link "Go to top Intent" in der Warnmeldung.

  5. Wenn Sie die Anzahl der Äußerungen bestimmen möchten, die durch den Testfall in den Trainingsdaten dargestellt werden, klicken Sie auf Ähnliche Äußerungen anzeigen.

    Sie können auch prüfen, ob die Äußerungen, die der Testfalläußerung am ähnlichsten sind, auch Anomalien im Trainingsset sind, indem Sie den Anomalienbericht ausführen.

Exportiert

Testläufe werden nicht mit dem Skill persistiert, Sie können sie jedoch zur Analyse in Ihr System herunterladen, indem Sie auf Testlauf exportieren klicken. Wenn die Intents die Benutzereingabe nicht mehr wie erwartet auflösen oder wenn sich Plattformänderungen negativ auf die Intent-Auflösung auswirken, können Sie die Details für eine Serviceanfrage mit den Logs der exportierten Testläufe erfassen.

Fehlertests

Mit Fehlertests (oder Negativtests) können Sie Bulktests für Äußerungen ausführen, die nie aufgelöst werden sollen, entweder weil sie zu unresolvedIntent führen oder weil sie nur als andere Intents unter dem Konfidenzschwellenwert für alle Intents aufgelöst werden.

So führen Sie Fehlertests durch:
  • Geben Sie "unresolvedIntent" als erwartetes Intent für alle Testfälle an, die voraussichtlich nicht aufgelöst werden. Idealerweise bleiben diese "falschen" Wortgruppen nicht aufgelöst.

  • Passen Sie bei Bedarf den Konfidenzschwellenwert beim Erstellen eines Testlaufs an, um zu bestätigen, dass die falschen Wortgruppen (diejenigen mit unresolvedIntent als erwartetem Intent) nur unter dem hier festgelegten Wert aufgelöst werden können. Beispiel: Die Erhöhung des Schwellenwerts kann dazu führen, dass die falschen Wortgruppen auf dem Konfidenzniveau nicht als ein Intent (einschließlich unresolvedIntent) aufgelöst werden können. Dies bedeutet, dass sie übergeben werden, weil sie als nicht aufgelöst betrachtet werden.
  • Prüfen Sie die Testergebnisse, und stellen Sie sicher, dass die Testfälle mit "unresolvedIntent" beim Schwellenwert erfolgreich abgeglichen wurden oder keinen Intents (weder unresolvedIntent noch anderen) am Schwellenwert zugeordnet wurden.

Ähnliche Äußerungen

Sie können herausfinden, wie ähnlich Ihre Testphrase den Äußerungen im Trainingskorpus ist, indem Sie auf Ähnliche Äußerungen anzeigen klicken. Dieses Tool bietet eine zusätzliche Perspektive auf die Trainingsdaten des Skills, indem es Ihnen zeigt, wie ähnlich seine Äußerungen der Testphrase sind und wie ähnlich die Äußerungen in allen Intents zueinander sind. Mit diesem Tool können Sie herausfinden, ob die Ähnlichkeit der Testphrase mit Äußerungen anderer Intents der Grund ist, warum die Testphrase nicht wie erwartet aufgelöst wird. Es kann sogar darauf hinweisen, wo Trainingsdaten zum falschen Intent gehören, da sie der Testphrase ähneln.
Beschreibung von ähnlich-äußerung-report-all-intents.png folgt
Beschreibung der Abbildung "ear-utterance-report-all-intents.png"

Die von diesem Tool generierte Liste enthält 20 Äußerungen (zusammen mit den zugehörigen Intents), die der Testphrase am nächsten liegen. Idealerweise gehört die oberste Äußerung in dieser Liste - die am ehesten der Testphrase ähnelt - zu dem Intent, das für die Testphrase bestimmt ist. Wenn die nächste Äußerung, die zum erwarteten Intent gehört, weiter unten ist, kann eine Prüfung der Liste einige Hinweise darauf enthalten, warum. Beispiel: Wenn Sie eine Äußerung des Intents "Transaktionen" testen, wie viel Geld habe ich gestern überwiesen?, würden Sie erwarten, dass die hochrangige Äußerung ebenfalls zu einem Transaktions-Intent gehört. Wenn diese Testäußerung jedoch in das falsche Intent aufgelöst oder unter dem Konfidenzniveau aufgelöst wird, könnte die Liste zeigen, dass sie mit Äußerungen mit hoher Rangfolge mit ähnlichem Wortlaut, die zu anderen Intents gehören, mehr gemein hat. Beispiel: Die Äußerung des Intents "Salden" Wie viel Geld habe ich in allen meinen Konten? könnte näher an der Testäußerung liegen als die niedrigere Wie viel habe ich im April eingezahlt? des Intents "Transaktionen".

You can access the list, which is generated for skills trained on Trainer Tm, by clicking View Similar Utterances in the Utterance Tester or from the Test Cases report.

Hinweis

Sie können dieses Tool nur für Skills verwenden, die in Trainer Tm trainiert wurden (es ist nicht für Skills verfügbar, die mit Ht trainiert wurden).
Sie können Äußerungen sowohl vom Äußerungstester als auch durch Testen im Tool "Ähnliche Äußerungen anzeigen" selbst abfragen. Wenn Sie auf Ähnliche Äußerungen anzeigen klicken, wird das gesamte Korpus mit der Testphrase verglichen, und auf jede Äußerung wird ein Ranking angewendet. Da jedoch standardmäßig keine Filter angewendet werden, enthält die Liste nur die 20 Äußerungen mit der höchsten Priorität und nummeriert sie sequenziell. Um herauszufinden, wie Äußerungen im Vergleich zu 21 und höher eingestuft wurden, müssen Sie die Filter verwenden. Durch die Anwendung der folgenden Filter können Sie die Nähe ähnlicher Äußerungen innerhalb der Rangfolge in Bezug auf die Sprache, die Intents, zu denen sie gehören, oder die Wörter oder Ausdrücke, die sie gemeinsam haben, kennenlernen.
Hinweis

Wenn Sie diese Filter anwenden, werden die Einstufungen nicht geändert, sondern nur die Ansicht. Eine Äußerung, die beispielsweise als Dritter eingestuft wird, wird unabhängig vom Filter als solche notiert. Die Rankings und Inhalte des Berichts ändern sich nur, wenn Sie das Korpus aktualisiert und den Skill mit Trainer Tm neu geschult haben.