def deserialize_bernoulli_nb(model_dict):
    model = BernoulliNB(model_dict['params'])

    model.classes_ = np.array(model_dict['classes_'])
    model.class_count_ = np.array(model_dict['class_count_'])
    model.class_log_prior_ = np.array(model_dict['class_log_prior_'])
    model.feature_count_ = np.array(model_dict['feature_count_'])
    model.feature_log_prob_ = np.array(model_dict['feature_log_prob_'])

    return model
Exemplo n.º 2
0
 def leave_one_out(training_images, test_image, vocab):
     X_training = occurrance_matrix(training_images, vocab)
     Y_training = np.array([img.rating for img in training_images])
     X_testing = occurrance_matrix([test_image], vocab)
     from sklearn.naive_bayes import BernoulliNB
     classifier = BernoulliNB()
     classifier.fit(X_training, Y_training)
     classifier.classes_ = np.array([-1, 1])
     estimates = classifier.predict(X_testing)
     if estimates[0] == test_image.rating:
         return 1.0
     else:
         return 0.0