Pelajari AI dengan Python · Pelajaran

Helah Kernel: RBF, Polinomial dan Sigmoid

Sebab kernel berfungsi, parameter gamma kernel RBF, pemilihan kernel untuk bentuk data yang berbeza.

Pelajaran 2 daripada 413 langkah

Helah Kernel: RBF, Polinomial dan Sigmoid ialah pelajaran Pelajari AI dengan Python percuma di CoddyKit. Ini ialah pelajaran 2 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.

Apabila Garis Tidak Mencukupi

SVM linear hanya melukis sempadan lurus. Banyak set data tidak boleh dipisahkan secara linear; contohnya, bulatan daripada satu kelas yang dikelilingi kelas lain tidak boleh dipisahkan dengan garis. Helah teras menyelesaikan masalah ini.

Memetakan kepada Dimensi Lebih Tinggi

Jika data tidak boleh dipisahkan dalam ruang asalnya, mengunjurkannya ke ruang berdimensi lebih tinggi boleh menjadikannya boleh dipisahkan. Lengkung dalam 2D boleh menjadi satah rata dalam 3D.

Helah Teras

Helah teras mengira kesamaan K(x, z) antara titik seolah-olah titik tersebut dipetakan kepada dimensi tinggi, tanpa melakukan pemetaan yang mahal itu. Hal ini menjadikan SVM tak linear lebih cekap.

Apakah Itu Fungsi Teras

Teras K(x, z) ialah fungsi yang mengembalikan hasil darab titik antara x dengan z dalam suatu ruang ciri berdimensi tinggi. Teras yang berbeza membawa maksud pemetaan ciri dan bentuk sempadan yang berbeza.

Teras RBF

Teras RBF (Gaussian) ialah pilihan lalai yang paling popular: K(x, z) = exp(-gamma * ||x - z||^2). Teras ini mengukur kesamaan yang berkurang mengikut jarak, lalu membenarkan sempadan melengkung yang fleksibel.

from sklearn.svm import SVC

model = SVC(kernel="rbf", gamma="scale", C=1.0)
model.fit(X, y)

Parameter gamma

gamma mengawal lebar RBF. gamma yang besar bermaksud setiap titik mempunyai pengaruh yang sempit, lalu menghasilkan sempadan berliku yang boleh menyebabkan terlebih suai. gamma yang kecil bermaksud pengaruh yang lebih luas dan sempadan yang lebih licin.

from sklearn.svm import SVC

wiggly = SVC(kernel="rbf", gamma=10)    # tight, can overfit
smooth = SVC(kernel="rbf", gamma=0.01)  # broad, may underfit

gamma dan C Bersama-sama

SVM RBF bergantung pada kedua-dua gamma (fleksibiliti sempadan) dan C (toleransi terhadap kesilapan). Kedua-duanya saling mempengaruhi, jadi biasanya anda menalanya bersama-sama menggunakan carian grid.

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVC

param = {"C": [0.1, 1, 10], "gamma": [0.01, 0.1, 1]}
gs = GridSearchCV(SVC(kernel="rbf"), param, cv=5)
gs.fit(X, y)

Teras Polinomial

Teras polinomial K(x, z) = (gamma * x . z + r)^degree memodelkan interaksi sehingga darjah yang dipilih. Gunakannya apabila anda menjangkakan interaksi ciri pada tertib yang diketahui.

from sklearn.svm import SVC

model = SVC(kernel="poly", degree=3, coef0=1, gamma="scale")
model.fit(X, y)

Teras Sigmoid

Teras sigmoid K(x, z) = tanh(gamma * x . z + r) berkelakuan seperti pengaktifan rangkaian neural. Teras ini kurang biasa dan tidak semestinya merupakan teras yang sah, jadi jarang menjadi pilihan pertama.

from sklearn.svm import SVC

model = SVC(kernel="sigmoid", gamma="scale", coef0=0)

Memilih Teras

Panduan:

  • Linear untuk data berdimensi tinggi atau data teks
  • RBF sebagai pilihan lalai umum yang kukuh untuk data tak linear
  • Polinomial apabila interaksi pada darjah yang diketahui adalah penting
  • Sigmoid jarang digunakan, untuk kes khusus

Sentiasa Skalakan Ciri

Teras seperti RBF bergantung pada jarak, jadi skala ciri amat penting. Sentiasa piawaikan ciri sebelum menggunakan SVM berteras, jika tidak ciri berskala besar akan mendominasi kesamaan.

from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC

pipe = make_pipeline(StandardScaler(), SVC(kernel="rbf"))
pipe.fit(X, y)

Semakan Pantas

Uji pengetahuan anda tentang teras.

Imbas Kembali

Imbas kembali: Helah teras mengira K(x, z) sebagai hasil darab titik berdimensi tinggi tanpa kos pemetaan, sekali gus membolehkan sempadan tak linear. RBF menggunakan exp(-gamma * ||x-z||^2), dengan gamma yang besar menyebabkan terlebih suai. Polinomial menangkap interaksi pada darjah-d. Sentiasa skalakan ciri sebelum menggunakan SVM berteras.

Percuma untuk bermula

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 “Helah Kernel: RBF, Polinomial dan Sigmoid” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pelajari AI dengan Python, termasuk “Helah Kernel: RBF, Polinomial dan Sigmoid”, 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 “Helah Kernel: RBF, Polinomial dan Sigmoid”?

Sebab kernel berfungsi, parameter gamma kernel RBF, pemilihan kernel untuk bentuk data yang berbeza. 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 2 daripada 4.

Berapa lamakah pelajaran “Helah Kernel: RBF, Polinomial dan Sigmoid” 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

  1. Teori SVM: Margin dan Vektor Sokongan
  2. Helah Kernel: RBF, Polinomial dan Sigmoid
  3. SVM untuk Pengelasan dengan sklearn
  4. SVM untuk Regresi (SVR)
← Kembali ke Pelajari AI dengan Python