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∞∞
Izinkan saya mencoba memberikan penjelasan sederhana. Dalam notasi seperti itu, dapat berupa nomor baris tetapi dapat juga nomor fitur. Jika kita menulis maka menunjukkan nomor fitur, adalah vektor-kolom, adalah skalar dan adalah kolom -vektor. Jika kita menulis maka menunjukkan nomor baris, adalah skalar, adalah vektor-kolom dan adalah vektor-baris. Notasi di mana menunjukkan baris dan menunjukkan kolom lebih umum, jadi mari kita gunakan varian pertama.j y=β0+∑j=1:31βjϕj(x) j y βj ϕj(x) yj=βϕj(x) j yj β ϕj(x) i j
Memperkenalkan fungsi basis Gaussian ke dalam regresi linier, (skalar) sekarang tidak tergantung pada nilai numerik fitur (vektor), tetapi pada jarak antara dan pusat semua titik lain . Sedemikian rupa tidak tergantung pada apakah nilai fitur -th pengamatan -th tinggi atau kecil, tetapi tergantung pada apakah nilai fitur -th dekat atau jauh dari rata-rata untuk itu -feature . Jadi bukan parameter, karena tidak dapat disetel. Ini hanya properti dari dataset. Parameterx i x i μ i y i j i j j μ i j μ j σ 2 y y σ 2yi xi xi μi yi j i j j μij μj σ2 adalah nilai skalar, ia mengontrol kelancaran dan dapat disetel. Jika kecil, perubahan kecil dalam jarak akan memiliki efek besar (ingat gaussian curam: semua titik yang sudah berada pada jarak kecil dari pusat memiliki nilai kecil ). Jika besar, perubahan kecil dalam jarak akan memiliki efek rendah (ingat flat gaussian: penurunan dengan meningkatnya jarak dari pusat lambat). Nilai optimal dari harus dicari (biasanya ditemukan dengan validasi silang).y y σ2
sumber
Fungsi dasar Gaussian dalam pengaturan multivariat memiliki pusat multivariat. Dengan asumsi bahwa Anda , maka juga. Gaussian harus multivarian, yaitu mana adalah sebuah matriks kovarians. Indeks bukan merupakan komponen dari vektor, ini hanya vektor ke- . Demikian pula, adalah matriks . μ j ∈ R 31 e ( x - μ j ) ′ Σ - 1 j ( x - μ j ) Σ j ∈ R 31 × 31 j j Σ j jx∈R31 μj∈R31 e(x−μj)′Σ−1j(x−μj) Σj∈R31×31 j j Σj j
sumber