Я пытаюсь классифицировать изображения, используя sklearn
классификатор svm.SVC
, но он не учится, после обучения я получил точность 0,1 (10 классов, поэтому точность 0,1 такая же, как случайная догадка)sklearn support vector machine не учится
Я использую datatset CIFAR-10. 10000 изображений, которые представлены как 3072 uint8
s. Первые 1024 - это красные пиксели, а второй 1024 - зеленые пиксели, а жажда 1024 - это синие пиксели.
Каждое изображение имеет метку, которая является номером 0-9
Вот мой код:
import numpy as np
from sklearn import preprocessing, svm
import pandas as pd
import pickle
from sklearn.externals import joblib
train_data = pickle.load(open('data_batch_1','rb'), encoding='latin1')
test_data = pickle.load(open('test_batch','rb'), encoding='latin1')
X_train = np.array(train_data['data'])
y_train = np.array(train_data['labels'])
X_test = np.array(test_data['data'])
y_test = np.array(test_data['labels'])
clf = svm.SVC(verbose=True)
clf.fit(X_train, y_train)
accuracy = clf.score(X_test, y_test)
joblib.dump(clf, 'Cifar-10-clf.pickle')
print(accuracy)
Кто-нибудь знает, что может быть моя проблема или может указывать мне на ресурсы для решения это?