def loading_none_spliter_rule(self, feature_list, label_list, sen_list=None): rules = loading_data.load_spliter_rules() print "Loading rules." for rule in rules: if rule[0] == "#": continue if rule[0] == "r": rule = rule[1:] print "Add a soft regex: %s" % rule self.feature_model.add_none_spliter_regrex(rule) continue elif rule[0] == "h": rule = rule[1:] print "Add a hard rule regex: %s" % rule self.feature_model.add_none_spliter_regrex(rule, True) continue idx = 0 for c in rule: if Feature.is_spliter_candidate(c): feature, _ = self.feature_model.gen_feature_vector( rule, idx, is_forced=True) feature_list.append(feature) label_list.append(0) if sen_list != None: sen_list.append(rule) idx += 1
def loading_forcing_spliter_rule(self): rules = loading_data.load_spliter_rules(loading_data.raw_forcing_spliter_path) for rule in rules: if rule[0] == "#": continue elif rule[0] == "h": rule = rule[1:] print "Add a hard forcing rule regex: %s" % rule self.feature_model.add_forcing_splitter_regrex(rule)
def load_custom_hard_rule(self, path): rules = loading_data.load_spliter_rules(path) for rule in rules: if rule[0] == "#": continue elif rule[0] == "h": rule = rule[1:] print "Add a hard rule regex: %s" % rule self.feature_model.add_none_spliter_regrex(rule, True) continue