Ejemplo n.º 1
0
def _test_semi(NaiveBayes):


    clf = MultinomialNB(alpha=.01)
    clf.fit(X_train, y_train)
    # clf.fit(X_train[:n], Y_train[:n])
    pred = clf.predict(X_test)
    f1_score = metrics.f1_score(y_test, pred)
    print "Supervised Learning - scikits-learn 0.10"
    # print "Accuracy: %d/%d" % (np.sum(pred == y_test), len(y_test))
    accuracy =  float( np.sum(pred == y_test) )  / float(len(y_test))
    print "Accuracy: %0.4f" % accuracy
    print "F1: %0.4f" % f1_score


    clf = NaiveBayes()
    clf.fit(X_train, y_train)
    # clf.fit(X_train[:n], Y_train[:n])
    pred = clf.predict(X_test)
    f1_score = metrics.f1_score(y_test, pred)
    print "Supervised Learning"
    # print "Accuracy: %d/%d" % (np.sum(pred == y_test), len(y_test))
    accuracy =  float( np.sum(pred == y_test) )  / float(len(y_test))
    print "Accuracy: %0.4f" % accuracy
    print "F1: %0.4f" % f1_score

    clf = NaiveBayes()
    clf.fit_semi(X_train, Y_train, X_unlabel)
    # clf.fit_semi(X_train[:n], Y_train[:n], X_train[n:])
    pred = clf.predict(X_test)
    f1_score = metrics.f1_score(y_test, pred)
    accuracy =  float( np.sum(pred == y_test) )  / float(len(y_test))
    print "Semi-Supervised Learning"
    print "Accuracy: %0.4f" % accuracy
    print "F1: %0.4f" % f1_score
        
    print "-----"