def eval_conditional_probability(x, parameters, exercise_ind): """Evaluate the conditional probability of answering each question accurately for a student with ability x """ return mirt_util.conditional_probability_correct( np.ones((parameters.num_abilities, 1)) * x, parameters, exercise_ind)
def estimated_exercise_accuracy(self, history, exercise_name, update_abilities=True, ignore_analytics=False): """Returns the expected probability of getting a future question correct on the specified exercise. """ if update_abilities: self._update_abilities(history, ignore_analytics=ignore_analytics) try: exercise_ind = mirt_util.get_exercise_ind( exercise_name, self.exercise_ind_dict) except KeyError: # If we don't have this exercise, predict the mean predicted # accuracy over all exercises we do have. return self.score(history) return mirt_util.conditional_probability_correct( self.abilities, self.theta, exercise_ind)[0]
def estimated_exercise_accuracy(self, history, exercise_name, update_abilities=True, ignore_analytics=False): """Returns the expected probability of getting a future question correct on the specified exercise. """ if update_abilities: self._update_abilities(history, ignore_analytics=ignore_analytics) try: exercise_ind = mirt_util.get_exercise_ind(exercise_name, self.exercise_ind_dict) except KeyError: # If we don't have this exercise, predict the mean predicted # accuracy over all exercises we do have. return self.score(history) return mirt_util.conditional_probability_correct( self.abilities, self.theta, exercise_ind)[0]