def rank_question(self, question_set):
		data_vector, _ = self.preprocess_data(question_set)
		predicted_scores = regr.predict(self.model, data_vector)

		score_list = [(question_set[i], predicted_scores[i]) for i in range(len(question_set))]
		ranked_scores = sorted(score_list, key=lambda x: x[1], reverse=True)
		ranked_question = [question for question, score in ranked_scores]
		return ranked_question, ranked_scores
	def rank_choices(self, question, choices_list):
		choice_with_score = []
		for choice in choices_list:
			if choice.word != question.answer.word:
				choice_features = self.get_data_feature(question, choice)
				choice_vector = self.vectorize(choice_features)
				predicted_scores = regr.predict(self.model, choice_vector)
				choice_with_score.append((choice, predicted_scores[0]))

		ranked_choices = sorted(choice_with_score, key=lambda x: x[1], reverse=True)
		return [choice for choice, score in ranked_choices], ranked_choices