Chatbots S. Tabor.

Slides:



Advertisements
Ähnliche Präsentationen
Anzahl der ausgefüllten und eingesandten Fragebögen: 211
Advertisements

Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Einführung in die Informatik: Programmierung und Software-Entwicklung
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
What do you get marks for?
Telefonnummer.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Die Deutschen im Herbst 2008
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
Rechneraufbau & Rechnerstrukturen, Folie 2.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 2.
Internet facts 2008-II Graphiken zu dem Berichtsband AGOF e.V. September 2008.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Differentielles Paar UIN rds gm UIN
Prof. Dr. Bernhard Wasmayr
Studienverlauf im Ausländerstudium
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Prof. Dr. Bernhard Wasmayr VWL 2. Semester
AWA 2007 Natur und Umwelt Natürlich Leben
Zerlegung von Quadraten und ????
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Prof. Dr. Günter Gerhardinger Soziale Arbeit mit Einzelnen und Familien Übersicht über die Lehrveranstaltung Grundlegende Bestimmungsfaktoren der Praxis.
20:00.
Im Zuge unserer Befragung gaben uns 260 Personen über ihr Leseverhalten Auskunft.
Die Geschichte von Rudi
„Küsse deine Freunde“ – FlexKom-App teilen
Zusatzfolien zu B-Bäumen
WIRTSCHAFTSLAGE NOCH SCHWIERIG
In der Schule.
Geschlecht der Befragten Alter der Befragten Warum gehst du in ein Einkaufszentrum ?
STUNDEN-ANZAHL PRO WOCHE
Wie arbeite ich sicher im Werkunterricht ??
Eine Einführung in die CD-ROM
Freundschaft für mich und dich. Freundschaft für mich und dich.
ARBEITSLOS.
ETS4 - Was ist neu? - Wie fange ich an? - Noch Fragen?
GBI Genios Wiso wiso bietet Ihnen das umfassendste Angebot deutsch- und englischsprachiger Literatur für die Wirtschafts- und Sozialwissenschaften. Wir.
Dokumentation der Umfrage
für Weihnachten oder als Tischdekoration für das ganze Jahr
1 Ein kurzer Sprung in die tiefe Vergangenheit der Erde.
Wir üben die Malsätzchen
Syntaxanalyse Bottom-Up und LR(0)
Der Ablauf eines Clear Rex Klärzyklus
PROCAM Score Alter (Jahre)
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Geometrische Aufgaben
Kennst du dich aus mit Nadelbäumen?
Das ist die Geschichte eines kleinen Jungen aus der Schweiz.
Symmetrische Blockchiffren DES – der Data Encryption Standard
Retuschen.ppt Die folgende Schau zeigt die Möglichkeiten, mit PhotoDraw Digitalbilder zu retuschieren. Vergleichen Sie jeweils zwei Bildpaare durch fleissiges.
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Folie Beispiel für eine Einzelauswertung der Gemeindedaten (fiktive Daten)
1 Arbeitsgemeinschaft Biologische Psychiatrie Verordnungsgewohnheiten von Psychopharmaka Statuserhebung 2005 W.Günther G.Laux T.Messer N.Müller M.Schmauss.
Imperfekt Wie sagt man das mit Imperfekt
Unternehmensbewertung Thomas Hering ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List of Figures Tabellenübersicht.
Forschungsprojekt Statistik 2013 „Jugend zählt“ – Folie 1 Statistik 2013 „Jugend zählt“: Daten zur Arbeit mit Kindern und Jugendlichen.
Es war einmal ein Haus
Folie Einzelauswertung der Gemeindedaten
Numbers Greetings and Good-byes All about Me Verbs and Pronouns
J-Team: Gymnasium Ulricianum Aurich und MTV Aurich Ein Projekt im Rahmen von UlricianumBewegt.de Euro haben wir schon…  8000 mal habt ihr bereits.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Sehen, Hören, Schmecken: wenn uns unsere Sinne täuschen
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
 Präsentation transkript:

Chatbots S. Tabor

Was sind Chatbots? Gleich ein Beispiel Chatbot „Stella“ Beschäftigt bei der „Stabi“ http://www.sub.uni-hamburg.de/ Lassen Sie sich Chat-Bots von Ihren Schülern vorstellen. Die kennen bestimmt einen.

Was ist Stabi?

Wo befindet sich die Stabi? Wenn man nichts sagt, reagiert sie drauf.

Wie viele Bücher hat die Stabi

Was noch? Ich bin tief beeindruckt

Können wir uns mal treffen?

Ciao Sehr realistisch. Sie hat das letzte Wort.

Worum geht‘s heute? Was sind Chatbots? Beispiele für Chatbots Informatorische Bedeutung und Anwendung im Unterricht Programmieren von Chatbots Was sind Chat-Bots? -> Ein Beispiel haben wir gesehen, aber wir wollen es uns etwas genauer ansehen. Und wir wollen weitere Beispiel anschauen. Unterricht: Sie sind für Schüler durchaus motivierend. Ich habe neulich mit meinen Schülern die ersten Programmierschritte geamcht. „Hallo Welt“. – „Hallo Judith“. Da hat dann eine Schülerin erzählt, sie hätte da ein Programm auf dem Computer... Die hat fast gar nicht mehr aufgehört. Ein anderer wollte das dann gleich programmieren. Steilvorlage für das Thema!

Definition, Geschichte, Anwendungen und Aufbau Was sind Chatbots? Definition, Geschichte, Anwendungen und Aufbau

Chatbots sind... Programme, mit denen Menschen in natürlicher Sprache kommunizieren können. engl. to chat = plaudern, plappern bot = [ro]bot Plauder-Roboter

Chatbots... gibt es schon lange gaben der KI-Forschung neue Impulse „Eliza“ von Joseph Weizenbaum, 1966 gaben der KI-Forschung neue Impulse sind aber jetzt erst im Kommen Auskunftssysteme Hilfesysteme Virtuelle Freunde Zeigten der KI-Forschung, was möglich ist, wohin der Trend geht. Hatten aber zunächst kaum praktische Bedeutung. Meine erste Berührung mit Eliza, Anfang der 80er. War aber ein Fake.

Eliza (in ihrer Psychiater-Rolle) >Die Männer sind alle gleich! ELIZA> IN WELCHER WEISE? >Mit irgendwas nerven sie immer! ELIZA> KÖNNEN SIE EIN BEISPIEL NENNEN? >Mein Freund sagt, ich bin oft deprimiert ELIZA>ES TUT MIR LEID ZU HÖREN, DASS SIE DEPRIMIERT SIND Übersetzung der damaligen Veröffentlichung von Weizenbaum „ELIZA – A computer Program for teh Study of Natural Language Communication between Man and Machine“ Weizenbaum ist Berliner, er hätte ELIZA auch in deutsch schreiben können. Die Analyse ist deutsch ist jedoch wegen der größeren Zahl möglicher Flexionen viel schwieriger. Auch der Satzbau (SPO) macht es auf englisch leichter.

Eliza... ...war eigentlich ein Missverständnis. Weizenbaum ging es nur um Sprachanalyse Elizas Antworten sollten lediglich das Gespräch am Laufen halten. Die auf ständigem Rückfragen aufbauende Rolle eines Psychiater sollte vertuschen, dass Eliza über kein Wissen verfügt. Um Menschen zu weiteren Eingaben zu bringen, die er analysieren konnte, baute er eine Antwortkomponente ein. Damit die Menschen nicht vorschnell den Dialog beenden, weil ihnen das System zu dumm vorkam, programmierte es Weizenbaum als Psychiater. (Es gab auch eine Doktor-Version)

Eliza Ist sehr einfältig War trotzdem sehr erfolgreich und wurde für bare Münze genommen Selbst als klar war, dass Eliza nur ein Programm ist, hielt man es für ein fähiges, automatisiertes Therapie-Mittel. Weizenbaum war darüber erschreckt und wurde nicht zuletzt deswegen zum Gesellschafts- und Technik-Kritiker. ELIZA arbeitet nach dem Prinzip, Aussagen des menschlichen Gesprächspartners in Fragen umzuformulieren und so eine Reaktion auf die Aussage zu simulieren. Außerdem ist es in der Lage, Schlüsselwörter (z.B. Vater) zu erkennen und darauf zu reagieren, z. B. Benutzer: „Ich habe ein Problem mit meinem Vater.“ ELIZA: „Erzählen Sie mir mehr über ihre Familie!“ Einfältig: Heute geht es mir nicht gut. Es tut mir leid zu hören, dass es Ihnen nicht gut geht. Ich bin traurig Warum sind Sie traurig? An meinem Auspuff ist die Mutter abgefallen. > Erzählen Sie mehr von ihrer Familie.

Von 1977 – Heute noch aktuell

Elizas Nachfahren Eigentlich auch ein Fall für den Psychiater: Was möchten Sie tun? Menschen, die sich mit einer Büroklammer unterhalten

Elizas Nachfahren Eigentlich auch ein Fall für den Psychiater: Menschen, die sich mit einer Büroklammer unterhalten

Elizas Nachfahren Eigentlich auch ein Fall für den Psychiater: Wann geht ein Zug nach Hannover? Meinten Sie Hanau? Nein, Hannover. Heute! Sie wollen nach Hanau Hauptbahnhof.

Elizas Nachfahren Diagnose-Tools, Experten-Systeme Hilfesysteme Auskunfts-Dienste E-Commerce Chatpartner Diagnose-Systeme Das Gespräch bei einem Arzt erinnert doch sehr an Eliza: Wie lange haben sie das schon? Treten die Beschwerden zusammen mit ... Auf Treten die Beschwerden zu einer bestimmten Tages- oder Uhrzeit auf Was haben sie gegessen Machen Sie Sport? Hatten sie das früher schon einmal? Gibt es so einen Fall in der Familie? E-Commerce Früher hätte man nicht gedacht, dass so etwas komplexes wie ein Auto oder eine Reise über das Internet verkaufbar ist. Wurde man anfangs als Benutzer noch dazu verdonnert, gewünschte Merkmale anzuklicken und sich durch Formular-Seiten zu wühlen, so gibt es inzwischen Systeme, die natürliche Sprache verstehen und z.T. sogar Dialoge führen können. (Wenngleich in einem eng begrenzten Themenfeld). CHATPARTNER: Im Freizeitbereich, aber auch als Therapie: Gesprächspartner für alte Leute.

JA WIE??? Wirkungsweise Wie ist ein Chatbot aufgebaut? Haben Sie Ideen über den Aufbau? Wir wollen noch nicht ins Detail gehen.

Wirkungsweise In der Praxis wird diese strikte Trennung oft aufgeweicht Benutzereingabe: natürlich-sprachige Eingabe über Tastatur oder Mikrofon Analyse: Bereinigen, Eliza entfernt z.B. alle Satzzeichen, Groß/Klein-Schreibung. Morphologie (Wortstämme), Kontextanaylse bei mehrdeutigen Wörtern Wissensbasis: (sehr unterschiedlich im Umfang, je nach Anwendung. Oft auch eine Wissens-Datenbank) - Was weiß ich zu den eingegebenen Begriffen? - Zeitgeschehen - lernfähig (Viele Systeme fragen: „War diese Antwort hilfreich“ und lernen daraus fürs nächste Mal). Ausgabe: Das auszugebende Wissen in Antwortsätze gießen. (Sprachliche Herausforderung). Konversationskomponente: Das Gespräch am laufen halten, auch wenn man Frage nicht verstanden hat oder man keine Antwort hat. (Loriot: „Ach, was“. „Was meinen Sie mit ...?“ „Erzählen Sie mir über ...“. „Merken Sie sich, was sie sagen wollten, hier kommt grad ein Update rein.“)

Ein Blick hinter die Kulissen Hauptschleife Elizas (in LISP) (defun eliza () "Respond to user input using pattern matching rules." (loop (print 'eliza>) (let* ((input (read-line-no-punct)) (response (use-eliza-rules input)))) (print response) (if (equal response '(good bye)) (RETURN))))) Kommentar Progr. ist Funktion Schleife (imperativ) input = bereinigte Eingabe Prompt-Ausgabe Ausgabe LISP ist eine funktionale Programmiersprache. Ein LISP-Programm besteht überlicherweise aus einer Folge von Funktionsdefinitionen. Der Ablauf besteht aus Aufruf der Funktionen (wechselseitig, rekursiv) response = Regeln angewandt auf input Antwortet Eliza „good bye“, wird das Programm verlassen.

Ein Blick hinter die Kulissen Regeln in Eliza (Genauer Match) (((I am sad) (I am sorry to hear you are depressed) (I'm sure its not pleasant to be sad)) Muster das gesucht wird Mögliche Antworten

Ein Blick hinter die Kulissen Regeln in Eliza (Teil-Match) ((* always *) (Can you think of a specific example) (When?) (What incident are you thinking of?) (Really-- always)) Bel. Text vor dem Muster Muster das gesucht wird Bel. Text nach dem Muster Mögliche Antworten >Männer nerven immer mit irgendwas! ELIZA> KÖNNEN SIE EIN BEISPIEL NENNEN?

Ein Blick hinter die Kulissen Regeln in Eliza (Teil-Match mit Kontext) (((?* ?x) are like (?* ?y)) (What resemblance do you see between ?x and ?y)) Muster Text vor Muster  x Text hinter Muster  y Antwort unter Verwendung des Kontext >Männer sind wie Frauen! ELIZA> WELCHE ÄHNLICHKEIT SEHEN SIE ZWISCHEN MÄNNER UND FRAUEN N

Programmierung Eliza ist in vielen Programmiersprachen geschrieben worden In spezialisierten Sprachen wie Lisp aber auch in universellen Sprachen wie BASIC, C, Delphi, Java,... Inzwischen gibt es mit AIML eine eigene Sprache für Chatbots, die wir uns nachher ansehen werden.

Beispiele für Chatbots Wir könnten jetzt weitermachen mit: Was hab ich davon, was hat das mit Schule zu tun. Oder Sie können jetzt erst mal mit Chatbots rumspielen und wir klären hinterher, was das ganze soll. Wenn Sie Lehrer wären, würde ich sagen, wir klären das gleich, aber heute sind sie ja Schüler, da dürfen Sie erstmal was spielen. Aber erwarten Sie nicht zu viel, mir ist kaum gelungen, einen erinnernswerten Chat mit einem Chatbot zu führen, wohingegen mir mancher reale Chat durchaus heute noch in Erinnerung ist.

Chatbots zum Ausprobieren (1) http://www.pandorabots.com/pandora/talk?botid=f5d922d97e345aa1 (A.L.I.C.E.) http://www.sub.uni-hamburg.de/ (Stabi-Stella) http://www.onlygame.de/eliza.php http://bs.cyty.com/menschen/e-etzold/archiv/science/rat.htm (Eliza-Applet) http://www.pandorabots.com/botmaster/en/~13a7bd4e49fbdcefd0059fd7~/mostactive (Weitere LINKS)

Chatbots zum Ausprobieren (2) http://www.jabberwacky.com/ (Jabberwacky, ein lernfähiges Konversationsprogramm) http://www.med-ai.com/models/sina.html.de http://www.med-ai.com/models/tom.html.de http://www.med-ai.com/models/eliza.html.de

Programmcode von Chatbots Eliza in Lisp (wie vorhin gezeigt) http://www.norvig.com/paip/eliza.lisp Eliza in Basic für den Atari http://www.atariarchives.org/bigcomputergames/showpage.php?page=22 Eliza-Wissensbasis für ein Php-Programm: http://www.techdose.com/tutorials/php/PHPLiza/knowledge.txt

Nachlesenswertes Weizenbaums Aufsatz über ELIZA http://i5.nyu.edu/~mm64/x52.9265/january1966.html Wikipedia zu ELIZA http://de.wikipedia.org/wiki/ELIZA Eliza antwortet (nicht) auf die Frage, ob Computer männlich oder weiblich sind. http://forum.de.selfhtml.org/archiv/2000/6/t15180/

Erfahrungsberichte Sprechen Sie mit mir! Ich habe kaum mal ein (Freizeit-)Chatbot gesehen, der überzeugend wirkt und mit dem es Spaß macht, sich längere Zeit zu unterhalten. Macht es da überhaupt Sinn, sich mit diesem Thema zu beschäftigen?

Informatorische Bedeutung & Anwendung im Unterricht

Lehrer-Wunsch-Bot für ICQ Krin wir die HÜ wieder? <sad>Nein. Hamse wenigstens schon reingesehen? <bedauernd> Nein. Wissen Sie was ich in der HÜ habe? <säuselnd>Nein, weiß ich leider nicht. Wann kann ich die HÜ nachschreiben? Moment, ich verbinde mit Hr. Tabor Wie manche von Ihnen bin ich für meine Schüler auch über ICQ erreichbar. Manchmal ist es sinnvoll, wenn man von den Schülern erfährt, dass morgen die 1. Stunde ausfällt oder sonst etwas. Manchmal wollen sie aber nur plaudern oder wissen, ob es eine HÜ zurückgibt oder ob man schon reingeschaut hat. Da wäre ein Chatbot wünschenswert. Erstes wäre er darauf trainiert, die Schülersprache zu verstehen. Und zweitens bliebe er auch bei der zehnten Frage noch höflich.

Bedeutung von Chatbots (1) Chatbots spielen bereits jetzt eine wichtige Rolle in der Kunden-Unternehmens-Kommunikation. Sie beantworten einfache Kundenanfragen und entlasten dadurch Call-Center Sie machen Waren für den Kunden intuitiver und komfortabler handelbar.

Bedeutung von Chatbots (2) Beispiel Coca-Cola-Chatbot Vorher 300 bis 600 Email-Anfragen pro Tag Kosten von 10$ pro Support-Email Monatliche Email-Support-Kosten von 150.000$ Ziele Reduktion der Anfragen Effizienteres Behandeln der Anfragen Ergebnis Die Zahl der Anfragen verzehnfachte sich Chatbot amortisierte sich bereits nach 2 Monaten

Bedeutung von Chatbots (3) Beispiel Business-to-Business-Plattform Auf der Website war ein Chatbot als natürlich sprachiger Verkaufsassistent mit Produktwissen im Einsatz. Der Anteil Besucher, die sich Produktdetails ansahen und dann auch bestellten, konnte von 3% auf 10% gesteigert werden. Gezielte Versuche schlüpfriger Gespräche den Chat ins Stottern zu bringen Net-tissimo.com (wurde aufgekauft und heißt heute anders)

Bedeutung von Chatbots (4) Beispiel natürlichsprachige Autosuche Bisher

Formular gesteuert

Bedeutung von Chatbots (4) Beispiel natürlichsprachige Autosuche Jetzt: Ich suche einen höchstens 3 Jahre alten Golf, kein Cabrio, blau oder grün, bis 50tkm, max. EUR 22.000, ESD, Leder, PLZ 65-66. Kam zur Anwendung bei faircar (fusionierte später mit Autoscout24 ) International Porsche Locator Streng genommen ist das kein Chatbot (es fehlt ein fortgesetzter Dialog), aber es verdeutlicht den Weg zu natürlichsprachigen Systemen. Beides waren Forschungsprojekte des DFKI. Die Projekte sind beendet, man hatte die Prototypen noch eine Weile verwendet, aber jetzt scheint die Nutzung ausgelaufen zu sein. Auch Net-tissimo.com gibt es nicht mehr. Aber auch trotz der berichteten Probleme sind chatbots schwer im kommen und haben deswegen auch eine Bedeutung für den Informatik-Unterricht.

Informatorische Bedeutung Chatbots spielen in Zukunft eine noch größere Rolle Verständnis der prinzipiellen Wirkungsweise ist aus informatorischer Sicht wünschenswert Qualität der Antworten wird einschätzbarer Gesellschaftliche Relevanz Einsatzgebiete und Anwendungs-häufigkeit werden zunehmen. Das Web wird weiter wachsen, Firmen werden sich noch mehr Email-Anfragen gegenüber sehen. Lehrplanaspekt Wirkungsweise von Informationssystemen Lehrplan Die Schüler kennen die Wirkprinzipien und können den Antworten kritischer gegenüber stehen. Ein aufklärerischer Beitrag zu Weizenbaums „Macht der Computer und Ohnmacht der Vernunft“. Mit steigender Verbreitung werden Chatbots zu Allgemeingut, die Informatik-Unterricht leistet dann auch einen allgemeinbildenden Eindruck. „Sag mal, wie funktioniert denn sowas eigentlich?“

Verbindungen zu Lehrplanthemen Information & Wissen und ihre Darstellung Datenbanken (Wissensbasis) Automaten (Chatbot als endlicher Automat und zustandsbasiertes Modell; Spracherkennung) Kommunikationssysteme Programmierung (Funktional, OOP, AIML) Software-Entwicklung (Software-Projekt) Programmierung: Funktional (Prolog, Lisp), Oder imperativ/objektorientiert Java, Delpi, php Oder in AIML, da behandelt man gleichzeitig Auszeichnungssprachen (und ist wieder bei Information und ihre Darstellung) Software-Projekt: Löbner-Preis (2000€) für den menschnähnlichsten Chatbot. Gar 10.000 € können Sie gewinnen, wenn Ihr Chatbot, den Turing-Test besteht. Was heißt das? => Ein Benutzer kann nicht mehr unterscheiden, ob er den Dialog mit einem Chatbot führt oder mit einem Menschen. Das steht ein bisschen in der Kritik, weil intelligentes Geplapper ja noch nicht unbedingt Intelligenz Bedeutet und weil das ganze ja auch stark von den Erwartungen des Benutzer abhängt. Turing-Test

Turing-Test bestanden Anfrage an Kabel-Deutschland: „Die Kanäle wurden neu belegt. Wo finde ich eine Sendertabelle?“ Antwort Kabel-Deutschland: „Danke für Ihre Nachfrage! Die Sendertabelle finden Sie unter: http://www.kabeldeutschland.de/senderuebersicht/“

Turing-Test nicht bestanden Anfrage an Kabel-Deutschland: „Ständig werden die Kanäle neu belegt. Die Sendertabelle stimmt nie!“ Antwort Kabel-Deutschland: „Danke für Ihre Nachfrage! Die Sendertabelle finden Sie unter: http://www.kabeldeutschland.de/senderuebersicht/“

Verwendung im Unterricht Programmierung eigener Chatbots (vorrangig) Analyse von Chatbots oder einzelner Komponenten Gesellschaftliche Aspekte (Referate, Lektüre) Bisher leider wenig Erfahrungen gesammelt  Die ansprechensten Zugang wird man sicherlich durch die Programmierung erfahren. Ich kann heute nur versuchen, Ihnen die Scheu vor diesem Thema zu nehmen, Se mit den grundlegensten Begriffen bekannt zu machen und Ihnen selber ermöglichen, einen Chatbot zu programmieren. Einzelne Komponenten: Zum Beispiel Spracherkenner, Akzeptoren.

Programmieren von Chatbots

Programmieren von Chatbots Programmiersprache AIML Leicht zu erlernen AIML-Interpreter und Programmier-umgebung pandorabots Online verfügbar, ohne Installation http://www.pandorabots.com Kostenlos, aber Registrierung erforderlich Enthält Muster-Chatbots Wir benötigen nur zwei Dinge: Eine einfache Programmiersprache, speziell für Chatbots, die uns den in anderen Programmiersprachen oft nötigen Ballast vom Halse hält. Keine Angst vor „Schon wieder eine neue Programmiersprache“. AIML ist leicht zu erlernen und Sie werden gleich selber schnell den ersten Mini-Chatbot in AIML schreiben können. Wir benötigen außerdemein System, das die AIML-Programm versteht. Hier verwenden wir ein System im Internet: Pandorabots. Es muss nicht installiert werden, es muss nichts heruntergeladen werden, es ist kostenlos. Man kann den CODE über eine Webseite eingeben und gleich ausprobieren. Das fertige Produkt kann man auch für andere veröffentlichen. Notwendig: Registrierung mit Benutzername und E-Mail. Allerdings wird nichts an die Email gescshickt, man hat sofortigen Zugang.

AIML Artificial Intelligence Markup Language auf XML basierende Auszeichnungssprache Auszeichnungssprachen (markup language) dienen der Beschreibung von Daten, Bekannte Auszeichnungsssprachen: html, xml Beispiel: <text>bla</text> <zahl>123</Zahl> <b>fett</b> <em>wichtig</em>

XML Extensible Markup Language („erweiterbare Auszeichnungssprache“) Bei uns erweitert um „Künstliche Intelligenz“ zu AI-ML. Wir brauchen nur zu wissen: Ein geöffneter tag (Markierung) muss auch wieder geschlossen werden Beispiel: <pattern>GUTEN TAG</pattern>

AIML-Grundstruktur Wird von pandorabots erzeugt <?xml version="1.0" encoding="UTF-8"?> <aiml version="1.0"> <!-- insert your AIML categories here --> </aiml> XML-Deklaration AIML-Beginn-Tag Kommentar Platz für unser AIML-Programm Diese Struktur wird von pandorabots automatisch erzeugt, müssen wir uns also nicht merken. Ich zeige sie hier nur, dass sie sich nachher nicht wundern, wenn in der leeren AIML-Datei schon was steht. AIML-Ende-Tag

Categories (Dialogpunkte) Mit dem category-Element lässt sich eine Dialogkomponente definieren Muster (pattern) auf das geprüft wird Category-Tag <category> <pattern>KENNST DU DONALD DUCK</pattern> <template>Klar, der Freund von Daisy Duck.</template> </category> Pattern-Tag Die Schreibweise wird nicht unterschieden, deswegen ist es üblich, alles GROSS zu schreiben. Satzzeichen werden in der Anfrage herausgefiltert. Ausgabemaske (template) falls Muster passt Template-Tag Category-End-Tag

Ausprobieren! Mit pandorabots http://www.pandorabots.com Ich mache es einmal vor, sie haben es in ihren Unterlagen beschrieben, dann machen Sie es nach.

Registrierung (1) Account holen Account holen

Mit der Email-Adresse meldet man sich später wieder an Registrierung (2) Mit der Email-Adresse meldet man sich später wieder an Evtl. deaktivieren Abschicken

Pandorabot erzeugen (1)

Pandorabot erzeugen (2) Einen Namen für den Chatbot angeben! Wir fangen leer an. (Leeren) Chatbot erzeugen

AIML hinzufügen (1) AIML aufrufen! Unser Chatbot.

AIML-Dateien hochladen AIML hinzufügen (2) AIML-Datei erzeugen! Hier könnte man AIML-Dateien hochladen

AIML-Code schreiben (1) Eingabefenster für AIML-code Füge hier einige Kategorien ein.

AIML-Code schreiben (2) <?xml version="1.0" encoding="UTF-8"?> <aiml version="1.0"> <!-- insert your AIML categories here --> <category> <pattern>KENNST DU DONALD DUCK</pattern> <template>Klar, der Freund von Daisy Duck.</template> </category> <pattern>MAGST DU DONALD DUCK</pattern> <template>Ich esse lieber Gänsebraten</template> </aiml> 1. Kategorie 2. Kategorie

Der AIML-Code wird als Datei gespeichert. Dateinamen angeben! AIML-Code speichern Der AIML-Code wird als Datei gespeichert. Dateinamen angeben!

Speichern hat geklappt. Ausprobieren (1) Speichern hat geklappt.

Den Chatbot etwas fragen Ausprobieren (2) Den Chatbot etwas fragen

Platz für die nächste Frage Ausprobieren (3) Platz für die nächste Frage Die Antwort

Ausprobieren (4) Gib etwas ein, zu dem kein Muster passt.

Der Chatbot muss passen Ausprobieren (5) Der Chatbot muss passen Legen Sie fest, was der Chatbot zukünftig bei dieser Frage antworten soll!

Aufgaben Geben Sie erneut die vorherige Frage ein. Wie lautet jetzt die Antwort? Klicken Sie im Menu auf AIML. Es werden zwei AIML-Dateien auf-gelistet. Untersuchen Sie die Datei „update.aiml“ Erweitern Sie Ihre Wissensbasis durch weitere Dialoge, in dem sie categories oder „Say-Instead“-Antworten hinzufügen. (Speichern nicht vergessen!) Es können zur Zeit nur genaue Pattern-Treffer behandelt werden. Auch können Teile der Frage noch nicht in der Ausgabe verwendet werden.

Weitere AIML-Konstrukte Zufallsantworten Wild-Cards

Zufallsantworten Antworten wirken „menschlicher“, wenn sie bei gleicher Fragestellung variieren. <category> <pattern>WER BIST DU</pattern> <template> <random> <li>Dagobert Duck</li> <li>Eine Ente</li> </random> </template> </category> Zufalls-Tag <random> Liste möglicher Ausgaben. Eine wird ausgewählt. Tag: <li>...</li> Schließendes </random>-Tag

Wildcards (1) Ein Wildcard ist ein Platzhalter für ein beliebiges Muster. <category> <pattern>ICH MAG *</pattern> <template><star></star> mag ich auch.</template> </category> Egal, was man mag... Ich mag es auch Ausgabe des Muster, für das der Platzhalter steht mittels <star></star>

Wildcards (2) Enger gefasste Muster werden einer Wildcard vorgezogen. <category> <pattern>ICH MAG *</pattern> <template><star></star> mag ich auch.</template> </category> <pattern>ICH MAG HUNDE</pattern> <template>Vor Hunden habe ich Angst</template> Alles außer... ... Hunde

Wildcards (3) Besonderheit am Patternanfang <category> Ein Wildcard am Musteranfang wird durch einen Unterstrich ausgedrückt, nicht durch einen Stern. Das Ansprechen im Template geschieht dagegen wieder mit <star></star> <category> <pattern>_ MAG ICH BESONDERS</pattern> <template><star></star> mag ich auch sehr gerne.</template> </category> Wildcard am Patternanfang Ausgabe des Wildcard-Inhalts

Aufgaben Beantworte die Fragen Programmiere mit Wildcards Wer bist Du? Wo wohnst du? jeweils mit Zufallsantworten Programmiere mit Wildcards Ich mag Katzen -> Katzen liebe ich! Ich mag ... -> ... mag ich auch -> ... lieb ich auch [Alternativantwort] ... mag ich besonders -> Ich hab ... auch sehr gern

Kontextabhängige Ausgaben Gab es vorher die Ausgabe „Hast Du einen Hund?“ und lautete die Antwort darauf „Ja“, dann frage jetzt nach dem Namen des Hundes. <category> <pattern>ICH MAG TIERE</pattern> <template>Hast Du einen Hund?</template> </category> <pattern>JA</pattern> <that>Hast Du einen Hund?</that> <template>Wie heißt Dein Hund?</template> Vorgeschichte Pattern „JA“ Für den Fall, dass „Hast Du einen Hund?“ ausgegeben wurde... ...frage nun nach dem Namen

Wie geht‘s weiter Variablen Bedingte Anweisungen ... speichern beispielsweise den Namen des Gesprächspartner Bedingte Anweisungen Ausgabe hängt vom Inhalt einer Variablen ab ...

Hier geht‘s weiter AIML Reference Manual http://www.alicebot.org/documentation/aiml-reference.html Entwicklung von AIML-Software http://www.alicebot.org/ AIML-Sprachbeschreibung http://alicebot.org/TR/2001/WD-aiml-1.0.1-20011018-005.html Wikipedia über Chatbots http://de.wikipedia.org/wiki/Chatbot