NLP Instellingen
Opgelet! Dit is een geavanceerde feature. Bij verkeerde instellingen kan je er voor zorgen dat je bot intenties niet meer juist herkent.
De NLP Instellingen geven je controle over hoe je chatbot intenties herkent.
Je kan de volgende zaken aanpassen:
Behoud entiteitwaarden voor intentherkenning: normaal zal Oswald bij het herkennen van een intentie de tekst van een entiteit vervangen door de naam van de entiteit. Wanneer je bijvoorbeeld de zin
ik wil op reis naar Parijs
ingeeft zal de bot herkennen datParijs
een synoniem is voor de entiteitbestemming:Paris
met naambestemming
en waardeParis
. Om de intentie te herkennen zal de zin vertaald worden naarik wil op reis naar bestemming
. Dat kan betere resultaten geven omdat de bot niet te specifiek naar de waarden zal kijken en dus beter kan generaliseren. Bekijk het als 'de bot moet niet leren dat de intentieop reis gaan
gebonden is aan de waardeParis
, gelijk welke bestemming is goed'. Wanneer je de entiteit waarden behoudt, wordt de zin vervangen doorik wil op reis gaan naar bestemming Paris
. Dat kan nuttig zijn als je bij verschillen de waarden een andere intentie wil herkennen.Verstreng datumherkenning: de bot kan soms iets te snel een datum herkennen. Wanneer je deze setting aan zet wordt een datum enkel herkend wanneer er zowel dag, maand als jaar gegeven wordt.
Vectorisatie: de manier waarop een vector wordt gemaakt van de zin. Een vector is een wiskundige voorstelling van de tekst. Dit kan gebeuren op basis van opeenvolgingen van characters, opeenvolgingen van woorden of op basis van sentence embeddings.
Classificatie: de manier waarop Oswald een intent probeert te herkennen vanuit de vectoren die uit de tekst gegenereerd worden. Dit kan gaan om:
Naive Bayes: dit werkt goed wanneer er weinig trainingszinnen zijn. We raden niet aan om dit in productie te gebruiken.
SVM: support vector machines. Dit werkt erg goed, maar wanneer er veel trainingszinnen zijn kan het lang duren voordat de bot hertraind is.
SGD: Stochastic Gradient Descent. Dit is een stochastische methode die er voor zorgt dat er snel een goede classificatie gevonden kan worden, ook al is deze mogelijk niet optimaal. Deze oplossing geeft goede resultaten wanneer er veel trainingszinnen zijn en komt toch snel tot een oplossing.
Adaptive: dit zorgt voor een combinatie van de vorige aanpakken. Naar gelang het aantal trainingszinnen kiest de bot een andere aanpak.
Regularisatie: dit is een waarde van 0 (niet inclusive) tot en met 1000000. Hoe hoger, hoe minder specifiek de chatbot zal trainen. Een minder specifiek getrainde chatbot kan betere resultaten geven op input die de chatbot nog niet heeft gezien omdat de chatbot dan de input die hij al kent minder 'van buiten heeft geleerd'.
Last updated