Как исправить частоту ложных срабатываний линейного SVM?

Я новичок в SVM, и это мой пример использования: у меня много несбалансированных данных, которые должны быть двоично классифицированы с использованием линейного SVM. Мне нужно зафиксировать уровень ложных срабатываний при определенных значениях и измерить соответствующие ложные отрицания для каждого значения. Я использую что-то вроде следующего кода, использующего реализацию scikit-learn svm:

# define training data
X = [[0, 0], [1, 1]]
y = [0, 1]

# define and train the SVM
clf = svm.LinearSVC(C=0.01, class_weight='auto') #auto for unbalanced distributions
clf.fit(X, y)

# compute false positives and false negatives
predictions = [clf.predict(ex) for ex in X]    
false_positives = [(a, b) for (a, b) in zip(predictions,y) if a != b and b == 0]
false_negatives = [(a, b) for (a, b) in zip(predictions,y) if a != b and b == 1] 

Есть ли способ поиграть с параметром (или несколькими параметрами) классификатора так, чтобы один из показателей измерения был эффективно зафиксирован?

Ответы на вопрос(2)

Ваш ответ на вопрос