Моделирование набора данных с использованием SVM - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть работа по моделированию набора данных KDD 99 с использованием машины опорных векторов (SVM).Вот код, который я пробую:

from sklearn.model_selection import train_test_split
train,test=train_test_split(model,test_size=0.3)
train_x=train.iloc[:,:-1]
train_y=train.iloc[:,-1]
test_x=test.iloc[:,:-1]
test_y=test.iloc[:,-1]
from sklearn.svm import SVC
classifier= SVC()

Когда я использую этот код:

classifier.fit(train_x,train_y)

и у меня появляются такие ошибки:

ValueError                                Traceback (most recent call last)
<ipython-input-15-002fa45b4d55> in <module>()
----> 1 classifier.fit(train_x,train_y)

/usr/local/lib/python2.7/dist-packages/sklearn/svm/base.pyc in fit(self, X, y, sample_weight)
    148                          order='C', accept_sparse='csr',
    149                          accept_large_sparse=False)
--> 150         y = self._validate_targets(y)
    151 
    152         sample_weight = np.asarray([]

/usr/local/lib/python2.7/dist-packages/sklearn/svm/base.pyc in _validate_targets(self, y)
    517     def _validate_targets(self, y):
    518         y_ = column_or_1d(y, warn=True)
--> 519         check_classification_targets(y)
    520         cls, y = np.unique(y_, return_inverse=True)
    521         self.class_weight_ = compute_class_weight(self.class_weight, cls, y_)

/usr/local/lib/python2.7/dist-packages/sklearn/utils/multiclass.pyc in check_classification_targets(y)
    169     if y_type not in ['binary', 'multiclass', 'multiclass-multioutput',
    170                       'multilabel-indicator', 'multilabel-sequences']:
--> 171         raise ValueError("Unknown label type: %r" % y_type)
    172 
    173 

ValueError: Unknown label type: 'continuous'

Надеюсь, кто-нибудьможет помочь мне решить эту проблему.Спасибо:)

1 Ответ

0 голосов
/ 07 февраля 2019

Для классификации необходимо передать метки категориальных классов, используя SVC.Я думаю, что вы теперь передаете действительные числа как метку класса train_y или test_y.Метки вашего класса должны быть int или string.

...