Naif Bayes olasılıkları içerir: kelimeleri iki kez saymalı mıyım?


12

Kendi Naive Bayes çanta modelimi prototiplendiriyorum ve özellik olasılıklarını hesaplamakla ilgili bir sorum vardı.

Diyelim ki iki dersim var, herkesin kullandığı için spam değil spam kullanacağım. Örnek olarak "viagra" kelimesini ele alalım. Eğitim setimde 10 e-posta var, 5 spam ve 5 spam olmayan. "spam", 5 spam dokümanın tamamında görünür. Eğitim belgelerinden birinde 3 kez ortaya çıkıyor (sorum budur), bu yüzden toplamda 7 görünüm. Spam olmayan eğitim kümesinde 1 kez görünür.

Eğer p (viagra | spam) tahmin etmek istiyorsam:

p (viagra | spam) = 5 spam belgesi, viagra / 5 spam belgesi içeriyor = 1

Başka bir deyişle, bir belgenin bir kez yerine viagra'dan 3 kez bahsetmesi gerçekten önemli değil mi?


Edit: İşte yazar sadece ortaya koydu yaklaşım kullanır bir blog yazısı: http://ebiquity.umbc.edu/blogger/2010/12/07/naive-bayes-classifier-in-50-lines/

Ve burada yazarın dediği bir blog yazısı: p (viagra | spam) = 7 viagra spam sözü / 8 toplam sözü http://www.nils-haldenwang.de/computer-science/machine-learning/how-to-apply -naive-bayes-sınıflandırıcılar-to-belge-sınıflandırma-problemler

Ve sonra aşağıdaki cevaplardan biri bunun olması gerektiğini söylüyor: p (viagra | spam) = Spam'de 7 viagra / spam'da toplam terim sayısı

Herkes bu konuda fikir veren bir kaynağa bağlantı verebilir mi?

Yanıtlar:


4

Başka bir deyişle, bir belgenin bir kez yerine viagra'dan 3 kez bahsetmesi gerçekten önemli değil mi?

Farkeder. Multinomial Naif Bayes modeli ise, dikkate bir belirteç her oluşumunu alır Bernoulli Naif Bayes modeli değildir (diğer bir deyişle ikinci model, "Viagra" 3 oluşumları "Viagra" 1 meydana aynıdır).

{1} adlı iki karşılaştırma tablosu ve bir karşılaştırma tablosu:

resim açıklamasını buraya girin

resim açıklamasını buraya girin

resim açıklamasını buraya girin

{1}, metin sınıflandırması için Naive Bayes ile Multinomial Naive Bayes modelini ve Bernoulli Naive Bayes modelini düzgün bir şekilde tanıtmaktadır.


Referanslar:

  • {1} Christopher D. Manning, Prabhakar Raghavan ve Hinrich Schütze. " Bilgi Erişimine Giriş. " 2009, bölüm 13 Metin sınıflandırma ve Naive Bayes .

1

Uyguladığınız özel naif modele bağlıdır. Genel olarak, Metin Sınıflandırma için, terimlerin tekrarını göz önünde bulundurmak istersiniz, bu yüzden cevap evettir.

Diğer bir nokta da, belgeyi olay alanına göre olasılığı göz önünde bulundurmanızdır. Ayrıca boşluk terimine göre de yapabilirsiniz:

p (viagra | spam) = sınıfta 5 kez spam terimi / sınıfta 50 terim

Bu [bildiri] 'de çok fazla bilginiz var ( http://echo.edres.org:8080/betsy/mccallum1.pdf )


0

Bence p (viagra | spam) ile tam olarak ne demek istediğine ve verileri nasıl modellediğine bağlı.

Yazıldığı gibi, anlamınızı 'bir mesajda viagra kelimesinin en az bir kez bahsedilme olasılığı, bu mesaj spam olduğu göz önüne alındığında' olarak yorumluyorum. Bu durumda, evet, bir belgenin viagra'dan üç kez bahsetmiş olmasının hiçbir etkisi yoktur. Bu tür gerçeklere dikkat etmeyen bir model tanımladınız.

Tabii ki, farklı bir modeliniz olabilir. Örneğin, viagra ikili bir değişkenle (mevcut / yok) temsil etmek yerine, kelimenin mesajda kaç kez göründüğünü sayabilir. Bu durumda, ham verilerinizden, aşağıdaki gibi bir şeyin ampirik sıklığını tahmin edersiniz

p (viagra = 0 | spam) = 0

p (viagra = 1 | spam) = 4/5

p (viagra = 2 | spam) = 0

p (viagra = 3 | spam) = 1/5

vb.

Bunu yapmanın daha iyi bir yolu olduğunu söylemiyorum. Sadece, viagra'dan üç kez bahsettiğini sezginizin alakalı olduğu alternatif bir durumu izliyorum.

Daha pratik bir örnek, bir belgedeki bir kelimenin sıklığına çok dikkat eden bir yöntem olan 'Terim Sıklığı – Ters Belge Sıklığı' olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.