Ketika Anda bingung, izinkan saya mulai dengan menyatakan masalahnya dan menjawab pertanyaan Anda satu per satu. Anda memiliki ukuran sampel 10.000 dan setiap sampel dijelaskan oleh vektor fitur . Jika Anda ingin melakukan regresi menggunakan fungsi basis radial Gaussian kemudian mencari fungsi bentuk mana adalah fungsi dasar Anda. Khususnya, Anda perlu menemukan bobot sehingga untuk parameter yang diberikan dan Anda meminimalkan kesalahan antara dan prediksi yang sesuai = f ( x ) = Σ j w j * g j ( x ; μ j , σ j ) , j = 1 .. m g i m w j μ j σ j y y f ( x )x∈R31
f( x ) = ∑jwj∗ gj( x ; μj, σj) , j = 1 .. m
gsayamwjμjσjyy^f( x^) - biasanya Anda akan meminimalkan kesalahan kuadrat terkecil.
Apa sebenarnya parameter subscript j Mu?
Anda perlu menemukan fungsi dasar . (Anda masih perlu menentukan angka ) Setiap fungsi dasar akan memiliki dan a (juga tidak dikenal). Subskrip berkisar dari hingga .g j m μ j σ j j 1 mmgjmμjσjj1m
Apakah adalah vektor?μj
Ya, itu adalah poin dalam . Dengan kata lain, itu menunjuk suatu tempat di ruang fitur Anda dan a harus ditentukan untuk masing-masing fungsi dasar . μmR31μm
Saya pernah membaca bahwa ini mengatur lokasi fungsi basis. Jadi bukankah ini maksud dari sesuatu?
Fungsi dasar berpusat di . Anda harus memutuskan di mana lokasi ini. Jadi tidak, itu belum tentu berarti apa-apa (tapi lihat lebih jauh ke bawah untuk cara untuk menentukannya) μ jjthμj
Sekarang untuk sigma yang "mengatur skala spasial". Apa itu sebenarnya?
σ lebih mudah dipahami jika kita beralih ke fungsi basis itu sendiri.
Ini membantu untuk memikirkan fungsi basis radial Gaussian dalam dimenson yang lebih rendah, katakan atau . Dalam fungsi basis radial Gaussian hanyalah kurva lonceng yang terkenal. Lonceng tentu saja bisa sempit atau lebar. Lebar ditentukan oleh - semakin besar adalah semakin sempit bentuk lonceng. Dengan kata lain, menskalakan lebar bentuk lonceng. Jadi untuk = 1 kita tidak memiliki skala. Untuk kami memiliki skala besar.R 2 R 1 σσσσσR1R2R1σσσσσ
Anda mungkin bertanya apa tujuan dari ini. Jika Anda memikirkan bel yang menutupi sebagian ruang (garis dalam ) - bel yang sempit hanya akan mencakup sebagian kecil dari garis *. Poin dekat dengan pusat bel akan memiliki nilai besar. Poin yang jauh dari pusat akan memiliki nilai lebih kecil . Penskalaan memiliki efek mendorong titik lebih jauh dari pusat - karena bel menyempit poin akan terletak lebih jauh dari pusat - mengurangi nilai x g j (x) g j (x) g j (x)R1xgj(x)gj(x)gj(x)
Setiap fungsi dasar mengubah input vektor x menjadi nilai skalar
Ya, Anda mengevaluasi fungsi dasar di beberapa titik .x∈R31
exp(−∥x−μj∥222∗σ2j)
Anda mendapatkan skalar sebagai hasilnya. Hasil skalar tergantung pada jarak titik dari pusat diberikan olehdan skalar .xμj∥x−μj∥σj
Saya telah melihat beberapa implementasi yang mencoba nilai-nilai seperti .1, .5, 2.5 untuk parameter ini. Bagaimana nilai-nilai ini dihitung?
Ini tentu saja merupakan salah satu aspek yang menarik dan sulit menggunakan fungsi basis radial Gaussian. jika Anda mencari di web Anda akan menemukan banyak saran tentang bagaimana parameter ini ditentukan. Saya akan menguraikan secara sederhana satu kemungkinan berdasarkan pengelompokan. Anda dapat menemukan ini dan beberapa saran lainnya secara online.
Mulailah dengan mengelompokkan 10.000 sampel Anda (Anda dapat menggunakan PCA untuk mengurangi dimensi diikuti oleh k-Means clustering). Anda dapat membiarkan menjadi jumlah cluster yang Anda temukan (biasanya menggunakan validasi silang untuk menentukan yang terbaik ). Sekarang, buat fungsi basis radial untuk setiap cluster. Untuk setiap fungsi basis radial, biarkan menjadi pusat (mis. Mean, centroid, dll) dari kluster. Biarkan merefleksikan lebar cluster (mis. Radius ...) Sekarang lanjutkan dan lakukan regresi Anda (deskripsi sederhana ini hanya gambaran umum - perlu banyak kerja di setiap langkah!)mmgjμjσj
* Tentu saja, kurva lonceng didefinisikan dari - hingga sehingga akan memiliki nilai di mana-mana pada baris tersebut. Namun, nilai yang jauh dari pusat dapat diabaikan∞∞