Kiértékelési metrikák beszélgetési nyelvfelismerési modellekhez

Az adathalmaz két részre van osztva: egy betanítási készletre és egy tesztelési készletre. A betanítási készlet a modell betanítására szolgál, míg a tesztelési készlet a modell tesztelésére szolgál a betanítás után a modell teljesítményének és értékelésének kiszámításához. A tesztelési készlet nem jelenik meg a modellben a betanítási folyamaton keresztül, így meggyőződhet arról, hogy a modell új adatokon van tesztelve.

A modell kiértékelése automatikusan aktiválódik a betanítás sikeres befejezése után. A kiértékelési folyamat a betanított modell használatával kezdődik a tesztkészletben lévő kimondott szövegek felhasználó által definiált szándékainak és entitásainak előrejelzéséhez, és összehasonlítja őket a megadott címkékkel (amelyek az igazság alapkonfigurációját határozzák meg). A rendszer visszaadja az eredményeket, hogy áttekinthesse a modell teljesítményét. A kiértékeléshez a beszélgetési nyelvfelismerés a következő metrikákat használja:

  • Pontosság: Azt méri, hogy mennyire pontos/pontos a modell. Ez a helyesen azonosított pozitívok (valódi pozitívok) és az összes azonosított pozitív közötti arány. A pontossági metrika megmutatja, hogy az előrejelzett osztályok közül hány megfelelően van címkézve.

    Precision = #True_Positive / (#True_Positive + #False_Positive)

  • Felidézés: A modell tényleges pozitív osztályok előrejelzésének képességét méri. Ez az előrejelzett valódi pozitívok és a ténylegesen címkézett értékek aránya. A visszahívási metrika megmutatja, hogy az előrejelzett osztályok közül hány helyes.

    Recall = #True_Positive / (#True_Positive + #False_Negatives)

  • F1 pontszám: Az F1 pontszám a pontosság és a visszahívás függvénye. Erre akkor van szükség, ha egyensúlyt keres a pontosság és a visszahívás között.

    F1 Score = 2 * Precision * Recall / (Precision + Recall)

A pontosság, a visszahívás és az F1 pontszám kiszámítása a következőkre történik:

  • Minden entitás külön-külön (entitásszintű kiértékelés)
  • Minden szándék külön-külön (szándékszintű kiértékelés)
  • A modell esetében együttesen (modellszintű értékelés).

A pontosság, a visszahívás és a kiértékelés definíciói megegyeznek az entitásszintű, a szándékszintű és a modellszintű értékelések esetében. Az igaz pozitívok, a hamis pozitívok és a hamis negatívok száma azonban eltérő lehet. Vegyük például az alábbi szöveget.

Példa

  • Hogy a választ köszönöm szépen.
  • válasz igennel.
  • Ellenőrizze az e-mail-címemet.
  • e-mailt cynthia, hogy a vacsora múlt héten volt csodálatos.
  • e-mail küldése mike-nak

Ezek a használt szándékok: Válasz,sendEmail,readEmail. Ezek az entitások: contactName, message.

A modell a következő előrejelzéseket hozhatja létre:

Beszédelem Előrejelzett szándék Tényleges szándék Előrejelzett entitás Tényleges entitás
Válasz küldése köszönettel Válasz Válasz thank you very much Másként message thank you very much Másként message
válasz igennel sendEmail Válasz -- yes Másként message
Ellenőrizze az e-mail-címemet readEmail readEmail -- --
e-mail cynthia, hogy a vacsora múlt héten volt csodálatos Válasz sendEmail dinner last week was splendid Másként message cynthiaas , dinner last week was splendid as contactNamemessage
e-mail küldése mike-nak sendEmail sendEmail mike Másként message mike Másként contactName

A Válasz szándék szándékszint-kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 1 Az 1. kimondott szöveg helyesen válaszként lett előre jelezve.
Téves pozitív 1 A 4. kimondott szöveget tévesen Válaszként jelezték előre.
Téves negatív 1 A 2. kimondott szöveget tévesen sendEmailként jelezték előre.

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

A sendEmail szándék szándékszint-kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 1 Az 5. kimondott szöveg helyesen lett előrejelezve sendEmail üzenetként
Téves pozitív 1 A 2. kimondott szöveget tévesen sendEmailként jelezték előre.
Téves negatív 1 A 4. kimondott szöveget tévesen Válaszként jelezték előre.

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

A readEmail szándék szándékszint-kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 1 A 3. kimondott szöveg helyesen readEmailként lett előre jelezve.
Téves pozitív 0 --
Téves negatív 0 --

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 0) = 1

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 0) = 1

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 1 * 1) / (1 + 1) = 1

A contactName entitás entitásszintű kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 1 cynthia helyesen lett előre jelezve, mint contactName a kimondott szövegben 4
Téves pozitív 0 --
Téves negatív 1 mike tévesen előrejelezték, mint message az 5. kimondott szövegben

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 0) = 1

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 1 * 0.5) / (1 + 0.5) = 0.67

Üzenet entitásszint-kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 2 thank you very much helyesen lett előrejelezve, mint message az 1. kimondott szövegben, és dinner last week was splendid helyesen lett előrejelezve, mint message a 4. kimondott szövegben
Téves pozitív 1 mike tévesen előrejelezték, mint message az 5. kimondott szövegben
Téves negatív 1 yesa 2. kimondott szövegben nem volt előre jelezve message

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 1) = 0.67

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 1) = 0.67

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.67 * 0.67) / (0.67 + 0.67) = 0.67

A közös modell modellszintű kiértékelése

Kulcs Darabszám Magyarázat
Valódi pozitív 6 TP összege az összes szándékhoz és entitáshoz
Téves pozitív 3 Az összes szándék és entitás FP-jének összege
Téves negatív 4 FN összege az összes szándékhoz és entitáshoz

Precíziós = #True_Positive / (#True_Positive + #False_Positive) = 6 / (6 + 3) = 0.67

Visszahív = #True_Positive / (#True_Positive + #False_Negatives) = 6 / (6 + 4) = 0.60

F1 pontszám = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.67 * 0.60) / (0.67 + 0.60) = 0.63

Keveredési mátrix

A keveredési mátrix a modell teljesítményértékeléséhez használt N x N mátrix, ahol az N az entitások vagy szándékok száma. A mátrix összehasonlítja a várt címkéket a modell által előrejelzett címkékkel. Ez holisztikus képet ad arról, hogy a modell milyen jól teljesít, és milyen típusú hibákat okoz.

A Keveredés mátrix segítségével azonosíthatja azokat a szándékokat vagy entitásokat, amelyek túl közel állnak egymáshoz, és gyakran tévednek (kétértelműség). Ebben az esetben érdemes lehet ezeket a szándékokat vagy entitásokat egyesíteni. Ha ez nem lehetséges, érdemes lehet címkézettebb példákat felvenni mindkét szándékra vagy entitásra, hogy a modell megkülönböztethesse őket.

Az alábbi képen a kiemelt átló a helyesen előrejelzett entitások, ahol az előrejelzett címke megegyezik a tényleges címkével.

Képernyőkép egy keveredési példamátrixról

A keveredési mátrixból kiszámíthatja a szándék- vagy entitásszintű és modellszintű értékelési metrikákat:

  • Az átlóban lévő értékek az egyes szándékok vagy entitások Igaz Pozitív értékei.
  • A szándék vagy entitás sorok értékeinek összege (az átló kivételével) a modell hamis pozitív értéke.
  • A szándék vagy entitás oszlopok értékeinek összege (az átló kivételével) a modell hamis Negatív értéke.

Hasonlóképpen:

  • A modell valódi pozitív értéke az összes szándék vagy entitás valódi pozitívjainak összege.
  • A modell hamis pozitívja az összes szándék vagy entitás hamis pozitívjainak összege.
  • A modell hamis negatív értéke az összes szándék vagy entitás hamis negatívjainak összege.

Útmutató

A modell betanítása után útmutatást és javaslatokat fog látni a modell továbbfejlesztéséhez. Javasoljuk, hogy az útmutató szakasz minden pontjára kiterjedő modellt használjon.

  • A betanítási készlet elegendő adattal rendelkezik: Ha egy szándék vagy entitás 15-nél kevesebb címkével ellátott példányt használ a betanítási adatokban, az alacsonyabb pontossághoz vezethet, mivel a modell nem lett megfelelően betanva erre a szándékra. Ebben az esetben fontolja meg további címkézett adatok hozzáadását a betanítási csoportban. Csak akkor érdemes több címkézett adatot hozzáadni az entitáshoz, ha az entitás rendelkezik tanult összetevővel. Ha az entitást csak lista, előre összeállított és regex összetevők határozzák meg, akkor ez a javaslat nem alkalmazható.

  • Minden szándék vagy entitás megtalálható a tesztkészletben: Ha a tesztelési adatok nem rendelkeznek szándék vagy entitás címkével ellátott példányával, a modell kiértékelése kevésbé átfogó a nem tesztelt forgatókönyvek miatt. Fontolja meg a modellben lévő összes szándék és entitás tesztelési adatainak használatát annak biztosítása érdekében, hogy minden tesztelés folyamatban legyen.

  • Nem egyértelmű különbség a szándékok és entitások között: Ha az adatok hasonlóak a különböző szándékokhoz vagy entitásokhoz, az alacsonyabb pontossághoz vezethet, mert gyakran tévesen egymásként vannak besorolva. Tekintse át az alábbi szándékokat és entitásokat, és fontolja meg az egyesítésüket, ha hasonlóak. Ellenkező esetben adjon hozzá további példákat, hogy jobban megkülönböztethesse őket egymástól. További útmutatásért tekintse meg a keveredési mátrix lapot. Ha azt látja, hogy két entitás folyamatosan ugyanarra az időtartamra van előre jelezve, mert azonos lista-, előre összeállított vagy regex-összetevőkkel rendelkeznek, akkor minden entitáshoz adjon hozzá egy tanult összetevőt, és tegye kötelezővé. További információ az entitásösszetevőkről.

Következő lépések

Modell betanítása a Language Studióban