Sobes.tech
Middle — Senior

Co je One-Class SVM?

sobes.tech AI

Odpověď od AI

One-Class SVM je algoritmus strojového učení používaný k detekci anomálií a identifikaci odchylek. Trénuje se na datech jedné třídy (obvykle normálních příkladech) a snaží se určit hranici, která odděluje tato data od všech ostatních možných.

Hlavní myšlenkou je najít oblast v prostoru znaků, kde jsou soustředěna normální data, a třídit nové objekty jako normální, pokud spadají do této oblasti, nebo jako anomálie, pokud jsou mimo ni.

Použití:

  • Detekce podvodů
  • Monitoring zařízení
  • Odhalování neobvyklého chování

Příklad použití v Pythonu s knihovnou scikit-learn:

from sklearn.svm import OneClassSVM

# Tréninková data (normální příklady)
X_train = [[0, 0], [1, 1], [0.5, 0.5], [1, 0]]

# Vytvoření modelu
model = OneClassSVM(gamma='auto').fit(X_train)

# Kontrola nových dat
X_test = [[0, 0], [2, 2]]
pred = model.predict(X_test)  # 1 — normální, -1 — anomálie
print(pred)

Tímto způsobem One-Class SVM pomáhá identifikovat objekty, které se výrazně liší od tréninkové množiny.