สวัสดีครับหลังจากบทความที่แล้ว(https://cakeknowledgeblogs.blogspot.com/2019/08/naive-bayes-classification-1.html) ได้แชร์ พื้นฐานความน่าจะเป็นและทฤษฎี Bayes กันไปแล้ววันนี้จะมาเข้าหัวข้อเรื่อง Naive Bayes classification กัน
" Naive Bayes Classification ทำงานยังไง? "Naive Bayes Classsification นั้นจะใช้ทฤษฎีของ Bayes มาคำนวณโดยมีเงื่อนไขว่าข้อมูลที่ใช้ในการคำนวณนั้นต้องเป็นแบบ Independence จึงได้รูปแบบสมการใหม่ด้านล่างดังนี้
สม Bayes' theorem
เนืองจาก Naive Bayes Classsification มีเงื่อนไขว่าข้อมูลที่มาคำนวณต้องเป็น Independence ต่อกัน
จากสมการ Independence
p(A and B) = p(A,B) = p(A)p(B)
เราจึงแปลงสมการ Bayes ได้ดังนี้ครับ
จัดรูปแบบสมการ
จากสมการด้านบนเราสามารถหาความน่าจะเป็นของสิ่งที่เราสนใจได้
ยกตัวอย่างเช่น
หาความน่าจะเป็นว่าคนไข้นั้นเป็นโรคภูมิแพ้ หรือไม่เป็นโรคภูมิแพ้(หากเปรียบเทียบในสมการคือตัวแปร y) จากข้อมูลอาการที่รับเข้ามา(หากเปรียบเทียบในสมการคือตัวแปร x) สมมุติหลังจากคำนวณแล้วได้ความน่าจะเป็นว่าจะเป็นภูมิแพ้อยู่ 70% ไม่เป็นภูมิแพ้อยู่ 30%
จะเห็นว่าความน่าจะเป็นว่าเป็นภูมิแพ้มีค่าสูงกว่าความน่าจะเป็นว่าไม่เป็นภูมิแพ้ เราจึงตอบไปว่าคนไข้ดังกล่าวเป็นภูมิแพ้
สามารถอธิบายเป็นสมการคณิตศาสตร์ได้เป็น
เพื่อความเข้าใจมากขึ้นเราจะลองมาคำนวณจริงกันครับ
โดยเราจะมีข้อมูลดังนี้ครับ
ข้อมูลดังตารางด้านบนเป็นการบอกว่าสภาพแวดล้อมข้างนอกนั้นเหมาะแก่การเล่นกอร์ฟหรือไม่โดยสภาพแวดล้อมนั้นเราจะดูจาก สภาพอากาศ(Outlook), อุณหภูมิ(Temperature), ลมแรง(Windy)
ทำการจัดรูปแบบตารางให้เป็นบอกความถี่ของข้อมูลแล้วคำนวณหาความน่าจะเป็นได้ดังนี้
จากตารางด้านบนเราได้คำนวณหา p(xi|yi) สำหรับแต่ละ xi ในเงื่อนไข yi ดังตารางที่ 1-4
ยกตัวอย่างเช่น หาความน่าจะเป็นที่เหมาะแก่การเล่นกอร์ฟ (y = yes )แล้วอุณหภูมิข้างนอกหนาว(x = Cool) เราสามารถหาความน่าจะเป็นได้เป็น P(x = cool|y=yes) = 3/9
เราต้องหาค่าความน่าจะเป็น p(y) ซึ่งถูกคำนวณในตารางที่ 5 ยกตัวอย่างเช่น p(y=yes) = 9/14
ตอนนี้เราได้เตรียมตารางสำหรับในการคำนวณ Naiv ฺBayes เรียบร้อบแล้วครับงั้นเรามาลองทดสอบกันครับ
สมมุติให้สภาพอากาศปัจจุบัน แดดจ้า(Outlook = Sunny) อุณหภูมิร้อน(Temperature = Hot) ความชื้นปกติ (Huminity = Normal) และไม่มีลม (Windy = False)
today = (Sunny, Hot, Normal, False)
ดังนั้นในการหาว่าปัจจุบันเหมาะแก่การเล่นกอร์ฟหรือไม่เราจะคำนวณดังนี้ครับ
หาค่าความน่าจะเป็นที่เหมาะแก่การเล่นกอร์ฟของวันนี้
หาค่าความน่าจะเป็นที่ไม่เหมาะแก่การเล่นกอร์ฟ
p(today) ทั้งสองสมการเป็นค่าที่เหมือนกัน ดังนั้นเราสามารถไม่สนใจ p(today) จึงได้เป็นสมการดังนี้
ดังนั้นเราสามารถคำนวณค่าความน่าจะเป็นที่เหมาะแก่การเล่นกอร์ฟของวันนี้ได้เป็น
เราสามารถคำนวณค่าความน่าจะเป็นที่ไม่เหมาะแก่การเล่นกอร์ฟของวันนี้ได้เป็น
จะเห็นว่าความน่าจะเป็นที่วันนี้เหมาะแก่การเล่นกอร์ฟมากกว่าไม่เหมาะแก่การเล่นกอร์ฟ
ดังนั้นเราจึงสรุปได้ว่าวันนี้เหมาะแก่การเล่นกอร์ฟ
สุดท้ายนี้ผมหวังว่าผู้อ่านจะได้ประโยชน์จากบทความนี้ครับ
reference
http://dataminingtrend.com/2014/naive-bayes/
https://www.geeksforgeeks.org/naive-bayes-classifiers/
https://www.analyticsvidhya.com/blog/2017/09/naive-bayes-explained/
ไม่มีความคิดเห็น:
แสดงความคิดเห็น