From ced165cff4f2468a51aa740a8a959070baba9734 Mon Sep 17 00:00:00 2001 From: "Brian S. Stephan" Date: Sat, 28 Jul 2012 13:32:58 -0500 Subject: [PATCH] Markov: debug logging --- modules/Markov.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/modules/Markov.py b/modules/Markov.py index ae04eb7..2c6e2bd 100644 --- a/modules/Markov.py +++ b/modules/Markov.py @@ -348,6 +348,8 @@ class Markov(Module): key_hits = self._retrieve_k2_for_value(target_word, context_id) if len(key_hits): working_backwards.append(target_word) + self.log.debug("added '{0:s}' to working_backwards".format(target_word)) + self.log.debug("working_backwards: {0:s}".format(" ".join(working_backwards))) # generate new word found_word = '' target_word = words[random.randint(0, len(words)-1)] @@ -366,24 +368,38 @@ class Markov(Module): found_word = random.choice(filter(lambda a: a != self.stop, key_hits)) if found_word == self.start2 or len(working_backwards) >= max_size + 2: + self.log.debug("done working backwards") gen_words = gen_words + working_backwards + self.log.debug("gen_words: {0:s}".format(" ".join(gen_words))) break else: working_backwards.insert(0, found_word) + self.log.debug("added '{0:s}' to working_backwards".format(found_word)) + self.log.debug("working_backwards: {0:s}".format(" ".join(working_backwards))) key_hits = self._retrieve_chains_for_key(gen_words[-2], gen_words[-1], context_id) # use the chain that includes the target word, if it is found if target_word != '' and target_word in key_hits: gen_words.append(target_word) + self.log.debug("added target word '{0:s}' to gen_words".format(target_word)) + self.log.debug("gen_words: {0:s}".format(" ".join(gen_words))) # generate new word target_word = words[random.randint(0, len(words)-1)] else: if len(gen_words) < min_size and len(filter(lambda a: a != self.stop, key_hits)) > 0: - gen_words.append(random.choice(filter(lambda a: a != self.stop, key_hits))) + found_word = random.choice(filter(lambda a: a != self.stop, key_hits)) + gen_words.append(found_word) + self.log.debug("added '{0:s}' to gen_words".format(found_word)) + self.log.debug("gen_words: {0:s}".format(" ".join(gen_words))) elif len(key_hits) <= 0: + self.log.debug("no hits found, appending stop") gen_words.append(self.stop) + self.log.debug("gen_words: {0:s}".format(" ".join(gen_words))) else: - gen_words.append(random.choice(key_hits)) + found_word = random.choice(key_hits) + gen_words.append(found_word) + self.log.debug("added '{0:s}' to gen_words".format(found_word)) + self.log.debug("gen_words: {0:s}".format(" ".join(gen_words))) # chop off the seed data at the start gen_words = gen_words[2:]