Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.rst

markov

markov is a very simple implementation of the Markov chain algorithm. It is useful for creating new data (especially text) from examples. For example, you could give it a book's text and ask it to write a completely new paragraph.

There are two ways to use this library:

predict(previous, length=1, prefix_size=2)

Given a list of items, predicts the next length items in the sequence. prefix_size is a parameter to the algorithm that roughly dictates how much of the original data should be used. A value of 0 will produce completely random values sampled from the original data, while a value of 2 or 3 may fool casual observers when generating text. The greater the prefix_size value, the more data you need to avoid repetition.

class Markov

The Markov class gives a more fine-grained control over the process. You initialize it with the desired prefix size (see above for a description of its function) and an optional data source. New data sources can be added by using the learn method.

The method chain(length=1, prefix=[]) generates a new chain of length items, based on the data already given, and starting from prefix.

You can access the inner statistical model using the attribute stats, which is in the format {prefix: {candidate: weight}}.

About

Markov chain library to create new data from examples

Resources

License

Releases

No releases published

Languages

You can’t perform that action at this time.