def write_features(self): output_file = open(self.feature_file_path, 'w') output_file_np_visualization = open("../../np_visual.txt", 'w') self.question_prop = entity_properties() for i in range(self.data_start_index, self.data_end_index): if i == 17 or i == 30 or i == 33 or i == 70 or i == 104 or i == 106 or i == 132: continue self.read_data(i) for np1 in self.question_prop.question_strings_np: output_file_np_visualization.write(np1 + '\n') class_finder_obj = class_finder('np_relevant', self.question_prop) output_line = class_finder_obj.list_features_toString(np1, np1) output_file.write(output_line) output_file.write(" ") start_index = 0 basic_features = basic_faeture_finder(self.question_prop) output_line, start_index = basic_features.list_features_toString( start_index, np1) output_file.write(output_line) output_file.write(' ') useful_np_features = useful_np_feature_finder( self.question_prop) output_line, start_index = useful_np_features.list_features_toString( start_index, np1) output_file.write(output_line) output_file.write('\n') self.question_prop.flush()
def write_features(self): output_file = open(self.feature_file_path, 'w') print "hhhhilkjadlksjdaops;jd;alsdj;lajsdo;asd;akls;ldkasd" self.question_prop = entity_properties() for i in range(self.data_start_index, self.data_end_index): print "i is:" print i if i == 17 or i == 30 or i == 33 or i == 70: continue self.read_data(i) for np1 in self.question_prop.question_strings_np: for np2 in self.question_prop.question_strings_np: if np1 == np2: continue start_index = 0 class_finder_obj = class_finder('joint', self.question_prop) output_line = class_finder_obj.list_features_toString( np1, np2) output_file.write(output_line) output_file.write(" ") basic_features = basic_faeture_finder(self.question_prop) output_line, start_index = basic_features.list_features_toString( start_index, np1) output_file.write(output_line) output_file.write(' ') output_line, start_index = basic_features.list_features_toString( start_index, np2) output_file.write(output_line) if self.included_disjoint_selection == True: output_file.write(' ') disjoint_features = disjoint_feature_finder( self.question_prop) output_line, start_index = disjoint_features.list_features_toString( start_index, np1, np2) output_file.write(output_line) if self.included_subset_selection == True: output_file.write(' ') subset_faetures = subset_faeture_finder( self.question_prop) output_line, start_index = subset_faetures.list_features_toString( start_index, np1, np2) output_file.write(output_line) output_file.write('\n') self.question_prop.flush()
def write_features(self): output_file = open(self.feature_file_path, 'w') self.question_prop = entity_properties() self.question_prop.find_word_list(self.file_path_refrence.synonym_list_path, self.file_path_refrence.num_of_dimentions) for i in range(self.data_start_index, self.data_end_index): print "i is:" print i if i in self.file_path_refrence.problematic_indexes: continue self.read_data(i) for np1 in self.question_prop.question_strings_np: if np1 in self.question_prop.pronoun_list or len(np1.split(' ')) >= 6: continue for np2 in self.question_prop.question_strings_np: if np2 in self.question_prop.pronoun_list or len(np2.split(' ')) >= 6: continue if np1 == np2: continue if np1.endswith(np2): if math_modifiers.is_word_number(np1[:np1.index(np2)-1]): continue if np2.endswith(np1): if math_modifiers.is_word_number(np2[:np2.index(np1)-1]): continue start_index = 0 class_finder_obj = class_finder('str_disjoint', self.question_prop) output_line = class_finder_obj.check_for_label(np1, np2) output_file.write(output_line) feature_list = [] basic_features = basic_faeture_finder(self.question_prop) feature_list = basic_features.appropriate_feature_finder_list(feature_list, np1) feature_list = basic_features.appropriate_feature_finder_list(feature_list, np2) useful_np_features = useful_np_feature_finder(self.question_prop) feature_list = useful_np_features.appropriate_feature_finder_list(feature_list, np1, np2) disjoint_features = disjoint_feature_finder(self.question_prop) feature_list = disjoint_features.appropriate_feature_finder_list(feature_list, np1, np2) for i in range(0, len(feature_list)): output_file.write(' ' + str(i) + ':' + str(feature_list[i])) output_file.write('\n') self.question_prop.flush()
def write_features(self): output_file = open(self.feature_file_path, 'w') if self.entity_type_mode == 0: output_file_np_visualization = open( self.file_path_refrence.np_visualization_file_type, 'w') else: output_file_np_visualization = open( self.file_path_refrence.np_visualization_file_entity, 'w') self.question_prop = entity_properties() for i in range(self.data_start_index, self.data_end_index): if i in self.file_path_refrence.problematic_indexes: continue self.read_data(i) # print self.question_prop.whole_question # print self.question_prop.relevant_noun_phrases for np1 in self.question_prop.question_strings_np: if np1 in self.question_prop.pronoun_list or len( np1.split(' ')) >= 6: continue if (len(np1.split(' ')) == 1) and ( self.question_prop.find_unit_type(np1) != '000'): continue output_file_np_visualization.write(np1 + '\t' + str(i) + '\n') class_finder_obj = class_finder('np_relevant', self.question_prop) output_line = class_finder_obj.check_for_label(np1, np1) output_file.write(output_line) feature_list = [] basic_features = basic_faeture_finder(self.question_prop) feature_list = basic_features.appropriate_feature_finder_list( feature_list, np1) # useful_np_features = useful_np_feature_finder(self.question_prop) # feature_list = useful_np_features.appropriate_feature_finder_list(feature_list, np1) for i in range(0, len(feature_list)): output_file.write(' ' + str(i) + ':' + str(feature_list[i])) output_file.write('\n') self.question_prop.flush()
def write_features(self): output_file = open(self.feature_file_path, 'w') self.question_prop = entity_properties() for i in range(self.data_start_index, self.data_end_index): print "i is:" print i if i == 17 or i == 30 or i == 33 or i == 70: continue self.read_data(i) for pair in self.question_prop.relevant_pairs: for str_sample in self.non_relevant_string: if pair.startswith(str_sample): continue parts = pair.split('\t') np1 = parts[0] np2 = parts[1] if np1.endswith(np2): if math_modifiers.is_word_number(np1[:np1.index(np2)-1]): continue if np2.endswith(np1): if math_modifiers.is_word_number(np2[:np2.index(np1)-1]): continue # writing features starts from here # first:: checking for the label class_finder_obj = class_finder('eq_noRel', self.question_prop) output_line = class_finder_obj.check_for_label(np1, np2) output_file.write(output_line) feature_list = [] basic_features = basic_faeture_finder(self.question_prop) feature_list = basic_features.appropriate_feature_finder_list(feature_list, np1) feature_list = basic_features.appropriate_feature_finder_list(feature_list, np2) eq_features = equivalence_feature_finder(self.question_prop) feature_list = eq_features.appropriate_feature_finder_list(feature_list, np1, np2) for i in range(0, len(feature_list)): output_file.write(' ' + str(i) + ':' + str(feature_list[i])) output_file.write('\n') self.question_prop.flush()
def write_features(self): output_file = open(self.feature_file_path, 'w') self.question_prop = entity_properties() for i in range(self.data_start_index, self.data_end_index): if i == 17 or i == 30 or i == 33 or i == 70: continue self.read_data(i) for np1 in self.question_prop.question_strings_np: start_index = 0 basic_features = basic_faeture_finder(self.question_prop) output_line, start_index = basic_features.list_features_toString( start_index, np1) output_file.write(output_line) # print output_line if self.included_disjoint_selection == True: output_file.write(' ') disjoin_features = disjoint_feature_finder( self.question_prop) output_line, start_index = disjoin_features.list_features_toString( start_index, np1) output_file.write(output_line) if self.included_subset_selection == True: output_file.write(' ') subset_faetures = subset_faeture_finder(self.question_prop) output_line, start_index = subset_faetures.list_features_toString( start_index, np1) output_file.write(output_line) if self.include_useful_np_selection == True: output_file.write(' ') useful_np_features = useful_np_feature_finder( self.question_prop) output_line, start_index = useful_np_features.list_features_toString( start_index, np1) output_file.write(output_line) output_file.write('\n') self.question_prop.flush()