SVM z jądrem RBF – klasyfikacja

SVM z jądrem RBF (ang. radial basis function kernel SVM) to metoda uczenia maszynowego, która wykorzystuje SVM (ang. support vector machine) do rozwiązywania problemów klasyfikacyjnych i regresyjnych. SVM to algorytm uczenia nadzorowanego, który służy do klasyfikacji danych na podstawie ich cech.

SVM z jądrem RBF działa tak, że najpierw znajduje się hiperpłaszczyznę najlepiej oddzielającą dane treningowe według etykiet. Następnie przewidywana etykieta (lub wartość wyjściowa) dla nowego obiektu jest obliczana jako punkt leżący na tej hiperpłaszczyźnie najbliżej tego obiektu.

Jądro RBF pozwala na uzyskanie bardziej złożonych granic decyzyjnych niż w przypadku SVM z jądrem liniowym. Dzięki temu SVM z jądrem RBF jest skuteczne w przypadku danych, które nie są liniowo separowalne.

Jedną z głównych zalet SVM z jądrem RBF jest jej wysoka skuteczność w wielu różnych sytuacjach klasyfikacyjnych i regresyjnych. Ma jednak pewne ograniczenia, takie jak wysoki czas obliczeniowy w przypadku dużych zbiorów danych oraz brak interpretowalności modelu.

from sklearn.svm import SVC

# Przygotowanie danych - załóżmy, że mamy zbiór treningowy zawierający cechy oraz etykiety
X = [[1, 2], [2, 4], [3, 6], [4, 8]]  # cechy
y = [0, 0, 1, 1]  # etykiety

# Utworzenie modelu SVM z jądrem RBF
model = SVC(kernel='rbf')

# Trenowanie modelu na danych treningowych
model.fit(X, y)

# Przewidywanie etykiet dla nowych danych
predictions = model.predict([[5, 10], [1, 3]])

# Wynik: predictions zawiera [1, 0] - czyli przewiduje, że pierwszy obiekt należy do klasy 1, a drugi do klasy 0

W tym przykładzie użyto modelu SVM z jądrem RBF, co oznacza, że zostanie on wykorzystany do znalezienia hiperpłaszczyzny najlepiej oddzielającej dane treningowe według etykiet. Następnie model został trenowany na danych treningowych (X i y) i wykorzystany do przewidywania etykiet dla nowych danych.