CodingTrain / CodingTrain/Suggestion-Box
Markov Chain Monte Carlo Sampling
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 570
- Fork
- 85
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
[MCMC](https://en.wikipedia.org/wiki/Markov_chain_Monte_Carlo) is a collection of algorithms, that iteratively create a markov chain that approximates (or samples) an underlying distribution. Another way of thinking about it, is that it is an algorithm that randomly walks along the most representative portions of a distribution (as opposed to random sampling approaches). The interesting aspect of this is that the distribution can be ANYTHING. It can be an actual mathematical distribution or a geometric space or something more abstract such as a 'cognitive distribution' of what constitutes say a giraffe or a dog (see last example linked below).
There are many types of MCMC algorithms, but one of the simplest ones (Metropolis-Hastings) works by simply comparing the point probability of the current position with a new proposed position sampled from a distribution (usually gaussian) centered around the current position. Then it uses the ratio of the two probabilities to decide whether to stick with the old position or jump to the new position.
Some visualization examples:
- MCMC sampling a banana-shaped distribution: [link](https://chi-feng.github.io/mcmc-demo/app.html#RandomWalkMH,banana). You can check other distributions and also more advanced variations of MCMC that sample the space more efficiently.
- MCMC sampling the surface of a 3D cow: [link](https://www.youtube.com/watch?v=0MzH69hFdkE). This illustrates that you can use any distribution you want (in this case the perpendicular distance from the surface).
- MCMC sampling a b/w sketch to fill the canvas with Bezier curves: [link](https://www.reddit.com/r/creativecoding/comments/bvk0h8/bezier_curves_with_markov_chain_monte_carlo/). Another more educational example [link](https://www.youtube.com/watch?v=I4xoX7lJbL8)
- MCMC where people are actually used to decide what the next step should be, in order to sample the cognitive distribution of animal sketches: [link](https://papers.nips.cc/paper/3214-markov-chain-monte-carlo-with-people.pdf). Scroll to page 7 to see the results.
- A much more complex sequential MCMC algorithm to generate a 3D spaceship: [link](https://dritchie.github.io/web-procmod/).
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Non sono stati identificati file del repository, test o punti di ingresso; inizia chiarendo se si tratta di una proposta di argomento o di una richiesta di implementazione. Definisci l’ambito previsto di MCMC e i criteri di accettazione prima che il lavoro possa essere considerato completo.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- machine-learning
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 20/100