Reklāma
Iespējams, ka iepriekš esat dzirdējis terminu “Markova ķēde”, bet, ja vien jūs neesat vedis dažas nodarbības par varbūtības teoriju vai datorzinātņu algoritmi Kā iemācīties programmēšanu bez visa stresaVarbūt jūs esat nolēmis turpināt programmēšanu, vai nu karjeru, vai tikai hobiju. Lieliski! Bet varbūt jūs sākat justies satriekti. Ne tik lieliski. Šī ir palīdzība jūsu ceļojuma atvieglošanai. Lasīt vairāk , jūs droši vien nezināt, kādi viņi ir, kā viņi strādā un kāpēc viņi ir tik svarīgi.
Markova ķēdes jēdziens ir jēdziens “zem pārsega”, kas nozīmē, ka jums patiesībā nav jāzina, kas tie ir, lai no tiem gūtu labumu. Tomēr noteikti var gūt labumu no izpratnes par to, kā viņi darbojas. Tie ir vienkārši, taču noderīgi tik daudzos veidos.
Tātad šeit ir avārijas kurss - viss, kas jums jāzina par Markova ķēdēm, tiek apkopots vienā, sagremojamā rakstā. Ja vēlaties ienirt vēl dziļāk, izmēģiniet bezmaksas informācijas teorijas kurss Khan Academy (un apsveriet arī citas tiešsaistes kursu vietnes
8 labākās vietnes bezmaksas koledžas kursiem tiešsaistēVai vēlaties piekļūt bezmaksas koledžas līmeņa kursiem? Šeit ir dažas no labākajām vietnēm, kur apmeklēt bezmaksas tiešsaistes kursus. Lasīt vairāk ).Markova ķēdes 101
Pieņemsim, ka vēlaties prognozēt, kādi būs laika apstākļi rīt. Patiess pareģojums - tāda veida, ko veic eksperti meteorologi 7 labākās bezmaksas laikapstākļu lietotnes Android ierīcēmŠīs bezmaksas laika apstākļu lietotnes palīdzēs jums saglabāt laikapstākļus, izmantojot savu Android ierīci. Lasīt vairāk - būtu iesaistīti simtiem vai pat tūkstošiem dažādu mainīgo, kas pastāvīgi mainās. Laika apstākļu sistēmas ir neticami sarežģītas un neiespējami modelēt, vismaz tādiem nespeciālistiem kā tu un es. Bet mēs varam vienkāršot problēmu, izmantojot varbūtības aprēķinus.
Iedomājieties, ka jums bija piekļuve trīsdesmit gadu laikapstākļu datiem. Jūs sākat sākumā, atzīmējot, ka 1. diena bija saulaina. Jūs turpiniet, atzīmējot, ka arī 2. diena bija saulaina, bet 3. diena bija mākoņaina, tad 4. dienā bija lietains laiks, kas 5. dienā noveda pie negaisa, bet 6. dienā sekoja saulainas un skaidras debesis.
Ideālā gadījumā jūs būtu sīkāks un izvēlētos analīzi stundu pa stundām, nevis katru dienu, bet tas ir tikai piemērs, lai ilustrētu šo jēdzienu, tāpēc nāciet man līdzi!
Jūs to darāt visā 30 gadu datu kopā (kas būtu kautrīgi no 11 000 dienām) un, pamatojoties uz šodienas laikapstākļiem, aprēķināsit varbūtību, kādi būs rītdienas laika apstākļi. Piemēram, ja šodien ir saulains laiks, tad:
- 50 procentu iespēja, ka rīt atkal būs saulains laiks.
- 30 procentu iespēja, ka rīt būs mākoņains.
- 20 procentu iespēja, ka rīt būs lietains.
Tagad atkārtojiet to visiem iespējamiem laika apstākļiem. Ja šodien ir mākoņains, kādas ir iespējas, ka rīt būs saulains, lietains, miglains, pērkona negaiss, vēja vētra, viesuļvētra utt.? Pavisam drīz jums ir visa varbūtību sistēma, kuru varat izmantot, lai prognozētu ne tikai rītdienas, bet arī nākamās dienas laika apstākļus un nākamās dienas apstākļus.
Pārejas valstis
Tāda ir Markova ķēdes būtība. Jums ir atsevišķi stāvokļi (šajā gadījumā laika apstākļi), kur katrs stāvoklis var pāriet citā stāvokļi (piemēram, saulainas dienas var pāriet mākoņainās dienās), un šo pāreju pamatā ir varbūtības. Ja vēlaties paredzēt, kādi laika apstākļi varētu būt vienas nedēļas laikā, varat izpētīt dažādas iespējamības nākamo septiņu dienu laikā un redzēt, kuras no tām ir visticamākās. Tādējādi Markova “ķēde”.
Kas ir Markovs? Viņš bija krievu matemātiķis, kurš nāca klajā ar visu ideju, ka viena valsts tieši ved uz citu valsti, balstoties uz noteiktu varbūtību, kur pārejas iespēju neietekmē nekādi citi faktori. Pamatā viņš izgudroja Markova ķēdi, līdz ar to arī nosaukšanu.
Kā Markova ķēdes tiek izmantotas reālajā pasaulē
Neskatoties uz skaidrojumu, izpētīsim dažas reālās pasaules lietojumprogrammas, kur tās noder. Jūs varētu būt pārsteigts, ja atradīsit, ka visu šo laiku esat izmantojis Markova ķēdes, to nezinot!
Vārda ģenerēšana
Vai esat kādreiz piedalījies galda spēļu spēlēšanā, MMORPG spēlēšanā vai pat fantastikas rakstīšanā? Jūs, iespējams, esat satraukts par savu personāžu nosaukšanu (vismaz vienā vai otrā brīdī) - un, kad jūs vienkārši nevarējāt iedomāties kādu vārdu, kas jums patīk, jūs droši vien ķērās pie tiešsaistes vārdu ģeneratora Izveidojiet jaunu aizstājvārdu ar labākajiem tiešsaistes vārdu ģeneratoriem [Dīvaini un lieliski Web]Tavs vārds ir garlaicīgs. Par laimi, jūs varat doties tiešsaistē un izvēlēties jaunu aizstājvārdu, izmantojot vienu no neskaitāmajiem vārdu ģenerētājiem, kas pieejami Internetz. Lasīt vairāk .
Vai esat kādreiz domājuši, kā strādāja šie vārdu ģeneratori? Kā izrādās, daudzi no viņiem izmanto Markova ķēdes, padarot to par vienu no visbiežāk izmantotajiem risinājumiem. (Tur ir arī citi algoritmi, kas, protams, ir tikpat efektīvi!)
Viss, kas jums nepieciešams, ir vēstuļu kolekcija, kurā katram burtam ir potenciālo papildu vēstuļu saraksts ar varbūtībām. Tā, piemēram, burtam “M” ir 60 procentu iespēja novest pie burta “A” un 40 procentu iespēja novest pie burta “I”. Dariet to visai virknei citu burtu, pēc tam palaidiet algoritmu. Uzplaukums, jums ir vārds, kuram ir jēga! (Lielākoties, jebkurā gadījumā.)
Google PageRank
Viena no Markova ķēdes teorijas interesantām sekām ir tā, ka, palielinoties ķēdes garumam (t.i., stāvokļu pāreju skaitam palielinās), varbūtība, ka jūs nolaižaties noteiktā stāvoklī, saplūst ar fiksētu numuru, un šī varbūtība nav atkarīga no tā, kur jūs sākat sistēma.
Tas ir ārkārtīgi interesanti, ja domājat visu globālo tīmekli kā Markova sistēmu, kurā katra vietne ir stāvoklis un saites starp tīmekļa lapām ir pārejas ar varbūtībām. Šī teorēma būtībā to saka neatkarīgi no tā, kurā tīmekļa vietnē jūs sākat darboties, jūsu iespēja nokļūt noteiktā X lapā ir fiksēta varbūtība, pieņemot, ka sērfošana notiek “ilgu laiku”.
Un tas ir pamats tam, kā Google ranžē tīmekļa lapas. Patiešām, PageRank algoritms ir Markova ķēdes algoritma modificēta (lasīt: sarežģītāka) forma.
Jo augstāka ir “fiksēta varbūtība” nokļūt noteiktā tīmekļa vietnē, jo augstāka ir tā PageRank. Tas ir tāpēc, ka lielāka fiksēta varbūtība nozīmē, ka tīmekļa vietnē ir daudz ienākošo saišu no citas tīmekļa lapas - un Google pieņem, ka, ja tīmekļa vietnē ir daudz ienākošo saišu, tad tam tā arī jābūt vērtīgs. Jo vairāk ienākošo saišu, jo vērtīgāka tā ir.
Protams, tas ir daudz sarežģītāk, taču tam ir jēga. Kāpēc vietnei, piemēram, About.com, meklēšanas rezultātu lapās tiek piešķirta augstāka prioritāte? Jo izrādās, ka lietotāji tur mēdz ierasties, sērfojot internetā. Interesanti, vai ne?
Rakstīt vārdu pareģošana
Mobilajiem tālruņiem jau vairākus gadu desmitus ir paredzēta paredzamā mašīnrakstīšana, bet vai varat uzminēt, kā šie pareģojumi tiek veikti? Neatkarīgi no tā, vai izmantojat operētājsistēmu Android (alternatīvas tastatūras iespējas Kāda ir labākā alternatīvā tastatūra Android ierīcēm?Mēs apskatīsim dažus no labākajiem klaviatūras Play veikalā un pārbaudīsim tos. Lasīt vairāk ) vai iOS (alternatīvas tastatūras iespējas 10 labākās iPhone tastatūras lietotnes: izdomāti fonti, motīvi, GIF un daudz kas citsApnicis noklusējuma iPhone tastatūra? Šīs alternatīvās iPhone tastatūras lietotnes piedāvā GIF, motīvus, meklēšanu un daudz ko citu. Lasīt vairāk ), pastāv liela iespēja, ka jūsu izvēlētajā lietotnē tiek izmantotas Markova ķēdes.
Tāpēc tastatūras lietotnes jautā, vai viņi var apkopot datus par jūsu mašīnrakstīšanas paradumiem. Piemēram, Google tastatūrā ir iestatījums ar nosaukumu Kopīgot fragmentus kas lūdz “dalīties ar fragmentiem par to, ko un kā jūs rakstāt Google lietotnēs, lai uzlabotu Google tastatūru”. Būtībā jūsu vārdi tiek analizēti un iestrādāti lietotnes Markova ķēdes varbūtībās.
Tāpēc arī tastatūras lietotnēs bieži tiek piedāvātas trīs vai vairākas iespējas, parasti secībā no visiespējamākās uz mazāko varbūtību. Tas nevar droši zināt, ko jūs gribējāt rakstīt nākamo, bet tas ir pareizāk nekā parasti.
Subreddit simulācija
Ja jūs nekad neesat izmantojis Reddit, mēs iesakām jums vismaz apskatīt šo aizraujošo eksperimentu ar nosaukumu /r/SubredditSimulator.
Vienkārši sakot, Subreddit Simulator uzņem milzīgu daļu no visiem komentāriem un nosaukumiem, kas izteikti daudzās Reddit daudzās kopienās, un pēc tam analizē katra teikuma aprakstu pa vārdiem. Izmantojot šos datus, tas ģenerē varbūtības vārdiem-vārdiem - pēc tam izmanto šīs varbūtības, lai ģenerētu nosaukumus un komentārus no jauna.
Interesants šī eksperimenta slānis ir tas, ka komentārus un nosaukumus kategorizē kopiena, no kuras dati iegūti, tāpēc / r / food datu kopas radītie komentāru un virsrakstu veidi mežonīgi atšķiras no komentāriem un virsrakstiem, kurus ģenerē / r / soccer dati komplekts.
Un smieklīgākā - vai varbūt satraucošākā - daļa no tā visa ir tā, ka ģenerētie komentāri un nosaukumi bieži var neatšķirties no faktisko cilvēku komentāriem un nosaukumiem. Tas ir absolūti aizraujoši.
Vai jūs zināt kādu citu Markova ķēžu izmantojumu? Vai jums ir jautājumi, uz kuriem joprojām ir jāatbild? Paziņojiet mums komentārā zemāk!
Džoelam Lī ir B.S. datorzinātnēs un vairāk nekā sešu gadu profesionālajā rakstīšanas pieredzē. Viņš ir MakeUseOf galvenais redaktors.