当前位置: 首页>>代码示例>>Python>>正文


Python LinearSVC.predict方法代码示例

本文整理汇总了Python中sklearn.svm.LinearSVC.predict方法的典型用法代码示例。如果您正苦于以下问题:Python LinearSVC.predict方法的具体用法?Python LinearSVC.predict怎么用?Python LinearSVC.predict使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在sklearn.svm.LinearSVC的用法示例。


在下文中一共展示了LinearSVC.predict方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: LinearSVCStep

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
class LinearSVCStep(SklearnStep):
    def __init__(self, c=1.0):
        super(LinearSVCStep, self).__init__()

        self._c = c

    def fit_transform(self):
        self._model = LinearSVC(C=self._c)
        x, y = load_svmlight(self.input_path)
        self._model.fit(x, y)
        scores = self._model.decision_function(x)
        save_numpy_txt(scores, self.output_path)

    def transform(self, x=None):
        if x is None:
            _x, y = load_svmlight(self._test_input_path)
            conf_x = self._model.decision_function(_x)
            predicted_x = self._model.predict(_x)
            res = np.vstack((y, conf_x, predicted_x)).T
            save_numpy_txt(res, self._test_output_path)
        else:
            transformed_x = self._model.decision_function(x)
            return transformed_x

    def predict(self, x):
        return self._model.predict(x)

    def decision_function(self, x):
        return self._model.decision_function(x)

    def get_param(self):
        return {'c': self._c}
开发者ID:myungchoi,项目名称:client-py,代码行数:34,代码来源:classifier.py

示例2: __init__

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
class LinearSVM:
	def __init__(self):
		self.clf = LinearSVC(penalty='l2', loss='l1', dual=True, tol=0.0001, C=1.0, multi_class='ovr', fit_intercept=True, intercept_scaling=1, class_weight=None, verbose=0, random_state=None)
		self.pattern ='(?u)\\b[A-Za-z]{3,}'
		self.tfidf = TfidfVectorizer(sublinear_tf=False, use_idf=True, smooth_idf=True, stop_words='english', token_pattern=self.pattern, ngram_range=(1, 3))
	def train(self,fileName):
		print "LinearSVM Classifier is being trained"
		table = pandas.read_table(fileName, sep="\t", names=["cat", "message"])
		X_train = self.tfidf.fit_transform(table.message)
		Y_train = []
		for item in table.cat:
			Y_train.append(int(item)) 
		self.clf.fit(X_train, Y_train)
		print "LinearSVM Classifier has been trained"

	def classify(self,cFileName, rFileName):
		table = pandas.read_table(cFileName, names=["message"])
		X_test = self.tfidf.transform(table.message)
		print "Data have been classified"
		with open(rFileName,'w') as f:
			for item in self.clf.predict(X_test).astype(str):
				f.write(item+'\n')

	def validate(self,fileName):
		table = pandas.read_table(fileName, sep="\t", names=["cat", "message"])
		X_validate = self.tfidf.transform(table.message)
		Y_validated = self.clf.predict(X_validate).astype(str)
		totalNum = len(table.cat)
		errorCount = 0
		for i in range(0,totalNum):
			if int(table.cat[i])!=int(Y_validated[i]):
				errorCount += 1
		print "Data have been validated! Precision={}".format((totalNum-errorCount)/float(totalNum))
开发者ID:richelite,项目名称:classify,代码行数:35,代码来源:lib.py

示例3: applySVMWithPCA

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def applySVMWithPCA():
    '''
    Same as the previous function, just change the file names..
    '''
    data = io.mmread(ROOTDIR+"TRAINDATA.mtx")
    label = np.load(ROOTDIR+"label_train.npy")
    testdata = io.mmread(ROOTDIR+"TESTDATA.mtx")
    testLabel = np.load(ROOTDIR + "label_test.npy")
    
    linear_svm = LinearSVC(C=1.0, class_weight=None, loss='hinge', dual=True, fit_intercept=True,
    intercept_scaling=1, multi_class='ovr', penalty='l2',
    random_state=None, tol=0.0001, verbose=1, max_iter=2000)
     
    data = scale(data, with_mean=False)
     
    linear_svm.fit(data, label)
    joblib.dump(linear_svm, ROOTDIR+'originalTrain_hinge_2000.pkl') 
#     linear_svm = joblib.load(ROOTDIR+'originalTrain_hinge_2000.pkl')
    
    print 'Trainning Done!'
    scr = linear_svm.score(data, label)
    print 'accuracy on the training set is:' + str(scr)

    predLabel = linear_svm.predict(data)
    calcualteRMSE(label, predLabel)
    
    scr = linear_svm.score(testdata, testLabel)
    print 'accuracy on the testing set is:' + str(scr)

    predLabel = linear_svm.predict(testdata)
    calcualteRMSE(testLabel, predLabel)      
开发者ID:cyinv,项目名称:10601Project-KDD2010,代码行数:33,代码来源:Preprocessing.py

示例4: benchmark

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def benchmark(k, epochs):
  print("*" * 80)
  print("k: %d, epochs: %d\n" % (k, epochs))

  #select = SelectKBest(score_func=chi2, k=k)
  select = TruncatedSVD(n_components=k)
  X_train_trunc = select.fit_transform(X_train, Y_train)
  X_test_trunc = select.transform(X_test)

  print('done truncating')

  parameters = {'C': [1, 10, 100, 1000, 10000],  'class_weight': ['auto', None], 'tol':[0.001,0.0001]}
  clf = LinearSVC(C=100000)
  #clf = grid_search.GridSearchCV(svc, parameters)
  clf.fit(X_train_trunc, Y_train)
  pred = clf.predict(X_test_trunc)

  if CREATE_SUBMISSION:
    X_submit_trunc = select.transform(X_submit)
    pred_submit = clf.predict(X_submit_trunc)
    dump_csv(pred_submit, k, epochs)

  score = metrics.f1_score(Y_test, pred)
  print("f1-score:   %0.3f" % score)

  print("classification report:")
  print(metrics.classification_report(Y_test, pred))

  print("confusion matrix:")
  print(metrics.confusion_matrix(Y_test, pred))
开发者ID:alireza-saberi,项目名称:Applied_MachineLearning_COMP_598_MiniProject2,代码行数:32,代码来源:svm_test.py

示例5: with_aureliens_potentials_svm

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def with_aureliens_potentials_svm(test=False):
    data = load_data('train', independent=True)
    data = add_kraehenbuehl_features(data)
    features = [x[0] for x in data.X]
    y = np.hstack(data.Y)

    if test:
        data_ = load_data('val', independent=True)
        data_ = add_kraehenbuehl_features(data_)
        features.extend([x[0] for x in data.X])
        y = np.hstack([y, np.hstack(data_.Y)])

    new_features_flat = np.vstack(features)
    from sklearn.svm import LinearSVC
    print("training svm")
    svm = LinearSVC(C=.001, dual=False, class_weight='auto')
    svm.fit(new_features_flat[y != 21], y[y != 21])
    print(svm.score(new_features_flat[y != 21], y[y != 21]))
    print("evaluating")
    eval_on_pixels(data, [svm.predict(x) for x in features])

    if test:
        print("test data")
        data_val = load_data('test', independent=True)
    else:
        data_val = load_data('val', independent=True)

    data_val = add_kraehenbuehl_features(data_val)
    features_val = [x[0] for x in data_val.X]
    eval_on_pixels(data_val, [svm.predict(x) for x in features_val])
开发者ID:amueller,项目名称:segmentation,代码行数:32,代码来源:kraehenbuehl_potentials.py

示例6: train_svm

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def train_svm(C=0.1, grid=False):
    pascal = PascalSegmentation()

    files_train = pascal.get_split("kTrain")
    superpixels = [slic_n(pascal.get_image(f), n_superpixels=100,
                          compactness=10)
                   for f in files_train]
    bow = SiftBOW(pascal, n_words=1000, color_sift=True)
    data_train = bow.fit_transform(files_train, superpixels)

    data_train = add_global_descriptor(data_train)

    svm = LinearSVC(C=C, dual=False, class_weight='auto')
    chi2 = AdditiveChi2Sampler()

    X, y = np.vstack(data_train.X), np.hstack(data_train.Y)
    X = chi2.fit_transform(X)
    svm.fit(X, y)
    print(svm.score(X, y))
    eval_on_sp(pascal, data_train, [svm.predict(chi2.transform(x)) for x in
                                    data_train.X], print_results=True)

    files_val = pascal.get_split("kVal")
    superpixels_val = [slic_n(pascal.get_image(f), n_superpixels=100,
                              compactness=10) for f in files_val]
    data_val = bow.transform(files_val, superpixels_val)
    data_val = add_global_descriptor(data_val)
    eval_on_sp(pascal, data_val, [svm.predict(chi2.transform(x)) for x in
                                  data_val.X], print_results=True)

    tracer()
开发者ID:amueller,项目名称:segmentation,代码行数:33,代码来源:pascal_bow.py

示例7: train

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def train(train_input, train_output, test_input, test_output):
    # 训练模块

    # 选择模型
    # model = MultinomialNB()
    # model = GaussianNB()
    # model = SGDClassifier()
    # model = SVC(kernel='linear') # 这个很慢
    model = LinearSVC()
    # model = RandomForestClassifier(max_depth=2, n_estimators=500)
    # model = AdaBoostClassifier(n_estimators=500,base_estimator=DecisionTreeClassifier(max_depth=10))

    # 训练 & 评测
    model.fit(train_input,train_output)
    pred_train = model.predict(train_input)
    pred_test = model.predict(test_input)

    label_size = max(train_output)+1
    train_ratio = cal_accuracy(pred_train, train_output)
    train_recal = cal_recall(pred_train, train_output, label_size)
    # print(test_output)
    print(list(pred_test))
    test_ratio = cal_accuracy(pred_test, test_output)
    test_recal = cal_recall(pred_test, test_output, label_size)
    print('%f\t%f'%(train_ratio, test_ratio))
    print('%f\t%f'%(train_recal, test_recal))
开发者ID:multiangle,项目名称:PyNLP,代码行数:28,代码来源:tfidf_sklearn.py

示例8: PersonWorker

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def PersonWorker(person):
    print('starting on person: ', str(person))

    #data = 40 videos x 32 alpha(csp channel)
    (X_train, y_train, X_test, y_test) = DL.loadPersonEpochDimRedu(person=person,
        featureFunc = featureFunc,
    )
    
    #http://stackoverflow.com/questions/26963454/lda-ignoring-n-components => only 1 feature :(
    print(np.shape(X_train))

    svm = LinearSVC()
    svm.fit(X_train, y_train)
    
    y = svm.predict(X_train)
    y = label_binarize(y, classes=[0, 1, 2, 3])
    train_auc = UT.auc(y, y_train)

    y = svm.predict(X_test)
    y = label_binarize(y, classes=[0, 1, 2, 3])
    test_auc = UT.auc(y, y_test)


    print('person: ', person, 
        ' - train auc: ', str(train_auc),
        ' - test auc: ' , str(test_auc)
    )

    return [train_auc, test_auc]
开发者ID:AndreasDL,项目名称:ir-thesis,代码行数:31,代码来源:promisingpaper.py

示例9: train_svm

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def train_svm(C=0.1, grid=False):
    ds = PascalSegmentation()
    svm = LinearSVC(C=C, dual=False, class_weight='auto')

    if grid:
        data_train = load_pascal("kTrain")
        X, y = shuffle(data_train.X, data_train.Y)
        # prepare leave-one-label-out by assigning labels to images
        image_indicators = np.hstack([np.repeat(i, len(x)) for i, x in
                                      enumerate(X)])
        # go down to only 5 "folds"
        labels = image_indicators % 5
        X, y = np.vstack(X), np.hstack(y)

        cv = LeavePLabelOut(labels=labels, p=1)
        param_grid = {'C': 10. ** np.arange(-3, 3)}
        scorer = Scorer(recall_score, average="macro")
        grid_search = GridSearchCV(svm, param_grid=param_grid, cv=cv,
                                   verbose=10, scoring=scorer, n_jobs=-1)
        grid_search.fit(X, y)
    else:
        data_train = load_pascal("train")
        X, y = np.vstack(data_train.X), np.hstack(data_train.Y)
        svm.fit(X, y)
        print(svm.score(X, y))
        eval_on_sp(ds, data_train, [svm.predict(x) for x in data_train.X],
                   print_results=True)

        data_val = load_pascal("val")
        eval_on_sp(ds, data_val, [svm.predict(x) for x in data_val.X],
                   print_results=True)
开发者ID:amueller,项目名称:segmentation,代码行数:33,代码来源:pascal_baselines.py

示例10: main

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def main():
    # Basic init
    utils.parseArgs()
    data_path = namespaceCV.CALTECH
    class_1, class_2 = _setupClasses()
    display = Display((800,600)) # Display to show the images
    target_names = [class_1, class_2]

    # Make labeled/unlabeled folders
    _split_into_labeled_unlabeled( class_1 )
    _split_into_labeled_unlabeled( class_2 )

    # Load training data
    class_1_data = ImageSet(data_path + class_1 + "/" + namespaceCV.LABELED)
    class_2_data = ImageSet(data_path + class_2 + "/" + namespaceCV.LABELED)
    
    # Featurize image data, put into the correct format.
    class_1_features = _featurizeDataForClass(class_1_data)
    class_2_features = _featurizeDataForClass(class_2_data)
    
    # Create full data set and labels
    full_data = np.array(np.ndarray.tolist(class_1_features) + np.ndarray.tolist(class_2_features))
    labels = np.array([0 for i in range(len(class_1_features))] + [1 for i in range(len(class_2_features))])

    print 'Training'
    svc = LinearSVC()
    svc = svc.fit(full_data, labels)
    log_reg = LogisticRegression().fit(full_data, labels)

    # ---- PREDICTION ----

    print 'Running prediction on class 1'
    unlabeled_class_1 = ImageSet(data_path + class_1 + "/" + namespaceCV.UNLABELED)
    featurized_class_1_predict = _featurizeDataForClass(unlabeled_class_1)

    predictions_1 = svc.predict(featurized_class_1_predict)
    probabilities_1 = log_reg.predict_proba(featurized_class_1_predict)

    print 'Running prediction on class 2'
    unlabaled_class_2 = ImageSet(data_path + class_2 + "/" + namespaceCV.UNLABELED)
    featurized_class_2_predict = _featurizeDataForClass(unlabaled_class_2)

    predictions_2 = svc.predict(featurized_class_2_predict)
    probabilities_2 = log_reg.predict_proba(featurized_class_2_predict)

    # ---- EVALUATE -----
    total_correct_1 = 0.0
    for item in predictions_1:
        if item == 0:
            total_correct_1 += 1.0

    total_correct_2 = 0.0
    for item in predictions_2:
        if item == 1:
            total_correct_2 += 1.0
    
    print "Accuracy on class 1: ", total_correct_1 / len(predictions_1)
    print "Accuracy on class 2: ", total_correct_2 / len(predictions_2)
开发者ID:Ablat,项目名称:coursework,代码行数:60,代码来源:classify.py

示例11: svm_train

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def svm_train(X_train, X_test, y_train, y_test, C=1.0):
    #SVM training, optimal C=1.0, f1_score: 0.6834
    clf = LinearSVC(C=C, verbose=1, class_weight='auto')
    clf.fit(X_train, y_train)
    pred = clf.predict(X_test)
    print "Train f1 %.3f, Test f1: %.3f" %(f1_score(y_train, clf.predict(X_train)), f1_score(y_test, pred, average='micro'))
    print "Test Confusion Matrix: "
    print confusion_matrix(y_test, pred)
    return clf
开发者ID:hx364,项目名称:Synonym_Extraction,代码行数:11,代码来源:train.py

示例12: nouns_score

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def nouns_score(X_sg, y_sg, X_pl, y_pl, X_sg_test, X_pl_test):
    sg_clf = LinearSVC(C=0.1).fit(X_sg, y_sg)
    pl_clf = LinearSVC(C=0.1).fit(X_pl, y_pl)
    sg_pred = sg_clf.predict(X_sg_test)
    pl_pred = pl_clf.predict(X_pl_test)
    sg_score = np.mean(sg_pred == 0)
    pl_score = np.mean(pl_pred == 1)
    overall_score = np.mean(np.logical_and(sg_pred == 0, pl_pred == 1))
    return sg_score, pl_score, overall_score
开发者ID:vene,项目名称:misc-nlp,代码行数:11,代码来源:train_size.py

示例13: linearSVC

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def linearSVC(X_train, y_train, X_test, y_test):
    model = LSVC()
    model.fit(X_train, y_train)

    y_pred_train = model.predict(X_train)
    acc_train = skl_metrics.accuracy_score(y_true=y_train, y_pred=y_pred_train)
    y_pred_test = model.predict(X_test)
    acc_test = skl_metrics.accuracy_score(y_true=y_test, y_pred=y_pred_test)

    return acc_train, acc_test
开发者ID:mahmoudovic,项目名称:MATRIXAI,代码行数:12,代码来源:base.py

示例14: PerceptronClassifier

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
class PerceptronClassifier(CrossDomainClassifier):
    """
    Perceptron Classifier with TFIDF
    """

    def train(self, limit_data=None):
        if not hasattr(self, 'reviews'):
            print "No data loaded"
            return

        if limit_data is None:
            limit_data = len(self.reviews)

        X = self.get_bag_of_ngrams(self.reviews[:limit_data])
        self.clf = LinearSVC().fit(X, self.labels[:limit_data])

    def __test(self, reviews, labels):
        X_training_counts = self.count_vect.transform(reviews)
        X_training_tfidf = self.tfidf_transformer.transform(X_training_counts)

        predicted = self.clf.predict(X_training_tfidf)
        self.cm = confusion_matrix(labels, predicted)
        return 1 - np.mean(predicted == labels)

    def get_training_error(self):
        return self.__test(self.reviews, self.labels)

    def get_generalized_error(self):
        return self.__test(self.test_reviews, self.test_labels)

    def get_crossdomain_error(self):
        return {'twitter': self.__test(self.twitter_items, self.twitter_labels),
                'ebay': self.__test(self.ebay_items, self.ebay_labels)}

    def __get_scores(self, reviews, labels):
        X_training_counts = self.count_vect.transform(reviews)
        X_training_tfidf = self.tfidf_transformer.transform(X_training_counts)

        predicted = self.clf.predict(X_training_tfidf)
        self.cm = confusion_matrix(labels, predicted)

        return precision_recall_fscore_support(labels, predicted, average='macro')

    def get_scores_training(self):
        return self.__get_scores(self.reviews, self.labels)

    def get_scores_test(self):
        return self.__get_scores(self.test_reviews, self.test_labels)

    def get_scores_twitter(self):
        return self.__get_scores(self.twitter_items, self.twitter_labels)

    def get_scores_ebay(self):
        return self.__get_scores(self.ebay_items, self.ebay_labels)
开发者ID:lukedeo,项目名称:cross-domain,代码行数:56,代码来源:classifier.py

示例15: evaluate_classifier

# 需要导入模块: from sklearn.svm import LinearSVC [as 别名]
# 或者: from sklearn.svm.LinearSVC import predict [as 别名]
def evaluate_classifier(X_train, X_test, y_train, y_test):
    '''
    Run multiple times with different classifiers to get an idea of the
    relative performance of each configuration.

    Returns a sequence of tuples containing:
        (title, precision, recall)
    for each learner.
    '''

    # Import some classifiers to test
    from sklearn.svm import LinearSVC, NuSVC
    from sklearn.ensemble import AdaBoostClassifier

    # We will calculate the P-R curve for each classifier
    from sklearn.metrics import precision_recall_curve, f1_score
    
    # Here we create classifiers with default parameters. These need
    # to be adjusted to obtain optimal performance on your data set.
    
    # Test the linear support vector classifier
    classifier = LinearSVC(C=1)
    # Fit the classifier
    classifier.fit(X_train, y_train)
    score = f1_score(y_test, classifier.predict(X_test))
    # Generate the P-R curve
    y_prob = classifier.decision_function(X_test)
    precision, recall, _ = precision_recall_curve(y_test, y_prob)
    # Include the score in the title
    yield 'Linear SVC (F1 score={:.3f})'.format(score), precision, recall

    # Test the Nu support vector classifier
    classifier = NuSVC(kernel='rbf', nu=0.5, gamma=1e-3)
    # Fit the classifier
    classifier.fit(X_train, y_train)
    score = f1_score(y_test, classifier.predict(X_test))
    # Generate the P-R curve
    y_prob = classifier.decision_function(X_test)
    precision, recall, _ = precision_recall_curve(y_test, y_prob)
    # Include the score in the title
    yield 'NuSVC (F1 score={:.3f})'.format(score), precision, recall

    # Test the Ada boost classifier
    classifier = AdaBoostClassifier(n_estimators=50, learning_rate=1.0, algorithm='SAMME.R')
    # Fit the classifier
    classifier.fit(X_train, y_train)
    score = f1_score(y_test, classifier.predict(X_test))
    # Generate the P-R curve
    y_prob = classifier.decision_function(X_test)
    precision, recall, _ = precision_recall_curve(y_test, y_prob)
    # Include the score in the title
    yield 'Ada Boost (F1 score={:.3f})'.format(score), precision, recall
开发者ID:hcbgtd,项目名称:MyTest,代码行数:54,代码来源:classifier.py


注:本文中的sklearn.svm.LinearSVC.predict方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。