def run(self): if not self.usedev: for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() self.stdout = True self.evaluate(c) return for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() for w in self.allweights: c.setWeight(w) for t1 in self.allthresholds: for t2 in self.allthresholds: c.setThresholds(neg=t1, pos=t2) cinfo, accpos, accneg, accall, corrall = self.evaluate(c) self.results.append([cinfo, accpos, accneg, accall, corrall]) if self.csvout: self.flushToCSV()
def run(self): if not self.usedev: for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() self.stdout = True self.evaluate(c) return for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() for w in self.allweights: c.setWeight(w) for t1 in self.allthresholds: for t2 in self.allthresholds: c.setThresholds(neg=t1, pos=t2) cinfo, accpos, accneg, accall, corrall = self.evaluate( c) self.results.append( [cinfo, accpos, accneg, accall, corrall]) if self.csvout: self.flushToCSV()
def run(self): for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() self.stdout = False return self.evaluate(c) for grams in self.allgrams: c = NaiveBayesClassifier(self.rawfname, grams=grams) c.trainClassifier() for w in self.allweights: c.setWeight(w) for t1 in self.allthresholds: for t2 in self.allthresholds: c.setThresholds(neg=t1, pos=t2) cinfo, accpos, accneg, accall, corrall = self.evaluate(c) self.results.append([cinfo, accpos, accneg, accall, corrall])
from maxentclassifier import MaximumEntropyClassifier from naivebayesclassifier import NaiveBayesClassifier import random import csv fname = 'training.csv' nb = NaiveBayesClassifier(fname, grams=[1, 2]) nb.setThresholds(neg=1.0, pos=20.0) nb.setWeight(0.000000000005) nb.trainClassifier() ment = MaximumEntropyClassifier(fname) ment.trainClassifier() classifiers = [nb, ment] def csvdata_to_list(data): d=[] for row in data: d.append(row) return d def search(text,data): output = [] i=0 for d in data: if d[0].lower().find(text) != -1: output.append([]) output[i].append(d[0])
import tornado.ioloop import tornado.web import urllib import tweepy import os from maxentclassifier import MaximumEntropyClassifier from naivebayesclassifier import NaiveBayesClassifier # name of training set file fname = 'trainingandtestdata/training.csv' # train classifiers here first nb = NaiveBayesClassifier(fname, grams=[1,2]) nb.setThresholds(neg=1.0, pos=20.0) nb.setWeight(0.000000000005) nb.trainClassifier() ment = MaximumEntropyClassifier(fname) ment.trainClassifier() classifiers = [nb, ment] class MainHandler(tornado.web.RequestHandler): ''' Handles request to main page ''' def get(self): query = self.get_argument("query", "").strip() cchosen = int(self.get_argument("classifier-type", 0))