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()
示例#4
0
    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()
示例#5
0
	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()
示例#6
0
    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()