def test_reviews_bag(self):
        """Classify sentiment using bag-of-words"""
        train, dev, test, labels, features = self.split_review_corpus(Review)
        classifier = MaxEnt()
        classifier.train(train, labels, features, dev)
        classifier.save("mikes_model")

        class2 = MaxEnt()
        class2.load("mikes_model")
        self.assertGreater(accuracy(classifier, test), 0.55)
Exemple #2
0
 def test_names_nltk(self):
     """Classify names using NLTK features"""
     train, dev, test = self.split_names_corpus()
     classifier = MaxEnt()
     classifier.train(train, dev, 0.1)
     acc = accuracy(classifier, test)
     self.assertGreater(acc, 0.70)
 def test_reviews_bag(self):
     """Classify sentiment using bag-of-words"""
     train, dev, test = self.split_review_corpus(BagOfWords)
     classifier = MaxEnt()
     classifier.train(train, dev)
     acc = accuracy(classifier, test)
     self.assertGreater(acc, 0.55)
def test_model():

    train, dev, test, labels = get_data()

    classifier = MaxEnt(train, labels)
    classifier.train(train, dev, 0.001, 100)

    print("Test result", accuracy(classifier, test))
    def test_names_nltk(self):
        """Classify names using NLTK features"""
        train, dev, test = self.split_names_corpus()
        classifier = MaxEnt()
        classifier.labels = ['female', 'male']
        classifier.vocab = self.get_names_vocab(train)
        classifier.feature_vectors(train + dev + test)
        classifier.train(train, dev)

        acc = accuracy(classifier, test)
        self.assertGreater(acc, 0.70)
    def test_reviews_bag(self):
        """Classify sentiment using bag-of-words"""
        train, dev, test = self.split_review_corpus(BagOfWords)
        classifier = MaxEnt()
        classifier.labels = ['positive', 'negative', 'neutral']
        classifier.vocab = self.get_review_vocab(train)
        print('...creating sparse feature vectors...')
        classifier.feature_vectors(train + dev + test)

        print('...training...')
        classifier.train(train, dev)
        self.assertGreater(accuracy(classifier, test), 0.55)
Exemple #7
0
 def test_reviews_words(self):
     """Classify sentiment using sentiment words"""
     train, dev, test = self.split_review_corpus(SentimentWords)
     classifier = MaxEnt()
     classifier.train(train, dev)
     self.assertGreater(accuracy(classifier, test), 0.55)
Exemple #8
0
        self.assertGreater(acc, 0.70)
    
    def split_review_corpus(self, document_class):
        """Split the yelp review corpus into training, dev, and test sets"""
        reviews = ReviewCorpus('yelp_reviews.json', document_class=document_class)
        seed(hash("reviews"))
        shuffle(reviews)
        return (reviews[:10000], reviews[10000:11000], reviews[11000:14000])

    def test_reviews_bag(self):
        """Classify sentiment using bag-of-words"""
        train, dev, test = self.split_review_corpus(BagOfWords)
        classifier = MaxEnt()
        classifier.train(train, dev)
        self.assertGreater(accuracy(classifier, test), 0.55)
'''
if __name__ == '__main__':
    docs = Corpus('./gold_standard_all.txt', True)
    seed(time.time())
    shuffle(docs)

    first_80 = round(0.8 * len(docs))
    second_10 = first_80 + round(0.1 * len(docs))

    train, dev, test = (docs[:first_80], docs[first_80:second_10],
                        docs[second_10:])

    classifier = MaxEnt()
    classifier.train(train, dev)
    print(accuracy(classifier, test))
Exemple #9
0
 def test_reviews_bag(self):
     train, dev, test = self.split_review_corpus(BagOfWords)
     classifier = MaxEnt()
     classifier.train(train, dev)
     self.assertGreater(accuracy(classifier, test), 0.55)
Exemple #10
0
 def test_names_nltk(self):
     train, dev, test = self.split_names_corpus()
     classifier = MaxEnt()
     classifier.train(train, dev)
     acc = accuracy(classifier, test)
     self.assertGreater(acc, 0.70)
    for i in range(reps):
        print(">>>>iteration", i)

        reward, states_visited, steps = run_episode(env, valueFunction, n,
                                                    False, EPSILON)
        #compute feature counts
        fcounts = compute_feature_counts(fMap, states_visited, discount, env)
        print("steps = ", steps)
        #print("feature count = ", fcounts)
        features.append(fcounts)

    features = np.array(features)

    #compute expected feature counts for demos
    emp_feature_cnts = np.mean(features[skip_time:], axis=0)
    ment = MaxEnt(solve_mdp, fMap, env, num_fcount_rollouts, discount)
    maxent_value_fn = ment.get_opt_policy(emp_feature_cnts, learning_rate,
                                          num_steps)

    #pickle the controller (value function)
    #with open('mcar_maxent_policy_ss.pickle', 'wb') as f:
    #    pickle.dump(maxent_value_fn, f, pickle.HIGHEST_PROTOCOL)

    #with open('mcar_maxent_policy_ss.pickle', 'rb') as f:
    #    vFunc = pickle.load(f)

    #evaluate maxent learned policy
    returns = evaluate_softmax_policy(env, eval_rollouts, maxent_value_fn)
    print("average return", np.mean(returns))

    for r in returns: