Kuis: Beri tahu classifier dengan batas keputusannya

17

Diberikan adalah 6 batas keputusan di bawah ini. Batas keputusan adalah garis violett. Dots dan crosses adalah dua set data yang berbeda. Kita harus memutuskan yang mana adalah:

  • SVM linear
  • Kernelized SVM (kernel polinomial pesanan 2)
  • Perceptron
  • Regresi logistik
  • Neural Network (1 lapisan tersembunyi dengan 10 unit linear yang diperbaiki)
  • Jaringan Saraf Tiruan (1 lapisan tersembunyi dengan 10 unit tanh)

Saya ingin memiliki solusinya. Namun yang lebih penting, pahami perbedaannya. Misalnya saya akan mengatakan c) adalah SVM linier. Batas keputusan linear. Tetapi juga kita dapat menyeragamkan koordinat batas keputusan SVM linier. d) SVM Kernel, karena ini adalah urutan polinomial 2. f) Jaringan Saraf yang diperbaiki karena tepi "kasar". Mungkin a) regresi logistik: Ini juga merupakan classifier linier, tetapi berdasarkan probabilitas.

Batas keputusan

Miau Piau
sumber
1
Silakan tambahkan [self-study]tag & baca wiki -nya . Kami akan memberikan petunjuk untuk membantu Anda melepaskan diri.
gung - Reinstate Monica
Tapi bukan latihan saya harus tunduk. Saya membaca posting belajar mandiri, tapi saya pikir posting saya tidak apa-apa Saya memasukkan pemikiran saya sendiri dan saya juga memikirkannya. Saya pikir mungkin contoh ini juga menarik untuk orang lain.
Miau Piau
1
Terima kasih telah menambahkan tag. Ini tidak harus menjadi latihan agar kebijakan kami berlaku. Ini pertanyaan yang bagus; Saya membatalkannya & tidak memilih untuk menutup.
gung - Reinstate Monica
1
Mungkin membantu menjelaskan apa yang ditunjukkan plot. Saya pikir poinnya adalah dua set data yang digunakan untuk pelatihan, dan garis adalah batas antara area di mana titik baru akan dikategorikan ke dalam satu atau kelompok lain. Apakah itu benar?
Andy Clifton
1
Ini mungkin pertanyaan terbaik yang pernah saya lihat di papan Stackoverflow / Stackexchange dalam 5 tahun terakhir. Hebatnya, akan ada joki kode Javascript di Stackoverflow yang akan menutup pertanyaan ini karena "terlalu luas".
stackoverflowuser2010

Jawaban:

9

Sangat suka pertanyaan ini!

Hal pertama yang terlintas dalam pikiran adalah pembagian antara pengklasifikasi linear dan non-linear. Tiga pengklasifikasi adalah linear (linear svm, perceptron dan regresi logistik) dan tiga plot menunjukkan batas keputusan linier ( A , B , C ). Jadi mari kita mulai dengan itu.

Linier

Plot linier yang paling masuk akal adalah plot B karena memiliki garis dengan kemiringan. Ini aneh untuk regresi logistik dan svm karena mereka dapat meningkatkan fungsi kerugian mereka lebih dengan menjadi garis datar (yaitu menjadi lebih jauh dari (semua) poin). Dengan demikian, plot B adalah perceptron. Karena perceptron ouput adalah 0 atau 1, semua solusi yang memisahkan satu kelas dari yang lain sama-sama baik. Itu sebabnya tidak meningkatkan lebih lanjut.

Perbedaan antara plot _A) dan C lebih halus. Batas keputusan sedikit lebih rendah dalam plot A . SVM sebagai jumlah tetap vektor dukungan sementara fungsi kerugian dari regresi logistik ditentukan semua poin. Karena ada lebih banyak salib merah daripada titik biru, regresi logistik menghindari garis merah lebih banyak daripada titik biru. SVM linier hanya mencoba untuk menjauh dari vektor dukungan merah dari vektor dukungan biru. Itu sebabnya plot A adalah batas keputusan regresi logistik dan plot C dibuat menggunakan SVM linier.

Non-linear

Mari kita lanjutkan dengan plot dan pengklasifikasi non-linear. Saya setuju dengan pengamatan Anda bahwa plot F mungkin adalah ReLu NN karena memiliki batas paling tajam. Unit ReLu karena diaktifkan sekaligus jika aktivasi melebihi 0 dan ini menyebabkan unit output mengikuti garis linier yang berbeda. Jika Anda terlihat sangat, sangat baik, Anda dapat melihat sekitar 8 perubahan arah di garis jadi mungkin 2 unit memiliki dampak kecil pada hasil akhir. Jadi plot F adalah ReLu NN.

Tentang dua yang terakhir saya tidak begitu yakin. Baik NN tanh dan SVM polinomial kernelized dapat memiliki beberapa batasan. Plot D jelas diklasifikasikan lebih buruk. NN tanh dapat memperbaiki situasi ini dengan menekuk kurva secara berbeda dan menempatkan lebih banyak titik biru atau merah di wilayah luar. Namun, plot ini agak aneh. Saya kira bagian atas kiri diklasifikasikan sebagai merah dan bagian bawah kanan sebagai biru. Tetapi bagaimana bagian tengahnya diklasifikasikan? Seharusnya merah atau biru, tetapi kemudian salah satu batas keputusan tidak boleh ditarik. Dengan demikian satu-satunya pilihan yang mungkin adalah bahwa bagian luar diklasifikasikan sebagai satu warna dan bagian dalam sebagai warna lainnya. Itu aneh dan sangat buruk. Jadi saya tidak yakin dengan yang ini.

Penampilan Mari di petak E . Ini memiliki garis melengkung dan lurus. Untuk tingkat-2 SVM kernel, sulit (hampir tidak mungkin) untuk memiliki batas keputusan garis lurus karena jarak kuadrat secara bertahap mendukung 1 dari 2 kelas. Fungsi aktivasi tanh melayang-layang bisa menjadi jenuh sehingga kondisi tersembunyi terdiri dari 0 dan 1. Dalam kasus ini maka hanya 1 unit kemudian mengubah statusnya untuk mengatakan 0,5 Anda bisa mendapatkan batas keputusan linier. Jadi saya akan mengatakan bahwa plot E adalah tanh NN dan karenanya plot D adalah kernel SVM. Buruk untuk SVM tua yang miskin sekalipun.

Kesimpulan

A - Regresi Logistik
B - Perceptron
C - Linear SVM
D - Kernelized SVM (Polinomial kernel orde 2)
E - Neural Network (1 lapisan tersembunyi dengan 10 tanh unit)
F - Neural Network (1 lapisan tersembunyi dengan 10 unit linear yang diperbaiki)

Pieter
sumber
Terima kasih atas jawaban yang sangat bagus. Saya juga suka pertanyaannya. Ini memberi perspektif baru pada pengklasifikasi. SVM memiliki margin maksimal dan jadi masuk akal bahwa garis berada di tengah data. Tetapi mengapa ini juga berlaku untuk regresi logistik?
Miau Piau
Maksudmu mengapa itu lurus? Atau mengapa ada di tengah?
Pieter
Anda mengatakan "mereka dapat meningkatkan fungsi kerugian mereka lebih dengan menjadi garis datar" - mengapa ini untuk regresi logistik?
Miau Piau
1
Secara teori itu adalah solusi terbaik karena garis miring akan menurunkan probabilitas yang benar dari kelas yang lebih dekat lebih cepat daripada meningkatkan probabilitas kelas yang lebih jauh.
Pieter