ความน่าจะเป็นของ Naive Bayes: ฉันควรนับจำนวนคำสองเท่าหรือไม่


12

ฉันทำต้นแบบของ Naive Bayes bag model และฉันมีคำถามเกี่ยวกับการคำนวณความน่าจะเป็นของคุณลักษณะ

สมมติว่าฉันมีสองคลาสฉันจะใช้สแปมและไม่ใช่สแปมเพราะนั่นคือสิ่งที่ทุกคนใช้ และขอยกคำว่า "ไวอากร้า" เป็นตัวอย่าง ฉันมี 10 อีเมลในชุดการฝึกอบรมของฉัน 5 สแปมและ 5 ไม่ใช่สแปม "viagra" ปรากฏในเอกสารสแปมทั้ง 5 ฉบับ หนึ่งในเอกสารการฝึกอบรมปรากฏขึ้น 3 ครั้ง (นี่คือสิ่งที่คำถามของฉันเป็นเรื่องเกี่ยวกับ) ดังนั้นนั่นจึงเป็นลักษณะที่ปรากฏ 7 ประการในจดหมายขยะทั้งหมด ในชุดฝึกอบรมที่ไม่ใช่สแปมจะปรากฏขึ้น 1 ครั้ง

หากฉันต้องการประมาณ p (viagra | spam) เพียง:

p (viagra | spam) = 5 เอกสารสแปมประกอบด้วย viagra / 5 เอกสารสแปมทั้งหมด = 1

กล่าวอีกนัยหนึ่งความจริงที่ว่าเอกสารหนึ่งฉบับกล่าวถึงไวอากร้า 3 ครั้งแทนที่จะเป็นครั้งเดียวไม่สำคัญหรือไม่?


แก้ไข: นี่คือโพสต์บล็อกที่ผู้เขียนใช้วิธีที่ฉันเพิ่งวาง: http://ebiquity.umbc.edu/blogger/2010/12/07/naive-bayes-classifier-in-50-lines/

และนี่คือโพสต์บล็อกที่ผู้เขียนกล่าวว่า: p (viagra | spam) = 7 viagra spam mentions / 8 การกล่าวถึงทั้งหมด http://www.nils-haldenwang.de/computer-science/machine-learning/how-to-apply -naive-Bayes-ลักษณนามต่อการจำแนกปัญหาเอกสาร

จากนั้นหนึ่งในคำตอบด้านล่างบอกว่าควรจะเป็น: p (viagra | spam) = 7 ไวอากร้ากล่าวถึงในจดหมายขยะ / จำนวนคำทั้งหมดในจดหมายขยะ

ทุกคนสามารถเชื่อมโยงไปยังแหล่งที่ให้ความเห็นเกี่ยวกับเรื่องนี้ได้หรือไม่?

คำตอบ:


4

กล่าวอีกนัยหนึ่งความจริงที่ว่าเอกสารหนึ่งฉบับกล่าวถึงไวอากร้า 3 ครั้งแทนที่จะเป็นครั้งเดียวไม่สำคัญหรือไม่?

มันสำคัญ. พหุ Naive Bayes รุ่นคำนึงถึงการเกิดขึ้นของสัญญาณแต่ละขณะที่รุ่น Bernoulli Naive Bayesไม่ได้ (เช่นสำหรับรุ่นหลัง 3 การเกิดขึ้นของ "ไวอากร้า" เป็นเช่นเดียวกับการเกิดขึ้นของ 1 "ไวอากร้า")

นี่คือภาพประกอบสองภาพและตารางเปรียบเทียบจาก {1}:

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

{1} แนะนำ Naive Bayes อย่างเป็นระเบียบเพื่อจัดหมวดหมู่ข้อความรวมถึงโมเดล Multinomial Naive Bayes และโมเดล Bernoulli Naive Bayes


อ้างอิง:


1

ขึ้นอยู่กับรุ่นไร้เดียงสาเฉพาะที่คุณใช้ โดยทั่วไปสำหรับการจำแนกข้อความคุณต้องการพิจารณาการทำซ้ำคำดังนั้นคำตอบคือใช่

อีกประเด็นหนึ่งคือคุณกำลังพิจารณาความน่าจะเป็นโดยพิจารณาจากพื้นที่เหตุการณ์เอกสาร คุณสามารถทำได้โดยขึ้นอยู่กับคำว่า space:

p (viagra | spam) = 5 ครั้งคำสแปมในคลาสสแปม / 50 คำในชั้นเรียน

คุณมีข้อมูลจำนวนมากใน [กระดาษ] นี้ ( http://echo.edres.org:8080/betsy/mccallum1.pdf )


0

ฉันคิดว่ามันขึ้นอยู่กับว่าคุณหมายถึงอะไรโดย p (viagra | spam) และวิธีการสร้างแบบจำลองข้อมูล

ตามที่เขียนไว้ฉันจะตีความความหมายของคุณว่า 'ความน่าจะเป็นที่คำไวอากร้าพูดถึงอย่างน้อยหนึ่งครั้งในข้อความเนื่องจากข้อความนี้เป็นสแปม' ในกรณีนี้ใช่ความจริงที่ว่าเอกสารหนึ่งฉบับกล่าวถึงไวอากร้าสามครั้งไม่มีผล คุณได้กำหนดรูปแบบที่ไม่สนใจข้อเท็จจริงดังกล่าว

แน่นอนคุณอาจมีรูปแบบที่แตกต่างกัน ตัวอย่างเช่นแทนที่จะเป็นไวอากร้าซึ่งเป็นตัวแทนของตัวแปรไบนารี (ปัจจุบัน / ขาดหายไป) ก็สามารถเป็นตัวแทนของจำนวนครั้งที่คำปรากฏในข้อความ ในกรณีนั้นจากข้อมูลดิบของคุณคุณจะประมาณความถี่เชิงประจักษ์ของบางสิ่งเช่น

p (viagra = 0 | spam) = 0

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

p (viagra = 2 | spam) = 0

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

เป็นต้น

ฉันไม่ได้บอกว่าเป็นวิธีที่ดีกว่าที่จะทำ ฉันแค่แสดงให้เห็นถึงสถานการณ์ทางเลือกที่ปรีชาของคุณที่เห็นไวอากร้ากล่าวถึงสามครั้งนั้นเกี่ยวข้องกัน

ตัวอย่างที่เป็นประโยชน์มากขึ้นอาจเป็น 'ความถี่ความถี่ - ความถี่เอกสารผกผัน' ซึ่งเป็นวิธีการที่ให้ความสนใจอย่างมากกับความถี่ของคำในเอกสาร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.