Menggabungkan classifier dengan membalik koin

15

Saya sedang mempelajari kursus pembelajaran mesin dan slide kuliah berisi informasi apa yang saya temukan bertentangan dengan buku yang direkomendasikan.

Masalahnya adalah sebagai berikut: ada tiga pengklasifikasi:

  • classifier A memberikan kinerja yang lebih baik di kisaran ambang yang lebih rendah,
  • classifier B memberikan kinerja yang lebih baik dalam rentang ambang yang lebih tinggi,
  • classifier C apa yang kita dapatkan dengan membalik koin p dan memilih dari dua pengklasifikasi.

Apa yang akan menjadi kinerja classifier C, seperti yang terlihat pada kurva ROC?

Slide kuliah menyatakan bahwa hanya dengan membalik koin ini, kita akan mendapatkan magis " cembung lambung " dari kurva classifier A dan B's ROC.

Saya tidak mengerti poin ini. Hanya dengan membalik koin, bagaimana kita dapat memperoleh informasi?

Slide kuliah

slide kuliah

Apa kata buku itu

Buku yang direkomendasikan ( Data Mining ... oleh Ian H. Witten, Eibe Frank dan Mark A. Hall ) di sisi lain menyatakan bahwa:

Untuk melihat ini, pilih cutoff probabilitas tertentu untuk metode A yang memberikan tingkat positif benar dan salah dari tA dan fA, masing-masing, dan cutoff lain untuk metode B yang memberikan tB dan fB. Jika Anda menggunakan kedua skema ini secara acak dengan probabilitas p dan q, di mana p + q = 1, maka Anda akan mendapatkan tingkat positif benar dan salah p. tA + q. tB dan p. fA + q. fB. Ini merupakan titik yang terletak pada garis lurus yang menghubungkan titik-titik (tA, fA) dan (tB, fB), dan dengan memvariasikan p dan q Anda dapat melacak seluruh garis di antara kedua titik ini.

Dalam pemahaman saya, apa yang dikatakan buku itu adalah bahwa untuk benar-benar mendapatkan informasi dan mencapai lambung cembung kita perlu melakukan sesuatu yang lebih maju daripada hanya membalik koin p.

AFAIK, cara yang benar (seperti yang disarankan oleh buku) adalah sebagai berikut:

  1. kita harus menemukan ambang batas optimal Oa untuk classifier A
  2. kita harus menemukan ambang batas optimal Ob untuk classifier B
  3. definisikan C sebagai berikut:

    • Jika t <Oa, gunakan classifier A dengan t
    • Jika t> Ob, gunakan classifier B dengan t
    • Jika Oa <t <Ob, pilih antara classifier A dengan Oa dan B dengan Ob dengan probabilitas sebagai kombinasi linear di mana kita berada di antara Oa dan Ob.

Apakah ini benar? Jika ya, ada beberapa perbedaan utama dibandingkan dengan apa yang disarankan slide.

  1. Ini bukan membalik koin sederhana, tetapi algoritma yang lebih maju yang membutuhkan poin dan pilihan yang ditentukan secara manual berdasarkan wilayah mana kita jatuh.
  2. Itu tidak pernah menggunakan classifier A dan B dengan nilai ambang batas antara Oa dan Ob.

Bisakah Anda menjelaskan kepada saya masalah ini dan apa cara yang benar untuk memahaminya , jika pemahaman saya tidak benar?

Apa yang akan terjadi jika kita hanya cukup melempar koin p seperti yang akan disarankan slide? Saya akan berpikir bahwa kita akan mendapatkan kurva ROC antara A dan B, tetapi tidak pernah "lebih baik" daripada yang lebih baik pada titik tertentu.

Sejauh yang saya bisa lihat, saya benar-benar tidak mengerti bagaimana slide bisa benar. Perhitungan probabilistik di sisi kiri tidak masuk akal bagi saya.

Pembaruan: Menemukan artikel yang ditulis oleh penulis asli yang menemukan metode convex hull: http://www.bmva.org/bmvc/1998/pdf/p082.pdf

hyperknot
sumber
Dari bacaan saya tentang slide yang Anda posting dan kutipan buku, mereka tampaknya menggambarkan hal yang sama persis, dan slide tidak salah.
kardinal
Perhatikan bahwa juga tidak terlalu sulit untuk membangun simulasi untuk meyakinkan diri sendiri tentang fakta yang dinyatakan dalam slide. Satu-satunya kesulitan yang mungkin Anda miliki adalah membangun dua kurva ROC yang terlihat kira-kira seperti itu, tetapi dapat dikelola, katakanlah, menggunakan model campuran Gaussian untuk menghasilkan pengamatan dan beberapa aturan keputusan yang kurang optimal.
kardinal

Jawaban:

12

(Diedit)

Slide ceramahnya benar.

Metode A memiliki "titik optimal" yang memberikan tingkat positif benar dan salah (TPA, FPA dalam grafik). Poin ini akan sesuai dengan ambang, atau lebih umum [*] batas keputusan optimal untuk A. Semua sama berlaku untuk B. (Tapi ambang batas dan batas tidak terkait).

Terlihat bahwa classifier A berkinerja baik di bawah preferensi "meminimalkan false positive" (strategi konservatif) dan classifier B ketika kita ingin "memaksimalkan true positive" (strategi yang bersemangat).

Jawaban untuk pertanyaan pertama Anda, pada dasarnya adalah ya, kecuali bahwa probabilitas koin (dalam beberapa hal) sewenang-wenang. Clasiffier terakhir adalah:

xxhal

(Dikoreksi: sebenarnya, ceramahnya benar-benar benar, kita bisa membalik koinnya dalam keadaan apa pun. Lihat diagram)

hal

[*] Anda harus umum di sini: jika Anda berpikir dalam batasan skalar tunggal, semua ini tidak masuk akal; fitur satu dimensi dengan penggolong berbasis ambang tidak memberi Anda cukup derajat kebebasan untuk memiliki penggolong berbeda seperti A dan B, yang berkinerja di sepanjang kurva yang berbeda ketika paramen bebas (batas keputusan = ambang batas) bervariasi. Dengan kata lain: A dan B disebut "metode" atau "sistem", bukan "pengklasifikasi"; karena A adalah seluruh keluarga pengklasifikasi, ditentukan oleh beberapa parameter (skalar) yang menentukan batas keputusan, bukan hanya skalar]

Saya menambahkan beberapa diagram untuk membuatnya lebih jelas:

masukkan deskripsi gambar di sini

ttttSEBUAH=2ttB=4

Dalam skenario ini, maka, dapat dikatakan bahwa garis oranye yang terisi adalah "optimal A classifier" (di dalam keluarganya), dan sama untuk B. Tetapi orang tidak dapat mengatakan apakah garis oranye lebih baik daripada garis biru: seseorang melakukan lebih baik ketika kita menetapkan biaya tinggi untuk positif palsu, yang lain ketika negatif palsu jauh lebih mahal.

masukkan deskripsi gambar di sini

Sekarang, mungkin terjadi bahwa dua pengklasifikasi ini terlalu ekstrem untuk kebutuhan kita, kami ingin kedua jenis kesalahan memiliki bobot yang sama. Kami lebih suka, daripada menggunakan classifier A (titik oranye) atau B (titik biru) untuk mencapai kinerja yang ada di antara mereka. Seperti yang dikatakan oleh kursus, seseorang dapat mencapai hasil itu hanya dengan membalik koin dan memilih salah satu pengklasifikasi secara acak.

Hanya dengan membalik koin, bagaimana kita dapat memperoleh informasi?

Kami tidak mendapatkan informasi. Pengklasifikasi acak baru kami bukan sekadar "lebih baik" daripada A atau B, kinerjanya semacam rata-rata A dan B, dalam hal apa biaya yang ditetapkan untuk setiap jenis kesalahan. Itu bisa bermanfaat atau tidak bagi kita, tergantung pada berapa biaya kita.

AFAIK, cara yang benar (seperti yang disarankan oleh buku) adalah sebagai berikut ... Apakah ini benar?

hal

leonbloy
sumber
@leonboy Saya percaya bahwa x adalah ambang dan untuk nilai rendah dari x classifier A berfungsi paling baik. Untuk nilai tinggi, x classifier B berfungsi paling baik. Maksud saya untuk tingkat positif palsu yang diberikan tingkat positif sejati adalah yang tertinggi. Jika yang kita tahu adalah bahwa A bekerja paling baik hingga satu titik di mana mereka menyeberang dan B untuk semua ambang batas di atas itu maka setiap algoritma yang memberikan bobot kurang dari 1 ke A di wilayah antara FPa dan FPb di mana A memiliki TP yang lebih tinggi tidak dapat melakukan serta A. Jadi algoritma C harus jatuh di bawah A di wilayah itu.
Michael R. Chernick
Demikian pula di wilayah antara FPa dan FPb di mana TP lebih tinggi untuk B tidak ada algoritma dengan p lebih besar dari 0 akan berkinerja lebih baik dari B. Rumus untuk TPc benar tetapi rata-rata tertimbang tetap antara TPb dan TPa tidak bisa lebih besar dari TPa yang lebih besar dan TPb. Itu harus jatuh di antara mereka. Tetapi diagram selalu menunjukkan TPc di atas TPa dan TPb di seluruh wilayah dari FPa dan FPb. Apakah Anda melihat sesuatu di sini yang kami lewatkan? Saya tidak menemukannya dalam jawaban Anda.
Michael R. Chernick
1
Oke bola lampu padam! X adalah vektor dalam pikiran Anda daripada ambang skalar. Apakah itu benar-benar mengubah apa pun? FP aix adalah probabilitas skalar. Titik persimpangan saya adalah titik FP persamaan untuk A dan B. Mungkin ada banyak vektor X yang mengarah ke sana. Saya hanya mengatakan bahwa di setiap titik di sepanjang sumbu FP antara FPa dan FPb. TPc = p TPa + (1-p) TPb. Garis dalam plot berada di bidang TP vs FP. Bagaimana mungkin garis itu melewati titik-titik di atas kurva untuk A dan B ketika OP mempertanyakan (saya pikir benar)?
Michael R. Chernick
1
@ Michael: Saya pikir A dan B sebagai metode berbeda yang memberikan keputusan batas yang berbeda. Masing-masing memiliki parameter yang dapat disesuaikan (apa yang dalam 1D adalah ambang), parameternya independen, dan memberikan (untuk masing-masing) satu keluarga pengklasifikasi. Saya akan mencoba merencanakan diagram untuk mencoba menjelaskan, tunggu sebentar.
leonbloy
1
Saya memberikan leonbloy upvote untuk deskripsi cantik itu. Tapi saya suka komentar terakhir kardinal karena argumen itu jelas bagi saya dan setuju dengan pemikiran terbaru saya. @leobloy Satu hal yang hilang dari diagram Anda adalah plot poin untuk aturan acak yang mengalahkan keduanya. Saya kira Anda dapat menggambarkan aturan baru sebagai salah satu yang menimbang dua kesalahan secara berbeda tetapi tidak perlu dan saya pikir kurang membingungkan jika Anda meninggalkan argumen itu.
Michael R. Chernick
2

Saya setuju dengan alasan Anda. Jika Anda menggunakan classifier dengan membalik koin untuk memilih satu ketika Anda berada di antara titik A dan B titik Anda pada kurva akan selalu berada di bawah classifier yang lebih baik dan di atas yang lebih miskin dan tidak mungkin di atas keduanya! Pasti ada yang salah dengan diagram. Pada titik di mana 2 kurva ROC melewati algoritma pemilihan acak akan memiliki kinerja yang sama dengan kedua algoritma. Itu tidak akan di atasnya seperti yang digambarkan diagram itu.

Michael R. Chernick
sumber
1
Saya percaya slide ini benar. Jika Anda menggunakan dua prosedur keputusan yang berbeda dengan dua ambang yang berbeda dan kemudian mengambil keputusan secara acak, Anda akan mendapatkan kombinasi cembung yang akan memberikan titik di antara keduanya. Hal ini mungkin berada di atas kedua ( ! ) Dari kurva pada tingkat positif palsu yang sama. Ini karena ambang yang digunakan untuk setiap prosedur berbeda pada saat itu.
kardinal
1
Jadi A dan B dalam kombinasi cembung berbeda dari A dan B yang dipilih secara individual pada tingkat positif palsu. Saya hanya berpikir diagram itu membingungkan karena saya tidak melihat bahwa A dan B dipilih dari keluarga pengklasifikasi.
Michael R. Chernick
1
SEBUAHB
Saya percaya bahwa jawaban ini adalah benar, ditambahkan dengan komentar kardinal! Keluar dari area persimpangan mungkin terjadi, tetapi itu bukan metode. Saya telah menemukan kertas asli dari orang yang menemukan metode ini, dan itu menjelaskan dengan sangat baik! bmva.org/bmvc/1998/pdf/p082.pdf
hyperknot
@ zsero: Saya percaya bahwa bahkan Michael akan mengakui bahwa jawaban ini didasarkan pada pemahaman diagram pada saat jawaban diposting dan penafsirannya telah berubah sejak komentar dan jawaban lainnya muncul. Seperti yang digambarkan oleh gambar, seseorang dapat mencapai melalui pengacakan setiap titik pada garis mana pun antara titik pada kurva pertama dan titik pada yang kedua bahkan jika tingkat positif sejati yang dihasilkan mendominasi dua kurva lainnya untuk tingkat positif palsu tertentu.
kardinal