SVM untuk Regresi (SVR)
Tiub epsilon SVR, nu-SVR, perbandingan SVR dengan regresi linear pada data tak linear.
SVM untuk Regresi (SVR) ialah pelajaran Pelajari AI dengan Python percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pelajari AI dengan Python, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
SVM Juga Boleh Melakukan Regresi
Idea jarak pemisah juga boleh digunakan untuk regresi. Regresi Vektor Sokongan (SVR) memadankan suatu fungsi sambil memastikan ramalan berada dalam jalur toleransi dan mengabaikan ralat kecil.
Tiub Tidak Sensitif terhadap Epsilon
SVR melukis tiub epsilon di sekeliling fungsi yang diramalkan. Titik dalam tiub menyumbang kerugian sifar; hanya titik di luar yang dikenakan penalti. Ini memfokuskan model pada ralat yang bermakna.
Mengapa Tiub Membantu
Dengan mengabaikan penyimpangan kecil, SVR tidak mudah terlebih muat pada hingar dan menghasilkan padanan yang lebih licin serta kukuh. Lengkungan kecil dalam had toleransi tidak mempengaruhi model sama sekali.
Penggunaan Asas SVR
SVR menyerupai SVC dan menyokong fungsi kernel yang sama. RBF ialah nilai lalai yang lazim untuk regresi bukan linear.
from sklearn.svm import SVR
model = SVR(kernel="rbf", C=100, epsilon=0.1, gamma="scale")
model.fit(Xtr, ytr)
print(model.score(Xte, yte))Parameter epsilon
epsilon menetapkan lebar tiub. Nilai epsilon yang lebih besar bermaksud jalur yang lebih lebar, vektor sokongan yang lebih sedikit dan model yang lebih ringkas. Nilai epsilon yang lebih kecil memadankan data dengan lebih rapat.
from sklearn.svm import SVR
wide = SVR(epsilon=1.0) # tolerant, simpler
tight = SVR(epsilon=0.01) # fits closelyParameter C dalam SVR
Seperti dalam pengelasan, C mengawal penalti untuk titik di luar tiub. Nilai C yang lebih besar mengenakan penalti yang lebih berat terhadap ralat tersebut lalu menghasilkan padanan yang lebih ketat; nilai C yang lebih kecil memberikan regularisasi yang lebih kuat untuk lengkung yang lebih licin.
from sklearn.svm import SVR
flexible = SVR(C=1000) # fits training closely
smooth = SVR(C=0.1) # more regularizedepsilon berbanding C: Dua Pelaras yang Berbeza
Ingat perbezaannya: epsilon mengawal lebar tiub (jumlah ralat yang diabaikan), manakala C mengawal penalti untuk ralat yang berada di luar tiub. Tala kedua-duanya.
Penskalaan Juga Penting untuk SVR
Seperti semua SVM, SVR bergantung pada jarak dan sensitif terhadap skala. Sentiasa piawaikan ciri, dan pertimbangkan untuk menskalakan sasaran juga bagi mendapatkan latihan yang stabil.
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVR
pipe = make_pipeline(StandardScaler(), SVR(kernel="rbf"))
pipe.fit(Xtr, ytr)Menala SVR
Lakukan carian grid terhadap C, gamma dan epsilon untuk mencari fit terbaik. Gunakan metrik regresi seperti nilai negatif bagi mean kuasa dua ralat untuk score.
from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVR
param = {
"C": [1, 10, 100],
"gamma": [0.01, 0.1, 1],
"epsilon": [0.01, 0.1, 0.5],
}
gs = GridSearchCV(SVR(), param, cv=5, scoring="neg_mean_squared_error")
gs.fit(Xtr, ytr)Varian nu-SVR
NuSVR menggantikan epsilon dengan nu (antara 0 dan 1), yang mengawal pecahan vektor sokongan dan ralat latihan secara langsung, iaitu parameterisasi alternatif yang lebih mudah difahami oleh sesetengah pengguna.
from sklearn.svm import NuSVR
model = NuSVR(nu=0.5, C=100, kernel="rbf")
model.fit(Xtr, ytr)Bila Hendak Menggunakan SVR
SVR berfungsi dengan baik pada set data kecil hingga sederhana yang mempunyai corak bukan linear dan apabila ketahanan terhadap hingar penting. Untuk data yang sangat besar, utamakan model linear atau penggalakan kecerunan kerana kaedah tersebut lebih mudah diskalakan.
Semakan Pantas
Uji pengetahuan anda tentang SVR.
Ringkasan
Ringkasan: SVR memadankan suatu fungsi dalam tiub tidak sensitif terhadap epsilon, tempat titik di dalamnya mempunyai kos sifar. epsilon menetapkan lebar tiub (lebih besar = lebih ringkas), manakala C mengenakan penalti terhadap titik di luarnya. Sentiasa skalakan ciri, tala C/gamma/epsilon, dan pertimbangkan NuSVR sebagai parameterisasi alternatif.
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 53
- Pelajaran
- 225
Soalan Lazim
Adakah pelajaran “SVM untuk Regresi (SVR)” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pelajari AI dengan Python, termasuk “SVM untuk Regresi (SVR)”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “SVM untuk Regresi (SVR)”?
Tiub epsilon SVR, nu-SVR, perbandingan SVR dengan regresi linear pada data tak linear. Anda berlatih Pelajari AI dengan Python menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Pelajari AI dengan Python?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Pelajari AI dengan Python di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.
Berapa lamakah pelajaran “SVM untuk Regresi (SVR)” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pelajari AI dengan Python ini?
Ya. Setiap pelajaran Pelajari AI dengan Python menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Teori SVM: Margin dan Vektor Sokongan
- Helah Kernel: RBF, Polinomial dan Sigmoid
- SVM untuk Pengelasan dengan sklearn
- SVM untuk Regresi (SVR)