def _parse(self, raw_input_string, g): tokenized_string = g.generate_tokenized_string(raw_input_string) yesDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.yes_keywords, tokenized_string) noDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.no_keywords, tokenized_string) # check minDistance and fill out variables if yesDistanceSet and yesDistanceSet[1] <= self.minDistance: yesSet, yesDistance = yesDistanceSet yesToken, yesIndex = yesSet else: yesDistanceSet = None if noDistanceSet and noDistanceSet[1] <= self.minDistance: noSet, noDistance = noDistanceSet noToken, noIndex = noSet else: noDistanceSet = None # check conflicts and update frame if yesDistanceSet and noDistanceSet == None: self.frame['decision'] = { 'id': yesIndex, 'word': yesToken, 'decision': True, } elif noDistanceSet and yesDistanceSet == None: self.frame['decision'] = { 'id': noIndex, 'word': noToken, 'decision': False, } else: # conflict self.frame['decision'] = None
def _parse(self, raw_input_string, g): tokenized_string = g.generate_tokenized_string(raw_input_string) yesDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.yes_keywords, tokenized_string) noDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.no_keywords, tokenized_string) # check minDistance and fill out variables if yesDistanceSet and yesDistanceSet[1] <= self.minDistance: yesSet, yesDistance = yesDistanceSet yesToken, yesIndex = yesSet else: yesDistanceSet = None if noDistanceSet and noDistanceSet[1] <= self.minDistance: noSet, noDistance = noDistanceSet noToken, noIndex = noSet else: noDistanceSet = None # check conflicts and update frame if yesDistanceSet and noDistanceSet == None: self.frame['decision'] = {'id': yesIndex, 'word': yesToken, 'decision': True, } elif noDistanceSet and yesDistanceSet == None: self.frame['decision'] = {'id': noIndex, 'word': noToken, 'decision': False, } else: # conflict self.frame['decision'] = None
def confidence(raw_input_string, g): tokenized_string = g.generate_tokenized_string(raw_input_string) yesDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.yes_keywords, tokenized_string) noDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.no_keywords, tokenized_string) # check minDistance if yesDistanceSet and yesDistanceSet[1] <= YesNoMessage.minDistance: return 1.0 else: yesDistanceSet = None if noDistanceSet and noDistanceSet[1] <= YesNoMessage.minDistance: return 1.0 else: noDistanceSet = None if yesDistanceSet == None and noDistanceSet == None: return 0.0
def confidence(raw_input_string): tokenizer = nltk.WordPunctTokenizer() tokenized_string = tokenizer.tokenize(raw_input_string) yesDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.yes_keywords, tokenized_string) noDistanceSet = utils.min_synset_distance_in_sentence( YesNoMessage.no_keywords, tokenized_string) # check minDistance if yesDistanceSet and yesDistanceSet[1] <= YesNoMessage.minDistance: return 1.0 else: yesDistanceSet = None if noDistanceSet and noDistanceSet[1] <= YesNoMessage.minDistance: return 1.0 else: noDistanceSet = None if yesDistanceSet == None and noDistanceSet == None: return 0.0