Извлечение коэффициентов с нелинейным ядром с использованием sklearn.svm python

Это может быть невозможно в теории, если да, пожалуйста, уточните.

Я пытаюсь сопоставить некоторые данные с классом Python sklearn SVM классом sklearn SVM

Когда я использую линейное ядро, я могу извлечь коэффициенты, используя метод get_params, где

coef_ : array, shape = [n_features] if n_classes == 2 else [n_classes, n_features] Веса, присвоенные функциям (коэффициенты в основной задаче). Это доступно только в случае линейного ядра.

Таким образом, я могу найти уравнение наилучшего соответствия, которое зависит от всех независимых переменных, и я могу использовать это уравнение в другом месте.

Можно ли сделать то же самое (получить нелинейное уравнение) из нелинейного ядра (например, RBF или полиномиального ядра) с помощью sklearn?

Спасибо!

Тим


person Tim    schedule 08.07.2015    source источник


Ответы (1)


Согласно документации:

Решающая функция:

\operatorname{sgn}(\sum_{i=1}^n y_i \alpha_i K(x_i, x) + \  ро)

...

Доступ к этим параметрам можно получить через члены dual_coef_, которые содержат произведение y_i alpha_i, support_vectors_, которые содержат опорные векторы, и intercept_, которые содержат независимый термин \rho...

(«векторы поддержки» означают x_i в уравнении решающей функции).

Каждое ядро ​​имеет различную функцию, которая вам понадобится. понять, как вычислить термин K(x_i,x).

person Andreus    schedule 08.07.2015