Apakah Bayesian Classifier merupakan pendekatan yang baik untuk teks dengan meta-data numerik?

8

Saya mencoba membuat pendekatan untuk mendeteksi iklan penipuan di situs web saya. Saya pikir masalahnya ada banyak kesamaan dengan mendeteksi email spam (yang mana Bayesian classifier adalah solusi umum) karena banyak sinyal yang mengindikasikan penipuan akan ditemukan dalam teks iklan.

Namun, ada beberapa informasi lain yang bisa menjadi indikator scam yang baik, tapi saya tidak yakin apakah / bagaimana classifier Bayes dapat menggunakannya, karena mereka melibatkan nilai numerik (dengan nilai pada ekstrem rentang yang mencurigakan) daripada dari nilai-nilai biner sederhana yang sesuai dengan ada atau tidak adanya kata dalam teks.

Misalnya, banyak iklan penipuan memiliki harga item yang ditetapkan sangat rendah (untuk menarik banyak tampilan), jadi saya ingin harga yang lebih rendah dari harga normal menjadi indikator kuat bahwa iklan tersebut mungkin merupakan penipuan.

Apakah Bayes masih cocok untuk kebutuhan saya, jika tidak, bisakah Anda merekomendasikan pendekatan yang berbeda?

kotak kode
sumber

Jawaban:

9

Tentu Anda bisa menggunakan Naif Bayes. Anda hanya perlu menentukan apa bentuk distribusi kondisional akan miliki.

Saya dapat memikirkan beberapa opsi:

  1. Distribusi biner: Binari data Anda menggunakan ambang, dan Anda kembali ke masalah yang sudah Anda selesaikan.
  2. Distribusi parametrik: Jika ada beberapa distribusi parametrik yang masuk akal, misalnya Gaussian, Anda dapat menggunakannya.
  3. Distribusi non-parametrik: Tentukan tempat sampah untuk data numerik dan gunakan mereka untuk membangun distribusi non-parametrik empiris.
Bitwise
sumber
7

Pengklasifikasi Naif Bayes dapat mengakomodasi variabel numerik serta variabel diskrit tanpa terlalu banyak masalah. Pada dasarnya ada tiga pendekatan: (i) diskritkan nilai numerik (ii) gunakan model parametrik dari setiap atribut numerik (misalnya Gaussian) atau (iii) gunakan penduga kepadatan non-parametrik (misalnya Parzen) untuk setiap atribut numerik.

lihat misalnya "pengklasifikasi Naif Bayes yang berkinerja baik dengan variabel kontinu" oleh Remco Bouckaert

Dikran Marsupial
sumber
1
@LOL jawaban yang sama seperti milik saya dengan urutan pilihan yang sama dan contoh yang sama ... hah apa peluangnya? Saya kira kita semua berpikir sama
Bitwise
1
Jelas saya seharusnya tidak menghabiskan waktu lima menit untuk melacak referensi; o)
Dikran Marsupial
3

Naif Bayes tentu saja dapat bekerja dengan atribut numerik dan juga atribut yang terpisah (perhatian modulo tentang kesesuaian distribusi yang diasumsikan sebagaimana disebutkan dalam jawaban lain). Namun, Anda harus mempertimbangkan apakah Anda benar-benar ingin menggunakan Naive Bayes, karena metodologi non-diskriminatif akan semakin berkurang seiring Anda menggabungkan data dari berbagai sumber, dengan potensi korelasi yang kuat.

Jika Anda ingin mempertahankan interpretasi probabilistik, pertimbangkan regresi logistik, yang merupakan analog yang tepat dari Naif Bayes dengan tujuan diskriminatif daripada generatif (lihat makalah ini misalnya: Regresi Logistik Vs Naif Bayes . Anda dapat menemukan berbagai penerapannya: I seperti Mallet , jika Anda dapat menggunakan java (dapat diakses sebagai alat baris perintah atau API).

Jika interpretasi probabilistik yang ketat tidak diperlukan, Anda dapat menggunakan SVM. Ada banyak implementasi ini, tetapi standar de-facto (dengan varian yang tersedia di sebagian besar bahasa) adalah LibSVM .

Ben Allison
sumber
1

Anda dapat menggunakan nilai numerik dengan mudah. Dalam istilah P (Fitur | scam = Ya) Anda bisa meletakkan distribusi gaussian atau distribusi empiris lainnya dari data pelatihan (untuk misalnya mengurutkan data, membuat fungsi yang mengembalikan persentil dari nilai numerik input yang diberikan). Ini adalah tulisan yang menggambarkan hal itu

Brokoli
sumber