Untuk data linear ini tentu saja tidak membantu, tetapi untuk data non-linear, ini sepertinya selalu berguna. Menggunakan pengklasifikasi linier jauh lebih mudah daripada non-linear dalam hal waktu pelatihan dan skalabilitas.
@ BartoszKP sudah menjelaskan mengapa trik kernel bermanfaat. Untuk sepenuhnya menjawab pertanyaan Anda, namun saya ingin menunjukkan, bahwa kernelisasi bukan satu-satunya pilihan untuk menangani data yang tidak dapat dipisahkan secara linear.
Setidaknya ada tiga alternatif yang baik dan umum untuk deliniarisasi model:
- Metode berbasis jaringan netral, tempat Anda menambahkan satu (atau lebih) lapisan unit pemrosesan, dapat mengubah data Anda menjadi kasing yang dapat dipisahkan secara linear. Dalam kasus paling sederhana itu adalah lapisan berbasis sigmoid, yang menambahkan non-linearitas ke proses. Setelah diinisialisasi secara acak mereka mendapatkan pembaruan selama optimasi berbasis gradien dari lapisan atas (yang sebenarnya memecahkan masalah linier).
- Khususnya - teknik pembelajaran mendalam dapat digunakan di sini untuk menyiapkan data untuk klasifikasi linier lebih lanjut. Ini adalah ide yang sangat mirip dengan yang sebelumnya, tetapi di sini Anda pertama kali melatih lapisan pemrosesan Anda untuk menemukan titik awal yang baik untuk fine-tuning lebih lanjut berdasarkan pelatihan beberapa model linier.
- Proyeksi acak - Anda dapat mengambil sampel proyeksi (non linier) dari beberapa ruang yang telah ditentukan dan melatih classifier linier di atasnya. Gagasan ini sangat dieksploitasi dalam pembelajaran mesin ekstrem , di mana solver linier yang sangat efisien digunakan untuk melatih pengelompokan sederhana pada proyeksi acak, dan mencapai kinerja yang sangat baik (pada masalah non linier dalam klasifikasi dan regresi, lihat contoh pembelajaran ekstrem mesin ).
Singkatnya - kernelisasi adalah teknik delinearisasi yang hebat, dan Anda dapat menggunakannya, ketika masalahnya tidak linier, tetapi ini tidak boleh buta "jika kemudian" appraoch. Ini hanyalah salah satu dari beberapa metode menarik, yang dapat menghasilkan berbagai hasil, tergantung pada masalah dan persyaratan. Secara khusus, ELM cenderung menemukan solusi yang sangat mirip dengan yang diberikan oleh kernel SVM sementara pada saat yang sama dapat dilatih baris-baris besarnya lebih cepat (sehingga skala jauh lebih baik daripada SVM kernel).
Saya akan mencoba memberikan jawaban non-teknis untuk pertanyaan Anda.
Memang, linear harus lebih disukai dan harus menjadi pilihan pertama karena alasan yang Anda sebutkan, waktu pelatihan, skalabilitas, ditambah kemudahan dalam menafsirkan model akhir, pilihan bekerja pada primal atau ganda, lebih banyak toleransi untuk overfitting dll.
Jika model linier tidak menghasilkan kinerja yang memuaskan, maka Anda dapat mencoba solusi non-linear. Beberapa trade-off yang perlu dipertimbangkan termasuk:
sumber