Python'da tam bir SVM uygulaması yazmaya çalışıyorum ve Lagrange katsayılarını hesaplamak için birkaç sorunum var.
Önce doğru yolda olduğumdan emin olmak için algoritmadan anladığımı tekrar yazmama izin verin.
Eğer isimli bir veri seti ve sınıf etikettir sonrax i ∀ i , y i ( w T x i + b ) ≥ 1
Bu yüzden sadece bir optimizasyon problemini çözmemiz gerekiyor
simge küçült
y_i'ye tabi
Lagrange katsayıları açısından bu, , ve ve en aza indirgeme anlamına gelir:
Şimdi
Bu yüzden Python kullanarak optimizasyon problemini çözmeye çalışıyorum ve bulabildiğim tek ücretsiz pakete cvxopt deniyor .
Bunu çözmek için biraz yardım istiyorum, bu konuda iyi bir örnek bulamadım ve teoriyi anlasam da, koda çevirirken zorlanıyorum (tam tersi programlama arka planından daha fazla).
Bir noktada ancak bunu kodda çözme konusunda ne anlama geldiğinden emin değilim.
Herhangi bir yardım büyük mutluluk duyacağız, bunu Python'da nasıl uygulayacağım konusunda gerçekten kayboldum. Optimizasyon problemini çözmek için daha iyi bir modülünüz varsa, bu konuyu da okumak istiyorum.