Skip to main content

Chatbotok – sikerül szót értenünk a gépekkel?

Fodróczy Ágnes - 2020. 03. 07.

A chatbot vagy magyarul csevegőrobot egy olyan számítógépes program, amely az internen keresztül beszélgetést folytat emberekkel. A szöveges üzenetet feldolgozó chatbotok egy lehetséges csoportosítása a szabály alapon működők és mesterséges intelligenciával rendelkezők.  A szabályalapú chatbotoknak talán lehetetlen, a mesterséges intelligenciával rendelkező chatbotoknak pedig továbbra is nagyon bonyolult a kommunikáció emberi, a jelentéssel és a kontextussal kapcsolatos részleteit megtanítani.

Kulcsszavak: chatbot – imitációs játék – ELIZA – A.L.I.C.E – SmarterChild – mesterséges intelligencia

Chatbots: successful conversation with machines?

Abstract: According to a forecast, by 2020, 85% of customer service interactions will be handled without the need for human agents, partly due to the use of chatbots. Chatbots are software that engage in a conversation with humans via the Internet. They are based on either rules or Artificial Intelligence.  Learning the human (semantic and contextual) elements of communication is almost impossible for rule-based chatbots, and continues to be very difficult for AI-driven ones.

Keywords: chatbot – imitation game – ELIZA – A.L.I.C.E. – SmarterChild – Artificial Intelligence

Az emberiség történelme során rengeteget változott a kommunikáció. A megjelenő technológiák hatására új kommunikációs csatornák alakultak ki, és ezek a szokásainkra, elvárásainkra is hatást gyakoroltak. Az utóbbi 150 év során látványosan gyorsabbá és hatékonyabbá vált az információcsere. Bizonyos vívmányoknak, mint a telefonnak, az e-mailnek, az üzenetküldő platformoknak köszönhetően, ma már teljesen egyértelműnek vesszük, hogy akár azonnal szót válthatunk a partnerünkkel. Azonban nemcsak a kommunikáció módja változott, hanem a beszélgetőtársak is. Régebben lehetetlennek tűnt, hogy egy olyan ismeretlennel beszéljünk valós időben, aki a föld másik részén él. De az, hogy ne emberrel, hanem egy géppel folytassunk beszélgetést, talán még furcsább elképzelés volt. Sőt, még ma sem egészen szokványos. Pedig igencsak úgy tűnik, hogy a következő pár évben azzá válik: a Gartner korábbi előrejelzései szerint 2020-ra az ügyfélszolgálati interakciók 85%-a emberi érintkezés nélkül, többek között chatbotokon keresztül történik.[1] Ugyan az újabb felmérések alapján nem valószínű, hogy a chatbotok használata hasonlóan nagy mértékben elterjedne, de chatbot piacon is jelentős növekedés várható (1,11 milliárd dollár 2020 és 2024 között).[2]

Chatbot, csevegőrobot

De mi is pontosan a chatbot? A chatbot, vagy magyarul csevegőrobot, a Cambridge Dictionary szerint egy olyan számítógépes program, amit arra terveztek, hogy beszélgetést folytasson emberekkel, elsősorban az interneten.[3] Atwell és Shaware definíciója szerint olyan programok, amelyek a felhasználókkal természetes nyelven[4] folytatnak interakciót.[5] Azonban az üres csevegés, egy átlagos párbeszéd fenntartása nem minden, amire egy chatbot képes: alkalmas nyelvgyakorlásra, a felhasználó tájékoztatására, de akár képes lehet online tranzakciók, vásárlások lebonyolítására, bizonyos üzeti folyamatok (pl. ügyfélszolgálat) automatizálására, és marketingkommunikációs célokra (a vállalati arculat alakítására, nyereményjátékokra) is megfelelő segítség lehet. Mindez azon adottságán alapul, hogy képes a felhasználó üzenete vagy utasítása alapján parancsot végrehajtani, vagy a témában releváns választ adni. De az, hogy hogyan tudják „értelmezni” a felhasználó kérdését vagy parancsát, és hogy milyen céllal alkalmazzák őket, szintén jelentősen átalakult az idők során.

Mesterséges intelligencia: imitációs játék

Az első komoly kísérlet a gépi, mesterséges intelligencia tesztelésére nagyrészt ember és a gép kommunikációján alapult. Alan Turing 1950-ben megalkotta az imitációs játékot (ma: Turing teszt). A próbának több variánsa is van, de a központi ötlet az, hogy az emberi bíráló a géppel folytatott beszélgetés után nem képes megmondani, hogy géppel vagy emberrel beszélt. A sztenderd verzió szerint a teszt során egy emberi bíráló bizonyos időkereten belül szimultán beszélget egy géppel és egy emberrel, nem tudva melyik melyik. A gép akkor megy át a teszten, ha a bíráló az idő lejártával nem képes megmondani, melyik alany volt a gép.[6]

ELIZA

A robot elsőként látszólag sikeresen teljesítette a teszt egyik verzióját (a vele beszélgető emberek azt hitték emberrel beszéltek) egy ELIZA nevű program volt – és valójában a kezdetleges mesterséges intelligencia paródiájaként hozták létre. Joseph Weizenbaumot meglepte a robot sikere, állítása szerint több ember is érzelmi kötődést érzett iránta, nem volt egyszerű meggyőzni őket, hogy nem egy emberrel beszélgetnek.[7] ELIZA egy pszichológust imitál, aki a rogersi elvek alapján, személyközpontú megközelítés mentén folytat beszélgetést. A vele folytatott beszélgetés azon alapul, hogy a robot nyitott kérdéseket tesz fel, vagy olyan választ küld, ami a felhasználót további üzenetküldésre bíztatja, mindezt a felhasználó által begépeltek alapján. Ehhez ELIZA először külön mondatokra bontja a szöveget és egy automatikus szintaktikai elemzést (parsing) végez. A mondatokban bizonyos kulcsszavakat keres, és ha talál, a kulcsszóhoz társuló szabály alapján átalakítja a felhasználó üzenetét. A tudástárában szereplő mintákba illeszti be a szavakat.

Ha viszont nem talál kulcsszót, egy korábbi felhasználói üzenet kulcsszavai alapján küld választ, vagy ha nincs ilyen, egy általános, a téma kifejtésére bátorító üzenetet küld.[8] Egyfelől szabadok a válaszok, hiszen nem minden válasz kézzel, előre megírt és programozott, másfelől viszont egy hosszabb beszélgetés során feltűnő, hogy a robot tudástára végleges, és ugyanazokat a struktúrákat ismétli pár szó, vagy mondatrész kicserélésével. ELIZA-nak nincs valódi tudása a világról, nincs komoly értelmezési folyamat a válaszadás mögött, egyszerű párosítást végez.[9]

Ha pedig nem sikerül választ adnia, csupán a látszatot tartja fent, hogy érti miről van szó.

A.L.I.C.E.

Egy másik chatbot, amit nagy mértékben inspirált ELIZA, az 1995-ben debütált A.L.I.C.E. A.L.I.C.E. nyílt forráskódú. AIML alapon működik, ami az XML jelölőnyelv egyik változata, amit Dr. Richard S. Wallace fejlesztett. Az AIML ún. AIML objektumokból áll, amelyek topicok és categoryk építenek fel. A topic egy opcionális elem, aminek van neve, és categoryk tartoznak hozzá. A category maga a tudásegység, egy szabály, amiben szerepel (legalább) egy pattern, ami a felhasználói inputot képviseli, és (legalább) egy template, ami pedig a chatbot válaszát. A patternekben van lehetőség „joker kártyák”, bizonyos helyettesítő elemek használatára, amit a * vagy a _ jelöl, azt jelzi, hogy ezek helyén bármilyen szó állhat. Képes továbbá szinonimákat kezelni.

A.L.I.C.E. szóról szóra haladva próbálja megtalálni a leghosszabb pattern egyezést, hisz általában ez a helyes. ELIZA-hoz hasonlóan szabályalapú, kérdés-válasz párosítású robot, azzal a különbséggel, hogy A.L.I.C.E. előre megírt válaszokat használ.[10] Ez kevésbé teszi adaptívvá, mint ELIZA, ugyanakkor megenged olyan megoldásokat és tanításokat, amely természetesebb látszatát kelti a párbeszédnek. Ennél a két chatbotnál pedig főként ez volt a cél: szórakoztatás, az emberi párbeszéd imitációja. Ami viszont igencsak behatárolja a képességeiket, hogy csak a meglévő tudásbázisuk alapján tudnak válaszolni.

SmarterChild

Nagy előrelépés volt ebből a szempontból a 2000-es években fejlesztett és futótűzként terjedő SmarterChild: az ActiveBuddy robotja olyan népszerű azonnali üzenetküldő szolgáltatásokon, csevegőplatformokon lett elérhető, mint az AIM, az MSN Messenger, az AOL Instant Messenger és az ICQ. SmarterChild volt az a chatbot, aki (!) elsőként megmutatta a chatbotban rejlő lehetőségeket: túllépve a beszélgetésszimuláción, képes volt integrálódni más adatbázisokkal és ezek adatait felhasználni, hogy megválaszolja a felhasználó kérdését: például, ha a felhasználó az időjárásról, részvények áráról, vagy a moziműsorról érdeklődött, az aznapi aktuális adatokat hívta le és válaszolta a felhasználónak. Mindezen felül a vállalat saját fejlesztői eszközének, az ingyenes BuddyScriptnek köszönhetően lehetőség volt a chatbot egyedi programnyelvén új funkciókat hozzáadni, vagy új chatbotokat építeni. Ez a természetes nyelvi kereső tette lehetővé, hogy a chatbot az adatbázisokból megszerezze a kívánt adatot. Sajnos viszont elképesztő erőforrásigénye miatt igen nehéznek bizonyult folyamatosan bővíteni a tudását. Elért viszont egy igen jelentős dolgot: elindította a chatbotok üzleti használatát, és felfedte a chatbotokban rejlő piaci lehetőségeket. Hatására a chatbotra épülő marketingkampányok készültek, például az akkor megjelenő Radiohead album, vagy az Austin Powers film promóciójára.[11] Ettől kezdve váltak egyre gyakoribbá a specifikus feladatot végrehajtó, üzleti célokra is használt chatbotok.[12]

Mesterséges intelligenciával tanuló chatbotok

Ezzel párhuzamosan egy másik irányzat is fejlődött. A mai, szöveges üzenetet feldolgozó chatbotok alapvetően két nagy kategóriába sorolandók: a szabály alapon működő, és a mesterséges intelligenciával[13] rendelkező robotokra. Az első chatbotok (ahogy az utóbbi három példa is) mind szabályalapúak voltak: meghatározott válaszokat adtak a tudástárukba feltöltött szövegek alapján (ami SmarterChild esetében kiegészült a különböző adatbázisokból megszerzett információkkal). A mesterséges intelligenciával rendelkező robotok ezzel szemben adaptívabbak, képesek minta alapján önállóan tanulni. A 80-as években kezdődött meg a fejlesztése egy olyan chatbotnak, aki egyfajta mesterséges intelligenciát alkalmaz. Az 1997-ben megjelent Jabberwacky nevű chatbot képes a felhasználóktól tanulni. Ezt a chatbotot szintén az emberi beszéd humoros, szórakoztató szimulációjára készítették. Érdekessége, hogy Jabberwacky ELIZA-hoz hasonlóan a válaszait a felhasználó által begépelt szöveg alapján adja, viszont nagy különbség, hogy Jabberwacky minden beszélgetést megjegyez és tárol, a beszélgetést végét követően is. Így bármely felhasználója, bármilyen nyelven írt szövegét felhasználhatja válaszadásra. Elmondható, hogy Jabberwacky képes tanulni a felhasználótól. Nemcsak véletlenszerűen adja vissza a felhasználóktól gyűjtött válaszokat, azt is jegyzi, hogy milyen kérdésre/szövegre érkezett az adott válasz, így ha a jövőben ugyanazzal a kérdéssel/szöveggel találkozik, ezt figyelembe véve válaszol.[14] Végtelenül vonzónak tűnhet a tanulásra, fejlődésre képes robot ígérete, azonban szükséges a benne rejlő veszélyekre is figyelni. Mivel a felhasználóktól tanul, így legyen bármennyire is kellemetlen és sértő, amit a felhasználók írnak neki, hacsak nem avatkozunk be, bármit meg fog ismételni. És bizony nem ritka, hogy a felhasználók sértő dolgokat írjanak: a chatbottal való beszélgetés során hajlamosabbak káromkodni, vagy szexuális tartalmú üzeneteket, szavakat írni.[15] Ezért semmiképp nem ajánlott, hogy szigorú felügyelet nélkül vállalati célokra használjunk egy olyan chatbotot, ami hasonló elven működik.[16]

Nagyszerű példa erre Microsoft Tay, a Microsoft Twitteren indított robotja, amelyet azzal a céllal indítottak útjára, hogy tanuljon természetes nyelvet, miközben szórakoztatja és összeköti a felhasználókat. Alig 24 óra alatt a bot 50.000 követőt és több mint 10.000 tweetet produkált, de hamar le kellett állítani, ugyanis a gépi tanulással és a mesterséges intelligenciával ismerős felhasználók kihasználták a rendszer gyenge pontját, és hatalmas mennyiségű antiszemita, rasszista, sértő szöveget küldtek neki, amit aztán Tay felhasznosított, és ő maga is hasonló tartalmú tweeteket küldött. A projektben részt vett tudós szerint nagy probléma a mesterséges intelligencia nagy veszélye, hogy az előítéleteket, az elfogultságot automatizáljuk.[17] A mesterséges intelligencia túlzottan ragaszkodik a kapott mintához (ami a valóságnak mindig csak egy szelete).

Természetes nyelv feldolgozás

Bizonyos felügyelettel és korlátozással azonban rendkívül hasznos is lehet a mesterséges intelligencia alkalmazása. A mesterséges intelligencia egyik, a chatbotok szempontjából roppant fontos területe a Natural Language Processing (természetes nyelv feldolgozás), röviden az NLP. Az NLP egy olyan technológia, ami segít egy gépnek „megérteni” az emberek által használt természetes nyelvet. Kisebb, kezelhető egységekre bontja le a nyelvet, és az elemek között összefüggéseket keres. Minél gazdagabb minta áll rendelkezésére, annál pontosabb képet tud csinálni az adott nyelvről, és annál könnyeben talál újabb összefüggéseket, végső soron pedig ettől fog jobban válaszolni egy chatbot is.[18] Azonban ez korántsem olyan egyszerű, mint azt valaha gondolták volna. Míg vannak könnyen leírható és alkalmazható nyelvtani szabályok (pl. mi jelzi a többes számot, hogyan képzik a múlt időt), a természetes nyelvnek és nyelvhasználatnak rengeteg olyan aspektusa van, amit bonyolult a gépeknek átadni, mint a szarkasztikus nyelvhasználat, az idiomatikus kifejezések, és úgy általában a pragmatika: ennek hiányában egyrészt a botok nem lesz emberiek, másrészt az emberek valódi mondandója nem jut el hozzájuk.

A chatbotok hosszú utat tettek meg, de még hosszabb út vár rájuk. Turing feltételezte, hogy 2000-re lehetséges lesz majd egy olyan program, amivel 5 perc beszélgetés után egy átlagos felhasználó csak 70%-os eséllyel tudja beazonosítani a gépet az Imitációs Játékban. Ettől a mai számok is jócskán elmaradnak. A szabályalapú chatbotoknak talán lehetetlen, a mesterséges intelligenciával rendelkező chatbotoknak pedig továbbra is nagyon bonyolult a kommunikáció emberi, a jelentéssel és a kontextussal kapcsolatos faktorait megtanítani. Mivel nem ismertük ki tökéletesen a gépi tanulást és a mesterséges intelligenciát, ahogy Tay esetében is láttuk, ebből előre nem látható problémák keletkezhetnek.

[1] https://www.gartner.com/imagesrv/summits/docs/na/customer-360/C360_2011_brochure_FINAL.pdf utolsó letöltés: 2019. 12. 11.

[2] https://www.businesswire.com/news/home/20200303005409/en/ utolsó letöltés: 2020. 03. 03.

[3] https://dictionary.cambridge.org/us/dictionary/english/chatbot utolsó letöltés: 2019. 12. 11.

[4] A természetes nyelvek alatt az emberek által, közösségben használt nyelvek értendőek.

[5] Shawar, Bayan & Atwell, Eric. (2007). Chatbots: Are they Really Useful?. LDV Forum. 22. 29-49.

[6] https://www.britannica.com/technology/Turing-test

[7] Weizenbaum, J. (1966). ELIZA—a computer program for the study of natural language communication between man and machine. Communications of the ACM, 9(1), 36–45.

[8] https://www.chatbotpack.com/how-eliza-chatbot-works/ utolsó letöltés: 2019.12.11.

[9] Minta egy beszélgetésbő ELIZA-val, Forrás: https://marutitech.com/chatbots-as-your-doctors/ utolsó letöltés: 2019.12.11.

[10] Shawar, Bayan & Atwell, Eric. (2007). Chatbots: Are they Really Useful?. LDV Forum. 22. 29-49.

[11] https://blog.talla.com/remembering-smarterchild

[12] beszélgetés SmarterChild-dal az aktuális moziműsorról, Forrás: https://archive.nytimes.com/www.nytimes.com/learning/general/featured_articles/010628thursday.html utolsó letöltés: 2019.12.11.

[13] bár a fogalom definíciója folyamatosan változik, Mesterséges Intelligencia alatt a gépek által tanúsított emberi képességek és viselkedés produkálását értjük, illetve az ezzel foglalkozó számítástechnikai tudományágat.
Forrás: https://www.webopedia.com/TERM/A/artificial_intelligence.html utolsó letöltés: 2019.12.11.

[14] Mccarthy, Philip & Lamkin, Travis. (2011). Cross-Disciplinary Advances in Applied Natural Language Processing: Issues and Approaches

[15] Hill, J., Randolph Ford, W., & Farreras, I. G. (2015). Real conversations with artificial intelligence: A comparison between human–human online conversations and human–chatbot conversations. Computers in Human Behavior, 49, 245–250.

[16] https://www.philosophyforlife.org/blog/on-machines-faking-being-human utolsó letöltés: 2019.12.11.

[17] https://www.zdnet.com/article/microsoft-and-the-learnings-from-its-failed-tay-artificial-intelligence-bot/

[18] https://becominghuman.ai/a-simple-introduction-to-natural-language-processing-ea66a1747b32 utolsó letöltés: 2019.12.11.

Nincs hozzászólás!

Your Email address will not be published.

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .

x