Wie macht das der Akinator

Das muss ich doch erwähnen. Über einen Artikel von Robert Hammerl bin ich auf den Akinator gestossen.

Der Akinator versucht durch Fragen, die man mit Ja/Nein (bzw. Zwischenstufen) beantwortet, den Namen einer Person herauszufinden, die man sich gedacht hat. Auf Roberts Blog finden sich schon etliche Kommentare mit vom Akinator erratenen Figuren bzw. mit seinen Fehlschlägen. Es ist faszinierend, wie er mit ein paar Fragen oft – auch die “abstrusten” – Personen errät.

Nachdem das nicht ganz mein Fachgebiet ist, würde mich natürlich interessieren, wie die Software geschrieben ist, die dahinter steckt. Vielleicht ist das ganze recht simpel? Oder doch ein komplexer Algorithmus?

3 Trackbacks

Trackback-URL für diesen Eintrag

www.wissenmachtnix.de am 27.01.2009 00:45
… zum Beispiel Namen von Personen erratenfragen, an die man gerade denkt. Zu finden ist der Spaß unter dem Namen Akinator. Der hat doch problemlos die kleine Liste von: Christian Ude Andrea Ypsilanti Benjamin Franklin Nur Karl Dall hat er be…
Wissenmachtnix am 27.01.2009 00:45
Am 26. Jänner 2009 (also vor über einem Jahr) schrieb ich den Artikel Wie macht das der Akinator. Und bis heute ist der Artikel gefragt… Der Akinator “errät” Personen an die man denkt, in dem er Fragen stellt, die man mit Ja, Nein, Viel
Nur ein Blog am 28.02.2010 10:50

15 Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Robert H.Wie die Software tatsächlich funktioniert kann ich nicht beantworten, aber die Art und Weise der Funktion ist ganz gut ersichtlich. Am Beginn stehen 1-2 allgemeine Fragen und dann dürfte der Akinator aufgrund der bisherigen Spiele und seinen Vorgaben eine Vermutung haben (sieht man auch an der Darstellung des Akinators). Diese versucht er dann durch weitere fragen zu verifizieren. Dieses Spielchen wird so lange wiederholt bis alle vermeintlich notwendigen Fragen richtig beantwortet werden, dann gibt der Akinator einen Tipp ab.

Gut war das z.B. bei der Band “Die Ärzte” zu erkennnen. Wir haben versucht die drei Bandmitglieder jeweils aus dem Akinator herauszukitzeln – und es hat funktioniert.

#1Robert H.Homepage • am 27.01.2009 14:02Antwort

TydeEigentlich ist (wie ich denke) das system ganz einfach:
Akinator hat eine riesige Daten mit Antworten für alle Fragen für jede Person. Per Ausschlussverfahren lässt sich dann immer Genauer bestimmen, wer gesucht ist.
Wenn zum Beispiel bei jeder Frage 50% der Datensätze ja und 50% der Datensätze nein sind und man 10 Fragen hat, so bleiben nur noch 0,098% der Datensätze übrig. Bei 10000 Datensätzen sind das also nur noch 9,8 Person. Nun kann man aber davon ausgehen, dass es nicht immer nur 50% Wahrscheinlichkeiten sind und der Computer immer die Fragen nimmt, wo er die höhsten Chancen hat, die mögliche Gruppe an Personen zu verkleinen. Dies macht diese hohe Zielgenauigkeit aus. Alles reine Mathematik.

#2Tyde am 03.08.2009 18:18Antwort

AndNur kann ich mir nicht vorstellen, dass jmd diese Datenbank füttert – und das noch mit personen, die nicht wirklich bekannt sind… z.b. ein zürcher party-löwe, carl hirschmann… oder ein fussballer in einem zürcher fussballclub, richi cabanas… alles gleich erkannt.
Das müssten ja milliarden von Daten sein!
Also wie gehts?

#2.1And am 27.01.2010 00:05Antwort

Robert LenderKeine weiß es genau. Aber anzunehmen ist: Der Akinator stellt Fragen und versucht daraus eine Auswahl bzw. eine richtige Lösung zu bieten. Schafft er das nicht, hast du die Möglichkeit einzutippen, wer denn die gesuchte Person gewesen ist.
So hat wohl jemand den Party-Löwen genannt. Akinator hat nun den Namen und auch deine vorherigen Antworten. Überall dort, wo du ja gesagt hast kann der Akinator nun diese Eigenschaften dem Party-Löwen zuordnen. Und schon hat er eine neue Persönlichkeit mit entsprechenden Eigenschaften für die nächsten Anfragenden parat.
Das Ganze ist natürlich ein wenig komplexer aber vom Prinzip her könnte es so funktionieren.
Auf alle Fälle ist eine gute Datenbank im Hintergrund, die wir alle mit unseren Antworten befüllen eine wichtige Grundlage für gute Antworten.

#2.1.1Robert LenderHomepage • am 27.01.2010 00:32Antwort

PinguinIch habe den Akinator heute zum ersten Mal erlebt, und denke das er Google abfragt, und ein Ausschlussverfahren anwendet. Das geht am schnellsten! ;-)

#3PinguinHomepage • am 31.01.2010 22:29Antwort

Robert LenderInteressanter Ansatz. Aber wie kommt der Akinator zu strukturierten Informationen.

Könnte der Akinator das, könnten die Betreiber doch glatt eine intelligente Suchoberfläche für Google anbieten. So könnte ich dort Fragen wie “Wann hat x Geburtstag” oder “Ist x Schauspielerin” absetzen und eine Antwort erhalten.

Aber wer weiß, was da noch alles kommt ;)

#3.1Robert LenderHomepage • am 31.01.2010 23:29Antwort

Paddyich denke mal der akinator wurde so programmiert, wie oben schon gesagt worden ist, nämlich in verbindung mit google. die 1te bis 5te frage wird erstmal geprüft, ob die person ein schauspieler oder musiker oder politiker ist. mal angenommen es is ein politiker dann kann man ja bei google einfach “politiker” eingeben aber es kommen zich millionen antworten von google also grenzt der akinator die auswahl ein “is die person über 25?” bei ja sucht er nur die politiker raus die ü 25 sind, es bleiben x politiker. wieder grenzt der akinator die auswahl ein “is sie weiblich?” und wieder 100 000 weniger. jetzt fängt der akinator die person genauer herraus zufinden, indem er fragen stellt “is sie schon tot?” oder “hat die person einen novell preis erhalten” manchmal treffen die fragen genau ins schwarze manchmal aber total daneben und der akinator googlet weiter^^
die datenbank muss nicht groß sein, da google die meiste arbeit erledigt .
schwierig für den akinator sind personen die entweder in einer größeren grp (musikband zb) sind … nehmen wir tokio hotel als beispiel: sind geschwister und fast im selben alter. der akinator wird einen von denen erraten aber vll den falschen, man kann danach zwar weiter raten lassen und der akinator wird mit sicherheit bei google einfach gucken wer noch in der band ist und dann einen nach dem anderen vorschlagen.

mfg paddy
ps: denkt einfach ma an tick trick und track ;) dann wirds schwer für ihn ^^

#4Paddy am 06.02.2010 20:11Antwort

anonymousich denke, das das so nicht klappen kann, denn das was du beschreibst klingt für mich verdächtig nach einer nahezu menschlichen KI. der akinator müsste dann ja sämtliche suchergebnisse analysieren, also mit deinem beispiel mit den politikern müsste er ja aus den ergebnissen sämtliche namen von politikern rausfiltern… das ist schwer zu meistern und wenn dem so wäre, dann wären ganz andere möglichkeiten offen, als “nur” der akinator…

ich denke auch, das es einfach eine datenbank ist, die sich ständig durch die eingaben der user vergrößert…

#4.1anonymous am 08.02.2010 17:47Antwort

HeaperWie auch immer das mit der Datenbank realisiert sein mag, ich möchte zu einem anderen kniff kommen, den die software drauf hat:
zum teil kommt der akinator mit zu wenig informationen aus und liegt trotzdem richtig. das liegt daran, dass verbindungen zwischen verschiedenen suchen hergestellt werden. zb: wenn ich nach pablo escobar suche, brauche ich dannach für zb george jung nur noch wenige fragen beantworten, weil die thematisch nun mal zusammenpassen.

viel spass beim ausprobieren :P

#5Heaper am 09.02.2010 00:18Antwort

Detlef WagnerIch wundere mich ein wenig, dass noch niemand auf die Idee gekommen ist, es könnte eine logische (also deklarative) Programmiersprache (PROLOG, SCHEME u.a.) dahinterstecken. Die zugehörige Wissensbasis (zumindest in Prolog wird der Quelltext so genannt) ist dann die erweiterbare Datenbank.
Die Verwendung von Google würde ich hier eher bezweifeln.

#6Detlef WagnerHomepage • am 11.02.2010 10:01Antwort

MrZweiflerIch denke auch, dass eine eigene Datenbank vorliegen muss. Es ist ja so, dass wenn man es in seltenen Fällen schafft, schlauer als er zu sein, sofort so eine Frage Seite kommt. Da kann man den Namen, passende Fragen etc. eintragen. Die User ergänzen also sein Wissen
lg MrZweifler

#7MrZweifler am 17.02.2010 11:13Antwort

Scorpion84Der Akinator hat so es ausschaut eine eigene Datenbank. Die sich durch die Benutzer erweitert Wenn er 3 mal falsch lag, fragt er nach dem namen. Ihr könnt den dann eingeben. Und wie es scheint speichert er die vorherigen Fragen dazu. Ich habe mal den Test gemacht und “Kapitän Stoppel” aus ALFRED J. KWAK angelegt da er ihn nie gefunden hatte. Nach dem ich ihn angelegt habe fand er ihn wieder nicht, da andere Fragen, bei erneuter Eingabe. Beim Wieder anlegen aber hatte ich Ihn in der Auswahl. Die Fragen werden dann erweitert. Habe das Spiel 4 mal gemacht dann hatte er ihn.

Sprich das Ding lernt von uns.
;)

#8Scorpion84 am 19.02.2010 16:23Antwort

ChristophIch hab jetzt nicht alle Antworten gelesen.

Aber ich bin mir zu 99% sicher das er nicht über Google geht. Wie auch? Dafür braucht man ein sehr gutes Textanalyse Tool.

Der Punkt ist die Schiere Masse an Daten die dahinter steht.
25 Millionen Spiele. Und täglich kommen mehrere 10 000 hinzu.
Und der Punkt ist wirklich das wenn er falsch rät das er dann die Möglichkeit gibt einen Character aufzunehmen.

Der Rest beruht auf Wahrscheinlichkeiten und einem sehr guten Algorythmus, und der Kern is schlicht die Masse an Daten. Und durch jeden Versuch eine Person sich auszudenken bei der der Akinator falsch liegt macht ihn besser.

Die Schwierigkeit liegt eher in dem Bereich woher kommen die Fragen. Aber ich denke hier ist die Antwort auch leicht. Ein guter Satz an Standardfragen für den Ausgangssatz.
Geschlecht, Alter, Tot, Beruf, Comicfigur…
Und bei Figuren die neu hinzukommen und oft falsch geraten werden manuelle Recherche und das einfügen einer neuen Frage die hilft ihn zu Kennzeichnen. Da gehe ich von Handarbeit aus.

Ich hab gestern an den Dönermann gedacht und er wurde nicht gefunden, stattdessen hat er mir den Pizzamann vorgeschlagen und als ich nicht zufrieden war den Taxifahrer mehrfach.
Es gab aber insgesamt schon 80 Versuche mit dem Dönermann.
Desto öfter versucht wird eine Figur zu finden, desto feiner sind die Informationen und desto schneller und besser findet er die Figur.

Alleine eine Tatsache spricht fürs manuelle Nacharbeiten. Die Bilder. Eine Automatische Verwendung von Google Bildern ist rein aus rechtlichen Gründen nicht möglich.

#9ChristophHomepage • am 25.02.2010 11:31Antwort

eniakinator ist ein expertensystem, siehe: http://de.wikipedia.org/wiki/Expertensystem . die firma, von der akinator stammt stellt sonst medizinal-expertensysteme her.

das ganze ist rein datenbankbasiert, und gar keine magie. mit mehreren constraints für jede mögliche antwort kann man sich das ganze relativ einfach nachprogrammieren-würde wohl sogar mit mysql gehen. das ganze scheint mit php programmiert zu sein, wobei das auch nur der wrapper zu einem c/java-programm sein kann. aber von der komplexität gut mit php möglich.

die datenmenge die er jedoch bereits hat ist beachtenswert. wobei auf wikipedia z.b. viel mehr steht, so schwer ist es für die anwendung nicht, an neue daten zu kommen.

#10eniHomepage • am 07.03.2010 04:20Antwort

Robert LenderDanke für den Hinweis auf den Wikipedia-Eintrag und deine inhaltliche Ergänzungen.

#10.1Robert LenderHomepage • am 07.03.2010 13:08Antwort

Kommentar schreiben


Pavatar/Gravatar/Favatar/MyBlogLog/Pavatar Autoren Bilder werden unterstützt.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Textile-Formatierung erlaubt
Ich blogge unter...
Webtermine

Webbezogene Veranstaltungen findest du unter webtermine.at

Kommentare
Mi, 17.03.2010 13:17
GeorgDanke, Robert!
Webnfoto.com BLOG zu Webdesign & Fotografie zu Photowalk Vienna Take 3 - Erster Rückblick
Mo, 15.03.2010 10:22
Webnfoto.com BLOG zu Webdesign & FotografieMit 53 Teilnehern war es der [...]
Mo, 15.03.2010 10:22
blog.webnfoto.com
So, 14.03.2010 19:57
haswezschon gespannt auf take 4!
tweetbackcheck