Kontext: Ich bin ein Programmierer mit etwas (halb vergessener) Erfahrung in der Statistik von Uni-Kursen. Kürzlich bin ich auf http://akinator.com gestoßen und habe einige Zeit damit verbracht, es zum Scheitern zu bringen. Und wer war das nicht? :)
Ich habe beschlossen, herauszufinden, wie es funktionieren könnte. Nachdem ich verwandte Blog-Beiträge gegoogelt und gelesen und einige meiner (begrenzten) Kenntnisse in die resultierende Mischung eingefügt habe, habe ich das folgende Modell (ich bin mir sicher, dass ich die falsche Schreibweise verwenden werde, bitte töte mich nicht dafür):
Es gibt Themen (S) und Fragen (Q). Ziel des Prädiktors ist es, das Subjekt S auszuwählen, bei dem die größte Wahrscheinlichkeit besteht, dass es das Subjekt ist, über das der Benutzer nachdenkt, angesichts der bisher gesammelten Fragen und Antworten.
Lassen Sie Spiel G eine Reihe von Fragen und Antworten sein: .
Dann sucht der Prädiktor nach .
Prior für Probanden ( ) kann nur die Anzahl der erratenen Probanden dividiert durch die Gesamtanzahl der Spiele sein.
Unter der Annahme, dass alle Antworten unabhängig sind, könnten wir die Wahrscheinlichkeit von Subjekt S bei gegebenem Spiel G wie folgt berechnen:
Wir könnten das berechnen , wenn wir nachverfolgen, welche Fragen und Antworten gegeben wurden, wenn die verwendeten zwar von gegebenem Thema:
Nun definiert eine Wahrscheinlichkeitsverteilung über Subjekte und wenn wir die nächste Frage auswählen müssen, müssen wir die auswählen, für die die erwartete Änderung der Entropie dieser Verteilung maximal ist:
Ich habe versucht, dies umzusetzen und es funktioniert. Mit zunehmender Anzahl von Probanden nimmt die Leistung jedoch offensichtlich ab, da das nach jeder Bewegung neu berechnet und die aktualisierte Verteilung P ( S | G ∨ { q j , a } ) für die Fragenauswahl berechnet werden muss .
Ich habe den Verdacht, dass ich einfach das falsche Modell gewählt habe, da ich an die Grenzen meines Wissens gebunden bin. Oder vielleicht liegt ein Fehler in der Mathematik vor. Bitte klären Sie mich auf: Womit sollte ich mich vertraut machen oder wie ich den Prädiktor so ändern kann, dass er Millionen von Themen und Tausende von Fragen bewältigen kann?