我想创建一个带有马尔可夫链的简单文本生成器。我不明白java'随机'使用例程和使用什么数据结构?
例如,假设我有一个例程来加载一个文档,然后一个markov例程来生成一个基于单独结构的文档。我如何修改/创建生成文档例程?
public class MarkovGenerator {
DataStructure wordFreqMapByPos = new DataStructure();
public void train(String doc) {
for (word : doc) {
// Add word to the pos,
// Build a word frequency map AT THE POSITION IN THE DOCUMENT
wordFreqMapByPos.put(thePos, wordsAtThisPos)
}
}
public void generateDocument() {
?????
for (pos : wordFreqMapByPos) {
// Generate a word
// Do I need to weight? generate a word based on how often
// the word occurs at this position?
// How?
}
}
}