Werbung

Sie haben vielleicht schon einmal den Begriff "Markov-Kette" gehört, aber es sei denn, Sie haben ein paar Kurse zur Wahrscheinlichkeitstheorie oder Informatik-Algorithmen So lernen Sie das Programmieren ohne StressVielleicht haben Sie sich für das Programmieren entschieden, sei es für eine Karriere oder nur als Hobby. Groß! Aber vielleicht fängst du an, dich überfordert zu fühlen. Nicht so toll. Hier ist Hilfe, um Ihre Reise zu erleichtern. Weiterlesen Sie wissen wahrscheinlich nicht, was sie sind, wie sie funktionieren und warum sie so wichtig sind.

Der Begriff einer Markov-Kette ist ein "unter der Haube" -Konzept, dh Sie müssen nicht wirklich wissen, was sie sind, um von ihnen zu profitieren. Sie können jedoch sicherlich davon profitieren, wenn Sie verstehen, wie sie funktionieren. Sie sind einfach und in vielerlei Hinsicht nützlich.

Hier ist also ein Crashkurs - alles, was Sie über Markov-Ketten wissen müssen, ist zu einem einzigen, verdaulichen Artikel zusammengefasst. Wenn Sie noch tiefer eintauchen möchten, probieren Sie das

instagram viewer
kostenloser informationstheoretischer kurs auf der Khan Academy (und berücksichtigen Sie auch andere Online-Kursseiten Die 8 besten Websites für kostenlose Online-College-KurseInteressiert an kostenlosen Kursen auf College-Ebene? Hier sind einige der besten Websites für kostenlose Online-Kurse. Weiterlesen ).

Markov-Ketten 101

Angenommen, Sie möchten vorhersagen, wie das Wetter morgen sein wird. Eine wahre Vorhersage - die Art von erfahrenen Meteorologen durchgeführt Die 7 besten kostenlosen Wetter-Apps für AndroidMit diesen kostenlosen Wetter-Apps bleiben Sie mit Ihrem Android-Gerät immer auf dem Laufenden. Weiterlesen - würde Hunderte oder sogar Tausende verschiedener Variablen umfassen, die sich ständig ändern. Wettersysteme sind unglaublich komplex und unmöglich zu modellieren, zumindest für Laien wie Sie und mich. Wir können das Problem jedoch durch Verwendung von Wahrscheinlichkeitsschätzungen vereinfachen.

Stellen Sie sich vor, Sie hätten Zugriff auf 30 Jahre Wetterdaten. Sie beginnen am Anfang und stellen fest, dass Tag 1 sonnig war. Sie fahren fort und stellen fest, dass Tag 2 auch sonnig war, aber Tag 3 bewölkt war, dann war Tag 4 regnerisch, was an Tag 5 zu einem Gewitter führte, gefolgt von sonnigem und klarem Himmel an Tag 6.

Im Idealfall sind Sie detaillierter und entscheiden sich für eine stundenweise Analyse anstelle einer täglichen Analyse. Dies ist jedoch nur ein Beispiel zur Veranschaulichung des Konzepts.

Sie tun dies über den gesamten 30-Jahres-Datensatz (der knapp 11.000 Tage betragen würde) und berechnen die Wahrscheinlichkeiten für das Wetter von morgen basierend auf dem Wetter von heute. Wenn heute beispielsweise sonnig ist, dann:

  • Eine 50-prozentige Chance, dass es morgen wieder sonnig wird.
  • Eine 30-prozentige Chance, dass es morgen bewölkt sein wird.
  • Eine 20-prozentige Chance, dass es morgen regnet.

Wiederholen Sie dies nun für jede mögliche Wetterbedingung. Wenn heute bewölkt ist, wie hoch ist die Wahrscheinlichkeit, dass es morgen sonnig, regnerisch, neblig, Gewitter, Hagelstürme, Tornados usw. gibt? Ziemlich bald haben Sie ein ganzes System von Wahrscheinlichkeiten, mit denen Sie nicht nur das Wetter von morgen, sondern auch das Wetter des nächsten Tages und des nächsten Tages vorhersagen können.

Übergangsstaaten

Dies ist die Essenz einer Markov-Kette. Sie haben einzelne Zustände (in diesem Fall Wetterbedingungen), in denen jeder Zustand in einen anderen übergehen kann Zustände (z. B. sonnige Tage können in bewölkte Tage übergehen) und diese Übergänge basieren auf Wahrscheinlichkeiten. Wenn Sie vorhersagen möchten, wie das Wetter in einer Woche aussehen könnte, können Sie die verschiedenen Wahrscheinlichkeiten in den nächsten sieben Tagen untersuchen und herausfinden, welche am wahrscheinlichsten sind. Also eine Markov "Kette".

Wer ist Markov? Er war ein russischer Mathematiker, der auf die Idee kam, dass ein Staat mit einer bestimmten Wahrscheinlichkeit direkt in einen anderen Staat führt, wobei keine anderen Faktoren die Übergangschance beeinflussen. Grundsätzlich erfand er die Markov-Kette, daher die Benennung.

Wie Markov-Ketten in der realen Welt verwendet werden

Lassen Sie uns anhand der Erklärung einige der realen Anwendungen untersuchen, in denen sie nützlich sind. Es könnte Sie überraschen, dass Sie die ganze Zeit über Markov-Ketten verwendet haben, ohne es zu wissen!

Namensgenerierung

Haben Sie jemals an Tabletop-Spielen, MMORPG-Spielen oder sogar am Schreiben von Belletristik teilgenommen? Möglicherweise haben Sie sich über die Benennung Ihrer Charaktere gequält (zumindest an dem einen oder anderen Punkt) - und wenn Sie sich anscheinend keinen Namen vorstellen können, den Sie mögen, haben Sie es wahrscheinlich griff auf einen Online-Namensgenerator zurück Erstellen Sie einen neuen Alias ​​mit den besten Online-Namensgeneratoren [Weird & Wonderful Web]Dein Name ist langweilig. Zum Glück können Sie online einen neuen Alias ​​auswählen, indem Sie einen der unzähligen Namensgeneratoren verwenden, die im Internetz verfügbar sind. Weiterlesen .

Haben Sie sich jemals gefragt, wie diese Namensgeneratoren funktionieren? Wie sich herausstellt, verwenden viele von ihnen Markov-Ketten, was sie zu einer der am häufigsten verwendeten Lösungen macht. (Es gibt andere Algorithmen, die natürlich genauso effektiv sind!)

Alles, was Sie brauchen, ist eine Sammlung von Briefen, in denen jeder Brief eine Liste potenzieller Folgebriefe mit Wahrscheinlichkeiten enthält. So hat beispielsweise der Buchstabe "M" eine 60-prozentige Chance, zum Buchstaben "A" zu führen, und eine 40-prozentige Chance, zum Buchstaben "I" zu führen. Tun Sie dies für eine ganze Reihe anderer Buchstaben und führen Sie dann den Algorithmus aus. Boom, du hast einen Namen, der Sinn macht! (Jedenfalls die meiste Zeit.)

Google PageRank

Eine der interessanten Implikationen der Markov-Kettentheorie ist, dass mit zunehmender Länge der Kette (d. H. Der Anzahl von Zustandsübergängen) erhöht), die Wahrscheinlichkeit, dass Sie in einem bestimmten Zustand landen, konvergiert auf einer festen Zahl, und diese Wahrscheinlichkeit ist unabhängig davon, wo Sie beginnen das System.

Dies ist äußerst interessant, wenn Sie sich das gesamte World Wide Web als ein Markov-System vorstellen, bei dem jede Webseite ein Status ist und die Verknüpfungen zwischen Webseiten Übergänge mit Wahrscheinlichkeiten sind. Dieser Satz sagt das im Grunde Unabhängig davon, auf welcher Webseite Sie beginnen, ist Ihre Chance, auf einer bestimmten Webseite X zu landen, eine feste Wahrscheinlichkeit, vorausgesetzt, Sie surfen „lange“.

markov-chain-example-google-pagerank
Bildnachweis: 345Kai via Wikimedia

Auf dieser Grundlage ordnet Google Webseiten. In der Tat ist der PageRank-Algorithmus eine modifizierte (sprich: fortgeschrittenere) Form des Markov-Kettenalgorithmus.

Je höher die „feste Wahrscheinlichkeit“ ist, auf eine bestimmte Webseite zu gelangen, desto höher ist ihr PageRank. Dies liegt daran, dass eine höhere feste Wahrscheinlichkeit impliziert, dass die Webseite viele eingehende Links von enthält andere Webseiten - und Google geht davon aus, dass eine Webseite mit vielen eingehenden Links vorhanden sein muss wertvoll. Je mehr eingehende Links, desto wertvoller ist es.

Es ist natürlich komplizierter, aber es macht Sinn. Warum erhält eine Website wie About.com auf Suchergebnisseiten eine höhere Priorität? Weil sich herausstellt, dass Benutzer beim Surfen im Internet eher dort ankommen. Interessant, nicht wahr?

Eingabe der Wortvorhersage

Mobiltelefone haben seit Jahrzehnten vorausschauendes Tippen, aber können Sie sich vorstellen, wie diese Vorhersagen getroffen werden? Ob Sie Android verwenden (alternative Tastaturoptionen Was ist die beste alternative Tastatur für Android?Wir werfen einen Blick auf einige der besten Tastaturen im Play Store und stellen sie auf die Probe. Weiterlesen ) oder iOS (alternative Tastaturoptionen Die 10 besten iPhone-Tastatur-Apps: Ausgefallene Schriftarten, Designs, GIFs und mehrKeine Lust mehr auf die Standard-iPhone-Tastatur? Diese alternativen iPhone-Tastatur-Apps bieten GIFs, Themen, Suche und mehr. Weiterlesen ) besteht eine gute Chance, dass Ihre App Ihrer Wahl Markov-Ketten verwendet.

Aus diesem Grund fragen Tastatur-Apps, ob sie Daten zu Ihren Schreibgewohnheiten sammeln können. In Google Keyboard gibt es beispielsweise eine Einstellung namens Snippets teilen Hier werden Sie aufgefordert, "Ausschnitte darüber zu teilen, was und wie Sie in Google Apps eingeben, um die Google-Tastatur zu verbessern". Im Wesentlichen werden Ihre Wörter analysiert und in die Markov-Kettenwahrscheinlichkeiten der App einbezogen.

Aus diesem Grund bieten Tastatur-Apps häufig drei oder mehr Optionen, normalerweise in der Reihenfolge der wahrscheinlichsten bis der unwahrscheinlichsten. Es kann nicht sicher wissen, was Sie als Nächstes eingeben wollten, aber es ist meistens richtig.

Subreddit-Simulation

Wenn Sie Reddit noch nie verwendet haben, empfehlen wir Ihnen, sich zumindest dieses faszinierende Experiment mit dem Namen "Reddit" anzusehen /r/SubredditSimulator.

Einfach ausgedrückt, Subreddit Simulator nimmt einen großen Teil ALLER Kommentare und Titel auf, die in den zahlreichen Communitys von Reddit abgegeben wurden, und analysiert dann die wortweise Zusammensetzung jedes Satzes. Mithilfe dieser Daten werden Wort-zu-Wort-Wahrscheinlichkeiten generiert. Anschließend werden diese Wahrscheinlichkeiten verwendet, um Titel und Kommentare von Grund auf neu zu generieren.

Markov-Chain-Beispiel-Subreddit-Simulator

Eine interessante Ebene für dieses Experiment ist, dass Kommentare und Titel von der Community, aus der die Daten stammen, kategorisiert werden Arten von Kommentaren und Titeln, die aus dem Datensatz von / r / food generiert werden, unterscheiden sich stark von den Kommentaren und Titeln, die aus den Daten von / r / soccer generiert werden einstellen.

Und der lustigste - oder vielleicht beunruhigendste - Teil von alledem ist, dass die generierten Kommentare und Titel häufig nicht von denen zu unterscheiden sind, die von tatsächlichen Personen gemacht wurden. Es ist absolut faszinierend.

Kennen Sie andere coole Anwendungen für Markov-Ketten? Haben Sie Fragen, die noch beantwortet werden müssen? Lass es uns unten in einem Kommentar wissen!

Joel Lee hat einen B.S. in Informatik und über sechs Jahre Berufserfahrung im Schreiben. Er ist Chefredakteur von MakeUseOf.