本文整理汇总了Python中sklearn.svm.LinearSVC.classify方法的典型用法代码示例。如果您正苦于以下问题:Python LinearSVC.classify方法的具体用法?Python LinearSVC.classify怎么用?Python LinearSVC.classify使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sklearn.svm.LinearSVC
的用法示例。
在下文中一共展示了LinearSVC.classify方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import classify [as 别名]
class WSD:
def __init__(self):
self.classifier = None
self.className = "NB" # other options in the future: MaxEnt, DT
self.featSets = ["BoW"] # other options: combination of BoW, LocalCol, PoS
self.training = [] # original train instances
self.trainFeatures = [] # train features
self.test = [] # original test instances
self.testFeatures = [] # test features
self.featExtractor = FeatureExtractor()
def setTrain(self, instances):
self.training = instances
self.trainFeatures = []
def setTest(self, instances):
self.test = instances
self.testFeatures = []
def setClassifier(self, className):
self.className = className
def setFeatureSet(self, featSets):
self.featSets = featSets
def learn(self):
# check if variables are initialized
if len(self.training) == 0:
sys.stderr.write("No training assigned\n")
return 0
if len(self.trainFeatures) == 0:
sys.stderr.write("[Time] %s : Extracting training features\n" % time.asctime())
self.trainFeatures = [(self.getFeatures(instance), instance[1]) for (instance) in self.training]
else:
sys.stderr.write("[Time] %s : Features already extracted\n" % time.asctime())
if self.className == "NB":
sys.stderr.write("[Time] %s : Learning a Naive Bayes classifier\n" % time.asctime())
self.classifier = nltk.NaiveBayesClassifier.train(self.trainFeatures)
if self.className == "MaxEnt":
sys.stderr.write("[Time] %s : Learning a Maximum Entropy classifier\n" % time.asctime())
#self.classifier = nltk.classify.MaxentClassifier.train(self.trainFeatures, "IIS", trace=3, max_iter=100)
self.classifier = nltk.classify.MaxentClassifier.train(self.trainFeatures, "IIS", trace=3, max_iter=30)
if self.className == "DT":
sys.stderr.write("[Time] %s : Learning a Decission Tree classifier\n" % time.asctime())
self.classifier = nltk.classify.DecisionTreeClassifier.train(self.trainFeatures, entropy_cutoff=0, support_cutoff=0)
if self.className == "NB_sklearn":
sys.stderr.write(
"[Time] %s : Learning a Multinomial Naive Bayes (scikit-learn) classifier\n" % time.asctime())
X, y = self.featExtractor.convert2sklearn(self.trainFeatures)
self.classifier = MultinomialNB()
self.classifier.fit(X, y)
if self.className == "DT_sklearn":
sys.stderr.write(
"[Time] %s : Learning a Decision Tree (scikit-learn) classifier\n" % time.asctime())
X, y = self.featExtractor.convert2sklearn(self.trainFeatures)
self.classifier = DecisionTreeClassifier(random_state=0)
self.classifier.fit(X, y)
if self.className == "MaxEnt_sklearn":
sys.stderr.write("[Time] %s : Learning a Logistic Regression (scikit-learn) classifier\n" % time.asctime())
X, y = self.featExtractor.convert2sklearn(self.trainFeatures)
self.classifier = LogisticRegression()
self.classifier.fit(X, y)
if self.className == "SVM_sklearn":
sys.stderr.write("[Time] %s : Learning a Linear Support Vector Machine (scikit-learn) classifier\n" % time.asctime())
X, y = self.featExtractor.convert2sklearn(self.trainFeatures)
self.classifier = LinearSVC(C=1.0)
self.classifier.fit(X, y)
sys.stderr.write("[Time] %s : Learning finished\n" % time.asctime())
#self.classifier.show_most_informative_features(20)
def predict(self):
if self.classifier == None:
sys.stderr.write("[ERROR] No classifier learnt")
return 0
if len(self.test) == 0:
sys.stderr.write("[ERROR] No test assigned")
return 0
if len(self.testFeatures) == 0:
sys.stderr.write("[Time] %s : Extracting test features\n" % time.asctime())
self.testFeatures = [(self.getFeatures(instance), instance[1]) for (instance) in self.test]
else:
sys.stderr.write("[Time] %s : Test features aldready extracted\n" % time.asctime())
sys.stderr.write("[Time] %s : Predictions on test\n" % time.asctime())
if self.className == "MaxEnt_sklearn" or self.className == "SVM_sklearn" or self.className == "DT_sklearn" or self.className == "NB_sklearn":
#.........这里部分代码省略.........