Jednym z typowych kroków podczas tworzenia bota jest definiowanie "intencji".
Intencja może brzmieć "zresetuj moje hasło", "zarezerwuj lot" lub "skontaktuj się z pomocą techniczną". Twórca bota musi wprowadzić do oprogramowania wiele fraz, które mają takie samo znaczenie jak intencja. Na przykład "chcę polecieć do Paryża" byłoby jedną z takich fraz dla intencji "zarezerwuj lot".
Ogólnie rzecz biorąc, platformy do tworzenia botów proszą użytkowników o wprowadzenie wielu fraz dla danej intencji. Frazy te stanowią dane treningowe dla algorytmu przetwarzania języka naturalnego (NLP).
Algorytm NLP to algorytm uczenia maszynowego, który trenuje się na danych, aby móc rozpoznawać frazy o tym samym znaczeniu, ale różnych słowach (w porównaniu z danymi szkoleniowymi).
Algorytm NLP wykorzystuje dane intencji dostarczone przez twórcę bota oraz ogromny korpus danych dotyczących języka (na którym został wcześniej przeszkolony) do kalibracji swojego wewnętrznego modelu, aby móc rozpoznawać nowe frazy.
Im więcej przykładów zostanie przekazanych algorytmowi NLP przez twórcę chatbota, tym dokładniej będzie on w stanie rozpoznać to samo znaczenie w innych frazach, które mają inne brzmienie. Przynajmniej takie jest przesłanie kierowane do twórców botów.
Problem polega na tym, że nie wszystkie dane treningowe są sobie równe. Jakość danych jest równie ważna jak ich ilość.
Na przykład, wyobraźmy sobie, że chcemy utworzyć intencję o nazwie "zresetuj moje hasło".
Autor bota może zacząć tworzyć następujące frazy:
Resetowanie hasła
Zapomniałem hasła
Moje hasło nie działa
Proszę o nowe hasło
Problem z hasłem
itd.
Problem z powyższym polega na tym, że wszystkie frazy używają tego samego słowa "hasło". Oznacza to, że gdy algorytm trenuje się na tych danych, rozpoznaje regułę, że jeśli słowo "hasło" znajduje się we frazie, to intencją jest "zresetuj moje hasło". Jest to oczywiście błędne. Ludzie mogą wypowiadać wiele innych fraz bez słowa "hasło", które mają takie samo znaczenie jak "zresetuj moje hasło". Istnieje również wiele zwrotów ze słowem "hasło", które nie oznaczają "zresetuj moje hasło".
W świecie algorytmów problem ten nazywany jest nadmiernym dopasowaniem do danych treningowych. Algorytm nadmiernie dopasował się do słowa "hasło" i dlatego "wierzy", że każda fraza ze słowem "hasło" oznacza "zresetuj moje hasło".
Istnieją również inne przykłady tego samego zamiaru. Na przykład twórca bota może wprowadzić następujące frazy:
Moje dane uwierzytelniające nie działają
Moje logowanie nie działa
Moje hasło nie działa
Moja nazwa użytkownika nie działa.
itd.
Jest to oczywiście bardziej ekstremalny przykład problemu, ale wzorzec ten jest powszechny podczas tworzenia danych treningowych. Ponownie spowoduje to nadmierne dopasowanie algorytmu do danych, ale tym razem do frazy "nie działa".
Rozwiązanie jest już, miejmy nadzieję, oczywiste. Każda fraza w danych treningowych musi być jak najbardziej różna od innych fraz w zestawie danych. Na przykład:
Moje dane uwierzytelniające nie działają.
Potrzebuję zresetować hasło.
Jak rozwiązać problem z logowaniem?
Kto może mi pomóc w zalogowaniu się do systemu?
itd.
Oczywiście stworzenie takiego zestawu danych wymaga więcej wysiłku. Pomocne może być nawet otwarcie tezaurusa, aby znaleźć synonimy w celu stymulowania pomysłów na frazy.
Innym sposobem, w jaki twórcy botów radzą sobie z tym problemem, jest dostęp do danych z czatu z obsługą klienta, które dostarczają wielu przykładów wszystkich sposobów, w jakie prawdziwy klient zadałby to samo pytanie. Dane te mogą być niezwykle cenne.
Istnieje pytanie o to, kiedy algorytmy NLP będą w stanie dobrze działać na niewielkim zestawie danych szkoleniowych. Zdecydowanie lepiej byłoby, gdyby bot działał idealnie przy użyciu tylko małego zestawu danych. Jest to zdecydowanie coś, nad czym pracują naukowcy, ponieważ nie tylko skróciłoby to czas i wysiłek potrzebny do stworzenia chatbots, ale także znacznie poprawiłoby ich jakość.
Algorytm NLP jest dla większości twórców botów czarną skrzynką. Ważne jest jednak, aby zrozumieli podstawy działania algorytmu, aby wiedzieli, jakiego rodzaju dane szkoleniowe (dane intencji) muszą dostarczyć algorytmowi, aby uzyskać najlepsze wyniki.
Udostępnij to na:
Zbuduj własnego spersonalizowanego chatbota AI za darmo
Rozpocznij tworzenie spersonalizowanego bota GPT za pomocą naszego intuicyjnego interfejsu "przeciągnij i upuść".
Zacznij - to nic nie kosztuje! 🤖Nie potrzebujesz karty kredytowej
Bądź na bieżąco z najnowszymi informacjami na temat sztucznej inteligencji chatbots