def documents2feature_vectors(documents): vectorizer = PolitenessFeatureVectorizer() fks = False X, y = [], [] for d in documents: fs = vectorizer.features(d) if not fks: fks = sorted(fs.keys()) fv = [fs[f] for f in fks] # If politeness score > 0.0, # the doc is polite, class=1 l = 1 if d['score'] > 0.0 else 0 X.append(fv) y.append(l) X = csr_matrix(np.asarray(X)) y = np.asarray(y) return X, y
% (name, expected_v, package.__version__)) #### from features.vectorizer import PolitenessFeatureVectorizer #### # Serialized model filename MODEL_FILENAME = os.path.join(os.path.split(__file__)[0], 'politeness-svm.p') #### # Load model, initialize vectorizer clf = cPickle.load(open(MODEL_FILENAME)) vectorizer = PolitenessFeatureVectorizer() def score(request): """ :param request - The request document to score :type request - dict with 'sentences' and 'parses' field sample (taken from test2.py)-- { 'sentences': [ "Have you found the answer for your question?", "If yes would you please share it?" ], 'parses': [ ["csubj(found-3, Have-1)", "dobj(Have-1, you-2)", "root(ROOT-0, found-3)", "det(answer-5, the-4)", "dobj(found-3, answer-5)", "poss(question-8, your-7)", "prep_for(found-3, question-8)"], ["prep_if(would-3, yes-2)", "root(ROOT-0, would-3)", "nsubj(would-3, you-4)", "ccomp(would-3, please-5)", "nsubj(it-7, share-6)", "xcomp(please-5, it-7)"]